Sprievodca pre úplných čajových nováčikov.
(Poznámka prekladateľa: Táto rada pochádza od indického autora, ale zdá sa byť užitočná. Neváhajte pridať akékoľvek ďalšie informácie do komentárov.)

Mesiac je dlhá doba. Ak strávite 6-7 hodín učenia každý deň, môžete toho dosiahnuť veľa.
Cieľ na tento mesiac:
- Oboznámte sa so základnými pojmami (premenná, podmienka, zoznam, slučka, funkcia)
- Zvládnite v praxi viac ako 30 programovacích problémov
- Vypracujte dva projekty na uplatnenie nových vedomostí v praxi
- Oboznámte sa s aspoň dvoma frameworkami
- Začnite s IDE (vývojovými prostrediami), Githubom, hostingom, službami a ďalšími.
Takto sa stanete juniorným Python vývojárom.
A teraz plán podľa týždňa.
Článok bol preložený s podporou EDISON Software, ktorá a .
1. týždeň: Zoznámte sa s Pythonom
Pochopte, ako všetko funguje v Pythone. Otestujte čo najviac vecí.
- 1. deň: 4 základné pojmy (4 hodiny)vstup, výstup, premenná, podmienky
- 2. deň: 4 základné koncepty (5 hodín)zoznam, slučka for, slučka while, funkcia, import modulu
- Deň 3: Jednoduché programátorské úlohy (5 hodín): vymeniť dve premenné, previesť stupne Celzia na stupne Fahrenheita, vypočítať súčet všetkých číslic v čísle, skontrolovať, či je číslo prvočíslo, vygenerovať náhodné číslo, odstrániť duplikát zo zoznamu
- Deň 4: Problémy programovania pre stredne pokročilých (6 hodín)obrátiť reťazec (kontrola palindrómu), vypočítať najväčšieho spoločného deliteľa, zlúčiť dve zoradené polia, napísať hru na hádanie čísel, vypočítať vek atď.
- Deň 5: Dátové štruktúry (6 hodín)zásobník, front, slovník, n-tice, prepojený zoznam
- Deň 6: OOP – Objektovo orientované programovanie (6 hodín)objekt, trieda, metóda a konštruktor, dedičnosť OOP
- 7. deň: Algoritmus (6 hodín)vyhľadávanie (lineárne a binárne), triedenie (bublinové triedenie, výberové triedenie), rekurzívne funkcie (faktoriál, Fibonacciho rad), časová zložitosť algoritmov (lineárna, kvadratická, konštantná)
Neinštalujte Python:
Viem, znie to protirečivo. Ale verte mi. Poznám veľa ľudí, ktorí stratili všetku chuť sa čokoľvek učiť, keď si nemohli nainštalovať vývojové prostredie alebo softvér. Odporúčam vám rovno začať s aplikáciou pre Android, ako je alebo na webovú stránku a začnite skúmať jazyk. Nepokúšajte sa Python hneď nainštalovať, ak nie ste technicky zdatní.
2. týždeň: Začnite s vývojom softvéru (vytvorte projekt)
Získajte skúsenosti s vývojom softvéru. Skúste aplikovať všetko, čo ste sa naučili, na vytvorenie skutočného projektu.
- 1. deň: Zoznámenie sa s vývojovým prostredím (5 hodín)Vývojové prostredie je interaktívne prostredie, v ktorom budete písať kód pre najväčšie projekty. Mali by ste byť oboznámení aspoň s jedným vývojovým prostredím. Odporúčam začať s alebo zápisník Jupyter
- 2. deň: Github (6 hodín): Preskúmať , vytvorte repozitár. Skúste commit, odoslať kód a vypočítať rozdiel medzi ľubovoľnými dvoma stromami Git. Taktiež sa oboznámte s vetvením, zlučovaním a pull requestmi.
- Deň 3: Prvý projekt: Jednoduchá kalkulačka (4 hodiny)Zoznámte sa s Tkinterom. .
- Deň 4, 5, 6: Osobný projekt (5 hodín každý deň)Vyberte si jeden z projektov a začnite na ňom pracovať. Ak nemáte žiadne nápady na projekty, pozrite si tento zoznam:
- 7. deň: Hostiteľstvo (5 hodín)Pochopte svoj server a hosting Nakonfigurujte Heroku a nasaďte zostavenie svojej aplikácie.
Prečo projekt:
Slepé nasledovanie krokov v lekcii alebo videu nerozvíja vaše myslenie. Svoje vedomosti musíte aplikovať priamo na projekt. Keď vynaložíte všetko úsilie na nájdenie odpovede, zapamätáte si ju.
3. týždeň: Zoznámte sa s programátorskými prácami
Vaším cieľom v 3. týždni je získať všeobecné znalosti o procese vývoja softvéru. Nebudete si musieť zdokonaľovať svoje zručnosti, ale mali by ste poznať niektoré základy, pretože ovplyvnia vašu každodennú prácu.
- 1. deň: Základy databáz (6 hodín)Základný SQL dotaz (vytvorenie tabuľky, výber, kde, aktualizácia), SQL funkcia (priemer, maximum, počet), relačná databáza (normalizácia), vnútorné spojenie, vonkajšie spojenie atď.
- Deň 2: Používanie databáz v Pythone (5 hodín)Používanie databázového frameworku (SQLite alebo Pandas), pripojenie k databáze, vytváranie a pridávanie údajov do viacerých tabuliek, čítanie údajov z tabuliek
- 3. deň: API (5 hodín)Naučte sa volať API, učte sa JSON, mikroslužby a REST API.
- 4. deň: NumPy (4 hodiny): a precvičte si jeho používanie na
- Deň 5, 6: Portfólio webových stránok (5 hodín každý deň)Naučte sa Django, , pozrite si aj framework Flask
- 7. deň: Jednotkové testy, logy, ladenie (4 hodiny)Pochopte jednotkové testy (PyTest), naučte sa pracovať s protokolmi a kontrolovať ich a používať body prerušenia
Reálna časová stupnica (tajná):
Ak vás táto téma nadchne a naplno sa jej venujete, všetko zvládnete za mesiac.
- Pravidelne sa učte Python. Začnite o 8:00 a pracujte do 17:00. Dajte si prestávku na obed a desiatu (spolu jednu hodinu).
- O 8:00 si napíšte zoznam toho, čo sa dnes budete učiť. Potom si hodinu zopakujte a precvičte všetko, čo ste sa včera naučili.
- Od 9:00 do 12:00 sa menej učte a cvičte. Po obede zrýchlite tempo. Ak si neviete rady s nejakým problémom, vyhľadajte riešenie online.
- Denne strávte 4 – 5 hodín štúdiom a 2 – 3 hodiny cvičením. (Môžete si vziať maximálne jeden deň voľna týždenne.)
- Tvoji priatelia si budú myslieť, že si blázon. Nesklam ich – drž sa toho, čo sa im zdá.
Ak pracujete na plný úväzok alebo študujete na univerzite, bude vám to trvať dlhšie. Ako študentovi mi trvalo osem mesiacov, kým som dokončil všetko na zozname. Teraz som seniorný vývojár. Mojej manželke, ktorá pracuje v americkej centrálnej banke, trvalo šesť mesiacov, kým dokončila všetko na zozname. Nezáleží na tom, ako dlho to trvá. Dokončite zoznam.
4. týždeň: Berte hľadanie práce vážne (stážista)
Vaším cieľom na štvrtý týždeň je brať žiadosť o prácu vážne. Aj keď o prácu teraz nechcete, počas pohovoru sa veľa dozviete.
- 1. deň: Zhrnutie (5 hodín)Vytvorte si jednostránkový životopis. V hornej časti životopisu uveďte stručné zhrnutie svojich zručností. Nezabudnite uviesť zoznam svojich projektov s odkazmi na Github.
- Deň 2: Portfólio webových stránok (6 hodín)Napíšte niekoľko blogov. Pridajte ich do predchádzajúceho portfólia webových stránok, ktoré ste vytvorili.
- Deň 3: Profil na LinkedIn (4 hodiny)Vytvorte si profil na LinkedIn. Preneste si na LinkedIn všetko zo svojho životopisu.
- 4. deň: Príprava na pohovor (7 hodín)Vygooglite si najčastejšie kladené otázky na pohovore. Precvičte si riešenie 10 programátorských problémov, ktoré sa kladú na pohovoroch. Urobte to na papieri. Otázky na pohovor nájdete na stránkach ako Glassdoor a Careercup.
- Deň 5: Networking (~ hodiny)Vyjdite zo skrine. Začnite navštevovať stretnutia a pracovné veľtrhy. Stretnite sa s náborármi a ďalšími vývojármi.
- Deň 6: Stačí sa uchádzať o prácu (~ hodiny)Vyhľadajte si v Googli „práca v Pythone“ a potom si pozrite pracovné ponuky na LinkedIn a lokálnych pracovných portáloch. Vyberte si tri pozície, o ktoré sa chcete uchádzať. Prispôsobte svoj životopis každej z nich. Nájdite v požiadavkách dve alebo tri veci, s ktorými nie ste oboznámení. Strávte nasledujúce tri až štyri dni ich spracovaním.
- 7. deň: Poučte sa z odmietnutia (~ hodiny)Vždy, keď vás odmietnu, identifikujte dve veci, ktoré musíte vedieť, aby ste prácu získali. Potom strávte štyri až päť dní zdokonaľovaním svojich zručností v týchto oblastiach. Takto sa po každom odmietnutí stanete lepším vývojárom.
Pripravený na prácu:
Pravdou je, že na prácu nikdy nebudete stopercentne pripravení. Všetko, čo potrebujete, je naozaj dobre sa naučiť jednu alebo dve veci a oboznámiť sa s ďalšími otázkami, aby ste prekonali bariéru pohovoru. Keď prácu získate, veľa sa z nej naučíte.
Užite si proces:
Učenie je proces. Na ceste sa nevyhnutne objavia výzvy. Čím viac výziev čelíte, tým lepším vývojárom sa stanete.
Ak dokážete zoznam dokončiť za 28 dní, darí sa vám skvele. Ale aj keď dokončíte iba 60 – 70 % zoznamu, rozviniete si potrebné vlastnosti a zručnosti. Tie vám pomôžu stať sa programátorom.
Kde študovať:
Ak stále neviete, kde začať,
- (zábavná aplikácia pre Android na učenie sa Pythonu)
- (bezplatné webové vzdelávacie zdroje)
- (Pozrite si video a poučte sa)
Prajem vám fascinujúcu cestu. Budúcnosť je vo vašich rukách.
Preklad: Diana Sheremyeva
Zdroj: hab.com
