Skip to content

Latest commit

 

History

History
126 lines (89 loc) · 5.23 KB

tasks.adoc

File metadata and controls

126 lines (89 loc) · 5.23 KB

Úlohy (nejen na doma)

Součástí hodnocení jsou především úlohy. Uvítáme, pokud je budete řešit na cvičeních, po skončení výkladu. Rádi vám poradíme osobně. Co nestihnete na cvičeních, doděláte doma. Rádi vám poradíme i v GitHub issue.

Hotové úlohy odevzdáte jako gitový repozitář na GitHubu, případně fakultním GitLabu. V obou případech nám nezapomeňte dát přístup. Na GitHubu jsme jako hroncok a MarekSuchanek. Na GitLabu jako hroncmir a suchama4.

Vzhledem k tomu, že všichni máte stejné zadání, doporučujeme použít privátní repozitář. Svůj kód můžete zveřejnit pod nějakou open-source licencí po našem zkontrolování všech navazujících úloh.

Odkaz na (nový) repozitář nám pošlete e-mailem. Pro odevzdání v repozitáři vždy nastavíte nový tag, dle zadání úlohy.

Termín odevzdání úlohy je zpravidla pondělí (včetně) 12 dní po cvičení, na kterém byl úkol zadán. U některých úloh se termín může lišit, je u nich symbol 🌴 (termín prodloužen), nebo 💀 (termín zkrácen).

Úloha filabel (CLI): 22.10.2018 🌴

Vaším úkolem za 5 bodů je vytvořit command line aplikaci pracující s GitHub API, pomocí knihoven requests a click.

Aplikace slouží ke štítkování (labelování) Pull Requestů (PR) na GitHub podle souborů, které se mění. Příklad: Když vaše aplikace zjistí, že PR mění soubor templates/cool.html, nastaví štítek templates. Když zjistí, že mění soubor README.rst, nastaví štítek docs apod.

Úloha filabel (webová aplikace): 22.10.2018

Vaším úkolem za 5 bodů je přidat do aplikace filabel webový server, který bude reagovat na události na GitHubu automaticky. Použijete webový framework Flask.

Zadání a testy

github.com/cvut/filabel @web

Úloha Pandas: 29.10.2018

Vašim úkolem za 5 bodů je analyzovat výsledky Python Developers Survey, odpovědět na otázky a vyřešit úkoly ve frameworku Pandas.

Zadání

Úloha Pandas

Úloha filabel (balíček): 5.11.2018

Vaším úkolem za 5 bodů je udělat z vašeho dosavadního projektu filabel balíček instalovatelný přes pip a nahrát jej na testovací PyPI.

Úloha beeclust (numpy): 12.11.2018

Vaším úkolem za 5 bodů je implementovat dle zadání simulaci shlukovacího algoritmu BeeClust pomocí knihovny numpy.

Úloha filabel (testování): 3.12.2018 🌴

Vaším úkolem za 5 bodů je napsat k vašemu dosavadnímu projektu filabel testy s použitím pytest (a případně dalších knihoven), umožnit spouštění testů pomocí setup.py a spouštět testy také na Travis CI.

Úloha beeclust (zrychlení): 26.11.2018

Vaším úkolem za 5 bodů je zrychlit implementaci simulace shlukovacího algoritmu BeeClust s využitím Cythonu tak, aby dokázala v rozumném čase (viz zadání) pracovat s většími mapami.

Úloha filabel (dokumentace): 3.12.2018

Vaším úkolem za 5 bodů je napsat k vašemu dosavadnímu projektu filabel dokumentaci pomocí Sphinx, která bude popisovat, jak s aplikací pracovat i jak funguje uvnitř, a to včetně doctestů, které poběží také na Travis CI společně s testy z minulého úkolu.

Úloha beeclust (GUI): 17.12.2018 🌴

Vaším úkolem za 5 bodů je pro zrychlenou implementaci simulace shlukovacího algoritmu BeeClust vytvořit grafické rozhraní umožňující upravovat a prohlížet mapu i simulaci krokovat pomocí knihovny PyQt5.

Úloha filabel (asyncio): 31.12.2018 🌴🎁🎇

Vaším úkolem za 5 bodů je rozšířit existující CLI aplikaci filabel o asynchronní komunikaci s GitHub API pomocí knihovny aiohttp za účelem zrychlení práce, které se bude zapínat přepínačem -x/--async.