Jednodenní školení fungují dokonale
Koncept jednodenních školení je jedním z hlavních důvodů, proč si vývojářské týmy firemní školení kupují. Nahnat skupinu vývojářů na celodenní školení představuje pro vedení firem akceptovatelný výpadek oproti několikadenním školením, během kterých jsou vývojáři v podstatě nedostupní. Jak jsem vmáčknul obsah vícedenního školení do jednoho dne?
Vývojářská a technická školení jsou vždy hutná co do obsahu. Za jeden den je nemožné naučit někoho programovat, pochopit celý programovací jazyk nebo naučit vývojáře používat kompletní webový framework. Naštěstí už si to uvědomují i vývojářské týmy. Koneckonců i taková je zkušenost vývojářů z vícedenních školení. Mou snahou bylo od začátku vytvořit našlapané přehledové školení, ze kterého se vývojáři dokážou odrazit správným směrem. Použil jsem přitom několik jednoduchých triků, kterými jsem stlačil obsah do jednoho dne.
Rozdělení školení do užších oblastí
Nejprve jsem se rozhodl rozdělit na první pohled ucelené školení na ještě menší části. Místo „velkého školení” celého webového frameworku jsem vytvořil více samostatných jednodenních školení. Jedno jsem zaměřil na obecné principy, druhé na vývojářské nástroje a další na vývoj REST služeb. Dokonce i samotné školení REST služeb mám rozdělené na návrh, vývoj a testování. Vývojářské týmy mohou díky tomu školení absolvovat po částech anebo si vybrat jen to, co skutečně potřebují. Firmy zbytečně neplatí za prosezený čas vývojářů u témat, která znají nebo je nezajímají.
Odstranění nesouvisejících témat
Oblíbený trik školících středisek je uměle nafukovat osnovu o související témata. Má školení tímto způsobem zásadně neprodlužuji a místo toho souvisejícím tématům věnuji webináře. Webináře navíc mohu zpřístupnit širšímu množství vývojářů. Jsou krátké, a tudíž snadno stravitelné i v online variantě. Na druhou stranu do školení přidávám práci s NuGet balíčky, které se používají při vývoji. U některých školení tak zcela vynechám standardní řešení a místo něj ukážu postup, který vývojáři používají v praxi na projektech.
Synergie témat místo modulů
Mnoho lektorů a školících středisek má osnovy postavené na tzv. modulech. Jednotlivá témata dostávají oddělený prostor. Každý modul je zahájen úvodem, prezentací, ukázkami a nakonec procvičením. Je jasné, že tento způsob předání znalostí je časově mimořádně náročný a vyhovuje především nezkušeným vývojářům. Ve firmách jsou ale borci, kteří chtějí vidět zejména praktické použití a souvislosti. Proto témata synergicky kombinuji. Když vysvětluji ošetřování chyb v aplikaci, rovnou dává smysl povídat i o logování. A protože ideálním prostředkem pro odchyt chyb v aplikaci jsou tzv. middlewares, rovnou vysvětluji i toto třetí téma. Prezentace používám v případech, kdy jsou nezbytně nutné pro vysvětlení dané problematiky.
Jedno řešení místo deseti možností
V souvislosti s moduly je velmi oblíbené ukazovat, jak udělat jednu věc deseti způsoby. Jen zřídka to má však smysl. Do mých školení promítám praktickou zkušenost a je-li to možné, ukazuji jeden osvědčený způsob, kterým lze daného cíle dosáhnout. Obvykle univerzální přístup, který dobře funguje s ostatními oblastmi daného školení. Vývojáři vždy oceňují předání tzv. „best practices”, které mohou na svých projektech použít. To poslední, co vývojář chce, je, aby jedna věc byla v aplikaci napsaná deseti způsoby.
Ukázky dle zvyklostí týmu
Na základě komunikace před samotným školením dokážu témata prioritizovat a věnovat jim různé množství času. Některé body osnovy vývojáře nemusí zajímat, a tudíž je možné je eliminovat ve prospěch témat, která jsou pro tým zcela nová nebo důležitá. Řadu témat je možné navíc přizpůsobit. Má-li vývojářský tým svůj oblíbený logovací framework, mohu rovnou ukazovat, jak pracovat s oblíbeným frameworkem. Je to výhoda v individualizaci, kterou mají firemní školení před veřejnými kurzy.
Méně praktických cvičení
Praktické osahání technologie nepodceňuji. Dívat se 8 hodin na to, jak lektor kóduje je sice dobré "kino", ale pro vývojáře je to velmi náročné. Hraniční doba kódování v rámci školení jsou cca 4-5 hodin. Další obsah už je na škodu. Proto do školení vkládám i praktická cvičení. Nedělám je po modulech jako ve školících centrech, ale ve formě jednoho workshopu. Různě pokročilý vývojáři tak na sebe nemusí několikrát za den čekat. Umístění na konci dne má i praktické výhody pro vývojáře, kteří potřebují vyrazit dříve domů, na vlak nebo pro děti do školy. Vývojáři nepřijdou o žádný obsah a praktickou část si mohou udělat doma. Workshop koncipuji tak, jak s danou technologií přijde vývojář pravděpodobně do styku. O podobě praktických cvičení ale jindy...
Závěr
Kombinací výše uvedených přístupů lze udělat z celotýdenního školení dvě jednodenní. Nebo také naopak. Pro mě je důležité zaměření se na potřeby týmu. Vývojářské týmy ve firmách jsou obvykle znalostně velmi vyrovnané. Pracují na jedné nebo více společných aplikací, mají společné zásady a oblíbené nástroje. Přizpůsobit školení firemnímu týmu je vždy výrazně jednodušší než v případě veřejných kurzů.
Ve zkratce
- cílem školení je inspirovat, ukázat technologii a první kroky
- školení mám rozdělené do dnů podle témat
- související technologie ukazuji pomocí webinářů nebo přednášek
- místo oddělených modulů se snažím témata synergicky propojit
- ukazuji jedno fungující řešení místo deseti možností téhož
- ukázky přizpůsobuji technologiím a znalostem daného týmu
- do školení vkládám pouze jeden nebo dva workshopy