]> rtime.felk.cvut.cz Git - edu/osp-wiki.git/blob - cviceni.mdwn
Vyber projektu: Je dobre vybrat si neco uzitecneho
[edu/osp-wiki.git] / cviceni.mdwn
1 [[!meta title="Cvičení"]]
2
3 [[!toc levels=2]]
4
5 Obecné informace
6 ==========
7
8 Cvičení probíhají v laboratoři [KN:E-s109][1] a vede je
9 [Michal Sojka][2]. Další cvičící jsou [Rostislav Lisový][7] a
10 [Michal Horn][8].
11
12 Na stanicích v laboratoři je síťová instalace [Debian][6] GNU/Linux
13 7 (Wheezy). Informace o účtech a vzdáleném přístupu se nacházejí na
14 stránkách [IT oddělení katedry řídicí techniky][5].
15
16 Osnova
17 ==========
18
19 1. Seznámení se s předmětem a hodnocením. [[Hackovací intro|cviceni/1]].
20 2. [[Tvorba "produktu" z nezávislých OSS komponent|cviceni/2]] (embedded Linux)
21 3. [[Specifikace individuálního zadání|cviceni/3]] samostatná práce a jeho zařazení
22    do existujících OS projektů (konzultace se cvičícími)
23 4. [[Verzovací systém Git|cviceni/4]]
24 5. [[Prezentace projektu do kterého budu přispívat v samostatné práci a
25    nástin řešení|cviceni/5]]
26 6. Test ([[zadání|cviceni/6]], [[výsledky|cviceni/6/vysledky]])
27 7. [[Samostatná práce, konzultace|cviceni/konzultace]]
28 8. [[Samostatná práce, konzultace|cviceni/konzultace]]
29 9. [[Samostatná práce, konzultace|cviceni/konzultace]]
30 10. [[Samostatná práce, konzultace|cviceni/konzultace]]
31 11. [[Samostatná práce, konzultace|cviceni/konzultace]]
32 12. [[Samostatná práce, konzultace|cviceni/konzultace]]
33 13. [[Prezentace výsledků (15. května 2014; povinná účast)|cviceni/11]]
34 14. [[Zápočet|cviceni/12]]
35
36 Podmínky udělení zápočtu
37 ==========
38
39 * Účast na 1. – 6. a 13. cvičení (individuálně hodnotíme předchozí omluvy ze závažných důvodů),
40 * odevzdané úlohy z 1. – 4. cvičení,
41 * absolvován test,
42 * prezentace záměru práce,
43 * prezentace výsledku práce.
44
45 <a name="semestralka" />
46 Samostatná práce
47 ==========
48
49 Cílem samostatné práce je zkusit si na vlastní kůži jak funguje (či
50 nefunguje :-) ) vývoj open source softwaru a naučit se komunikovat s
51 open source vývojářskými komunitami. Každý student si vybere
52 existující open source projekt a pokusí se do něj přispět.
53
54 Vybraný projekt musí splňovat následující podmínky:
55
56 * veřejně přístupný repozitář s historií projektu
57 * historie musí dokládat minimálně dva roky aktivního vývoje nebo na
58   vývoji musí pracovat minimálně pět aktivních vývojářů (autorů
59   commitů).
60
61 Příspěvek do projektu může být téměř vše, co projektu prospěje –
62 např.:
63
64 * oprava chyby,
65 * přidání nové vlastnosti,
66 * napsání dokumentace,
67 * lokalizace (netechnické činnosti hodnotíme menším počtem bodů).
68
69 Cílem ale není pouze práci provést, ale dostat ji do projektu tak, aby
70 její výsledky byly dostupné všem, kdo daný projekt využívají. V
71 závislosti na typu (a velikosti) projektu může být tento krok mnohem
72 těžší než vlastní vývojová práce. Je potřeba srozumitelně vysvětlit
73 správcům projektu co děláte, proč to děláte a případně reagovat na
74 další požadavky správců.
75
76 Výsledky své práce zveřejněte na své [[profilové stránce|student/2014]].
77
78 Jak si vybrat vhodný projekt?
79 -----------------------------------
80
81 Open source projekty se dají rozdělit na dobře a špatně fungující.
82 Chceme, abyste se v tomto předmětu zapojili do těch dobrých a špatně
83 fungujícím se vyhnuli. Nejenom, že tím dostanete víc bodů, ale hlavně
84 ze své práce budete mít mnohem lepší pocit.
85
86 V seznamu níže uvádíme naše doporučení ohledně výběru projektu a
87 úlohy, kterou budete řešit. Doporučení vycházejí ze zkušeností z
88 minulých běhů předmětu OSP.
89
90 * Zkontrolujte, že je projekt živý, t.j. do repozitáře přibývají
91   commity a správci projektu komunikují s ostatními (mailing list,
92   fórum, IRC). Pokud je poslední commit v projektu několik let starý
93   nebo se během posledních pár měsíců neobjevila v mailing listu
94   jediná zpráva od správců, projektu se vyhněte.
95
96 * Pokud se rozhodnete opravit chybu, kterou najdete v bug trackeru, je
97   dobré si vybrat takovou chybu, která byla správci projektu
98   potvrzena. Často se v bug trackeru objevují hlášení od uživatelů,
99   která sice jako chyby vypadají, ale ve skutečnosti to chyby nejsou.
100   Může se jednat i vlastnosti programu, které správci nechtějí měnit,
101   nebo to může být chyba konfiguraci daného uživatele apod. Ať už je
102   důvod jakýkoli, pokud takovou chybu-nechybu opravíte, moc úspěchu s
103   tím nesklidíte.
104
105   A i když si vyberete potvrzenou chybu, přemýšlejte nad tím jak je
106   její oprava užitečná pro uživatele. Často se totiž studentům stává,
107   že i když chybu opraví nedostanou na ni do konce předmětu žádnou
108   odpověď, protože v projektu řeší důležitější (užitečnější) věci.
109
110 * Pokud chcete implementovat novou vlastnost, vyberte si takovou věc o
111   kterou mají uživatelé (nebo správci) zájem. Nevymýšlejte nesmysly,
112   které nikoho nezajímají.
113
114 Pokud nevíte jaký projekt si vybrat, může vám pomoct
115 [[tato stránka|cviceni/projekty]]. Při práci na projektech vám můžou
116 pomoct [[odpovědi na často kladené otázky|faq]].
117
118 Google summer of code
119 ----------
120
121 Širokou nabídku open source projektů, včetně konkrétních úloh, které
122 mají zájem o příspěvky studentů představuje
123 [Google summer of code][4]. Většina technologií společnosti Google je
124 postavena na open source softwaru (OSS) a proto společnost sponzoruje
125 rozvoj těchto projektů a platí studenty na nich pracující. Studenti
126 mohou zasílat přihlášku do 21. března. dubna. Rozhodnutí o přijetí či
127 nepřijetí bude známo 21. dubna. Studenti OSP přijatí do GSOC získají
128 všechny body za *průběh samostatné práce*. Povinnost závěrečné
129 prezentace a její bodové hodnocení však zůstává.
130
131   [1]:http://www.fel.cvut.cz/education/rozvrhy-ng/public/cz/mistnosti/10/12/m10121304.html
132   [2]:http://rtime.felk.cvut.cz/~sojka/
133   [3]:http://cmp.felk.cvut.cz/~pisa/
134   [4]:https://www.google-melange.com/gsoc/homepage/google/gsoc2014
135   [5]:http://support.dce.felk.cvut.cz/mediawiki/index.php/GNU/Linux_v_laborato%C5%99%C3%ADch
136   [6]:http://www.debian.org/
137   [7]:http://dce.fel.cvut.cz/katedra/ing-rostislav-lisovy
138   [8]:http://dce.fel.cvut.cz/katedra/ing-michal-horn