Linux E X P R E S

Facebook

Google Summer of Code 2006 - ohlédnutí

Předpokládám, že všichni uživatelé používající internet asi vědí, co dělá firma Google – provozuje v současnosti jeden z nejpoužívanějších vyhledávacích serverů a postupně své portfolio služeb neustále rozšiřuje dalšími projekty, jako je např. Google Maps (mapy celého světa), Google Desktop (lokální vyhledávací nástroj) nebo Google SketchUp (nástroj pro tvorbu 3D objektů) a mnoho dalších.


Poznámka redakce. Článek je nyní, kdy vychází na webu, již neaktuální. Přesto stále obsahuje cenné informace a charakteristiku tak významného projektu, jakým Google SoC bezesporu je. Proto článek zařazujeme.

Firma má velmi dobré renomé. Zaměstnává programátory, kteří pro ni pracují, ale navíc mohou část své pracovní doby věnovat svým soukromým open-source projektům. A právě pro open-source komunitu vymyslela firma Google speciální letní akci nazvanou Summer of Code. První kolo se odehrálo již v roce 2005. Představitelé firmy Google se rozhodli, že se pokusí spojit několik světů dohromady.

Na jedné straně najdete studenty – programátory, kteří mají v létě prázdniny a chtěli by získat nějakou praxi. U větších komerčních firem moc šancí nemají, protože na relativně krátkou dobu se v ní nestačí ani rozkoukat. Šanci dostávají při programování pro open-source komunitu. Mohou si tak programování procvičit, ovšem řada z nich by si potřebovala přes prázdniny hlavně vydělat. Od open-source komunity však nějaké finanční prostředky nelze očekávat, je založena spíše na dobrovolnosti a chuti investovat svůj volný čas.

Na druhé straně stojí vývojové týmy v open-source komunitách, které se potýkají s nedostatkem času, protože v některých případech stihnou jen udržovat vývoj novějších verzí svých produktů, na výraznější novinky není čas. Obvykle totiž týmy nebývají příliš početné a v některých chvílích je velmi obtížné tříštit síly na opravy chyb a zároveň vyvíjení nových, dosud neimplementovaných funkcí.

Tyto dvě skupiny se Google rozhodl svést dohromady. Vznikla akce nazvaná Google Summer of Code. V terminologii této akce je student hlavním programátorem, který je veden tzv. rádcem (anglicky mentor). Rádce pochází z vývojářské komunity a danou problematiku zná. Organizace je pak taková, že každý open-source projekt vyhlásí úkoly k řešení, případně s nimi přijdou jednotliví studenti, komunita je posoudí a předloží k závěrečnému vyhodnocení přímo firmě Google. Ta obvykle ještě provede jistou selekci a nakonec se rozhodne přidělit zajímavá stipendia.

Stipendium je velmi stimulující. Na každý vybraný projekt je totiž vyčleněno 5 000 amerických dolarů. Student získá 4 500, zbylých 500 jde do komunity (přesněji do organizace, která projekt přihlásila). Vyplacení stipendia je také rozděleno na tři části a termíny jsou velmi hlídány. Při vybrání projektu dostane student 500 dolarů, dalších 2 000 dolarů při polovině prací nad projektem a poslední 2 000 při úplném dokončení. Rádce dostane svých 500 dolarů při úspěšném dokončení celého projektu. Motivace je tedy jasná, finanční prostředky jsou jistě velmi lákavé. Google tak velmi citelně podporuje open-source komunitu právě těmito prostředky.

Jednotlivé projekty by si měly vybrat svého zástupce, který se do projektu přihlásí jeho jménem. Zároveň by měl přijít s konkrétními návrhy, které se budou řešit. Ke každému projektu je pak přiřazen rádce, který jej bude mít na starosti, tj. bude kontrolovat stav prací na svém projektu, bude radit řešiteli s projektem a zároveň bude mít povinnost komunikovat s hlavním správcem projektů ze strany Google. Nakonec rádce vyhotoví odbornou analýzu práce studenta a každý student vytvoří hodnocení svého rádce. Celý projekt je poté nahrán na stránky Google. Studenti pak mají za úkol konkretizovat svou představu výsledného celku a zdokumentovat ji. Čím lépe to udělají, tím větší šance na zařazení mezi několik „šťastných“ a tedy podporovaných těmi 4500 amerických dolarů. Zároveň musí být každý projekt originální a přinášející výraznou novinku do open-source projektu. Nelze se tak schovat za prohlášení typu: „Provedu optimalizaci, aby to startovalo rychleji.“ Musí být přesně konkretizováno, jaké kroky povedou k výsledku.

