Naučte se číst chybová hlášení od spodního řádku nahoru. Řádek s typem chyby říká, co se pokazilo, a řádek nad ním ukazuje místo ve vašem kódu. Časté začátečnické chyby jsou špatné odsazení, záměna názvu proměnné a práce s číslem jako s textem. Když si nejste jistí, vypište si hodnotu proměnné před místem, kde to padá. Tento zvyk zkrátí hledání chyby z hodin na minuty.
Vyberte si jazyk, jehož základní syntaxi pochopíte během několika večerů. Nemusíte rozumět všemu, ale musíte být schopni napsat krátký funkční program, který něco dělá – načte vstup, zpracuje ho a vypíše výsledek. Pokud se už na začátku topíte v pojmech, které se týkají spíše architektury než samotného jazyka, je to signál, že jste sáhli po příliš složitém nástroji. Dobrý první jazyk vás nechá soustředit se na logiku a algoritmy, ne na boj s konfigurací.
Největší položkou bývá orientace v existujícím kódu. Vývojář často stráví více času čtením a pochopením souvislostí než samotnou úpravou. Další skrytou činností je přepínání kontextu: krátká schůzka uprostřed práce rozbije soustředění a návrat k původnímu problému trvá mnoho minut. Počítejte i s opakovaným ověřováním — lokální běh, testovací prostředí, kontrola v prohlížeči. A nezapomeňte na administrativu: aktualizace úkolu, popis změny, domluva s kolegou.
Častou chybou je příliš agresivní limit, který zablokuje i běžné procházení. Uživatel, který rychle kliká, může narazit. Proto vždy nastavte limit s rezervou a testujte. Další chyba je ignorování hlaviček z proxy. Pokud nepoužijete správné nastavení, všechny požadavky přijdou z IP proxy a vy zablokujete celý svět. Také nedělejte rate limiting na úrovni celé aplikace, pokud to není nutné. Lepší je aplikovat ho jen na kritické routy pomocí router-level middlewaru.
Výběr licence pro firemní projekt nezačíná u seznamu zkratek, ale u otázky, kdo ponese odpovědnost za případné vady a jak se bude software dál šířit. Open source licence jsou nástroje, které určují, co smíte s kódem dělat, co musíte zachovat a co musíte zveřejnit. Rozdíl mezi permisivní a copyleft licencí se projeví až ve chvíli, kdy kód kombinujete s vlastním nebo s kódem třetí strany.
Častou chybou je odhadovat podle nejlepšího scénáře. Vývojář si v duchu řekne, že když všechno půjde hladce, zvládne to za den. Jenže hladce to nejde téměř nikdy. Další chybou je započítat pouze práci jednoho člověka a zapomenout na čekání na jiné týmy, na code review nebo na nasazení. Někteří lidé naopak přidají paušální rezervu, ale nedokážou vysvětlit, co obsahuje — taková rezerva se snadno rozpustí a nikdo neví proč.
Nainstalujte si Python z oficiálního distributora a vedle něj editor, který umí spouštět kód přímo v souboru. Nepoužívejte online kopírování do konzole pro nic delšího než dva řádky. Každý skript ukládejte do vlastní složky a spouštějte ho z terminálu příkazem, který si zapamatujete. Pomůže vám to pochopit, odkud se berou chyby a jak se předávají argumenty. Do začátku si vystačíte se standardní knihovnou, kterou má Python už v sobě.
První tři úlohy, které zvládnete do večera Začněte přejmenováním souborů podle vzoru — třeba doplněním data do názvu. Potom si napište skript, který projde složku, přečte textové soubory a vypíše řádky obsahující zadané slovo. Třetí úlohou může být stažení dat z webu a jejich uložení do tabulky. U každé z nich si nejdřív zkuste ruční postup na dvou souborech, teprve pak ho převeďte do kódu. Když skript funguje na dvou položkách, ověřte ho na deseti a potom na celé složce. Nikdy nespouštějte hromadnou operaci bez zálohy.
Automatizace v Pythonu začíná u konkrétní opakující se činnosti, kterou děláte ručně. Nejdřív si ji popište krok za krokem na papír: odkud berete vstup, co s ním děláte, kam výsledek ukládáte. Teprve pak hledejte, které kroky jde přeskočit. Většina začátečníků udělá chybu, že si nejdřív vybere knihovnu a teprve potom přemýšlí, co vlastně chtějí řešit. Výsledkem je nedokončený skript a dojem, že Python je složitý.
Před nasazením do produkce si nastavte pravidla pro schvalování nových závislostí. Určete, kdo kontroluje licence a jak se řeší výjimky. Vést evidenci nestačí, pokud se seznam neaktualizuje při každé změně. U copyleftových licencí zvažte, zda je výhodnější je oddělit do samostatné komponenty komunikující přes API, nebo je zcela nahradit. U permisivních licencí zase nezapomeňte na povinnost uvádět autory a text licence v dokumentaci produktu.
U práce se soubory dá snadno udělat chyba v cestách. Používejte relativní cesty od složky skriptu nebo si cestu sestavte funkcí pro spojování částí, místo abyste ji lepili ručně. U automatického zápisu do souborů vždy nejdřív zkontrolujte, zda soubor neexistuje, a teprve potom ho přepište. Pokud skript maže nebo přesouvá data, přidejte potvrzení před spuštěním nebo režim, kdy se nic nemění a pouze se vypíše, co by se stalo.