Loňský ročník byl úspěšný. Účastnilo se jej 41 open-source projektů. Bylo přihlášeno více než 8000 samostatných projektů, pro stipendium bylo nakonec vybráno 410. Snadno si spočítáte, že Google tato „sranda“ přišla na více než dva milióny dolarů. Jsou to ovšem dva milióny dolarů investovaných do open-source komunity. Pozitivně se to projeví v kvalitě těchto projektů. A zpětně to umožní Googlu využívat open-source projekty, případně najít si nové zaměstnance. Bude-li někdo dobrý, může přijít i nabídka ke spolupráci.

A jak se výsledky tohoto projektu mohou dotknout vás? Je to jednoduché. Možná „plody“ dávno používáte a nemáte o tom ponětí. Např. pod hlavičkou KDE bylo dokončeno 24 projektů, mj. PowerPoint importní filtr pro KPresenter nebo KDE-Eclipse. Existuje samozřejmě řada dalších zajímavých projektů, jen namátkou WebDAV API pro Drupal, Kadischi pro Fedora Core – na tvorbu live CD z Fedory, BSDInstaller ve FreeBSD, FirePuddle – Bittorent rozšíření pro Mozillu, OpenOffice.org JasperReports exporter apod.

Seznam podporovaných projektů pro KDE je poměrně dlouhý, vybírám např. možnost přidávání poznámek a jednoduchých objektů do PDF souborů v KPDF, rychlejší start KDE s použitím precachingu přidaného přímo do jádra jako modul, pokročilejší správa sezení v KDE – možnost běhu více sezení naráz nebo ukládání sezení bez odhlášení a ještě třeba synchronizace KDE PIM s Google Calendar.

Dovolil jsem si také vybrat několik několik zajímavostí z letošního ročníku. Chci jen upozornit, že to jsou projekty, který byly vybrány mezi oněch 610 šťastných, neznamená to ovšem, že budou plně realizovány svými autory (nestihnou to do 21. srpna apod.).

Blender bude například obohacen o možnost generování oblohy. ClamAV bude umět rozpoznávat phising metody a bude umět pracovat přímo s formátem ARJ, LZH/LHA, ARC a ACE bez nutnosti mít nainstalované externí aplikace. Přímo v Debianu budete moci vygenerovat live CD. GIMP by mohl disponovat nástroji na používání vektorových vrstev ve formátu XCF tak, jak je má Adobe Photoshop. GNOME by mohlo takto přijít k novému rozhraní pro práci se skenerem založeném na SANE. Poměrně zajímavá se jeví i možnost PDF výstupu s použitím knihovny Cairo z vektorového editoru Inkscape. Redakční systém Joomla! by mohl být obohacen o možnost použití nad libovolným databázovým enginem, zbavil by se tak závislosti pouze na MySQL a šlo by použít téměř cokoliv (MS SQL, Oracle, Firebird, PostgreSQL apod.).

Hodit se může i víceuživatelský režim do MythTV, nativní SQLite ovladač pro OpenOffice.org, GTK Yast rozhraní pro openSUSE, nativní podpora OpenDocument formátů v PHP pro čtení, vytváření i zápis, vzdálená správa plochy a přihlašování v ReactOS, správa uživatelů pro Samba server, obrazovková klávesnice určená pro tablety v Ubuntu, integrace ClamAV do WINE, aplikace pro správu překladů produktů z rodiny Mozilla nebo třeba zálohovací aplikace do Fedory.

Osobně mne velmi zaujal projekt vektorových vrstev pro GIMP, po kterém řada uživatelů již dlouho volá. Implementace formátu OpenDocument přímo do PHP pak také vypadá jako velmi rozumná funkce. Konstrukce typu createOpenDocument(odt;“faktura.odt“) přímo na webových stránkách by možná vyřešila spoustu problémů.

Při procházení projektů jsem samozřejmě narazil i na nějaká česká jména, nechtěl jsem podrobně studovat, kolik Čechů nebo Slováků na různých projektech pracuje. Souhrnná statistika není k dispozici. Projekt, který je však prokazatelně v českých rukách a z názvu je to patrné, je CZilla Translator. Jedná se o již zmiňovaný překladač pro Mozilla projekty.

Sami vidíte, že už jen zmínky o projektech jsou velmi zajímavé a mohou některé aktivity řádně „pošoupnout“ vpřed. Výčet zde uvedený je jen mým osobním výběrem orientujícím se na projekty, které buď aktivně používám nebo znám. Pro kompletní seznam doporučuji prostudovat domovskou stránku.

Diskuze (0) Nahoru