Ceļvedis absolÅ«tiem iesÄcÄjiem.
(P.S.: tÄs ir autora-indiÄÅa padomi, bet Ŕķiet noderÄ«gi. Aizpildiet komentÄros.)

MÄnesis ā tas ir daudz laika. Ja mÄcÄ«bÄm veltÄ«si 6-7 stundas katru dienu, var paveikt daudz.
MÄrÄ·is uz mÄnesi:
- Iejusties pamatjÄdzienos (mainÄ«gais, nosacÄ«jums, saraksts, cikls, funkcija)
- PraktizÄt vairÄk nekÄ 30 programmÄÅ”anas problÄmas
- Sava divu projektu izstrÄde, lai pielietotu jauniegÅ«tÄs zinÄÅ”anas
- Vismaz iepazīties ar diviem ietvariem
- SÄkt darbu ar IDE (izstrÄdes vidi), Github, hostingu, pakalpojumiem utt.
Tad tu kļūsi par junior Python izstrÄdÄtÄju.
Tagad plÄns nedÄļÄm.
Raksts tulkots ar EDISON Software atbalstu, kas , kÄ arÄ« .
PirmÄ nedÄļa: iepazÄ«stieties ar Python
Izproti, kÄ visa struktÅ«ra darbojas Python. PÄrbaudi pÄc iespÄjas vairÄk lietas.
- Diena 1: 4 pamata koncepti (4 stundas): ievade, izejde, mainīgais, nosacījumi
- Diena 2: 4 pamata koncepti (5 stundas): saraksts, for cikls, while cikls, funkcija, moduļu imports
- Diena 3: VienkÄrÅ”as programmÄÅ”anas problÄmas (5 stundas): apmainÄ«t divus mainÄ«gos, pÄrvÄrst Celsius grÄdus FÄrenheita grÄdos, saskaitÄ«t visas ciparu summas skaitlÄ«, pÄrbaudÄ«t skaitļa primÄro statusu, Ä£enerÄt nejauÅ”u skaitli, izdzÄst dublikÄtu no saraksta
- Diena 4: VidÄjÄs sarežģītÄ«bas programmÄÅ”anas problÄmas (6 stundas): apgriezt virkni (pÄrbaudÄ«t uz palindromu), saskaitÄ«t lielÄko kopÄjo dalÄ«tÄju, apvienot divus sakÄrtotus masÄ«vus, uzrakstÄ«t skaitļu minÄÅ”anas spÄli, aprÄÄ·inÄt vecumu utt.
- Diena 5: Datu struktÅ«ras (6 stundas): kaudze, rinda, vÄrdnÄ«ca, tuples, saistÄ«ts saraksts
- Diena 6: OOP ā ObjektorientÄtÄ programmÄÅ”ana (6 stundas): objekts, klase, metode un konstruktors, OOP mantojums
- Diena 7: Algoritmi (6 stundas): meklÄÅ”ana (lineÄra un binÄra), ŔķiroÅ”ana (burbuļa metode, izvÄle), rekursÄ«vÄ funkcija (faktoriÄls, Fibonaci secÄ«ba), algoritmu laika sarežģītÄ«ba (lineÄrie, kvadrÄtiskie, konstanti)
NeinstalÄjiet Python:
Es saprotu, tas izklausÄs pretrunÄ«gi. Bet ticiet man. Es pazÄ«stu daudz cilvÄku, kuri zaudÄja interesi mÄcÄ«ties pÄc tam, kad viÅi nespÄja uzstÄdÄ«t izstrÄdes vidi vai programmatÅ«ru. Es iesaku uzreiz mÄÄ£inÄt Android lietotni, piemÄram, vai mÄjaslapu un sÄkt izpÄtÄ«t valodu. NeuzstÄdiet sev mÄrÄ·i vispirms instalÄt Python, ja jums nav pietiekamu tehnisko zinÄÅ”anu.
OtrÄ nedÄļa: uzsÄciet programmatÅ«ras izstrÄdi (sagatavojiet projektu)
IegÅ«stiet pieredzi programmatÅ«ras izstrÄdÄ. MÄÄ£iniet izmantot visu, ko esat iemÄcÄ«juÅ”ies, lai izveidotu reÄlu projektu.
- 1. diena: IepazÄ«stieties ar izstrÄdes vidi (5 stundas): IzstrÄdes vide ir interaktÄ«va vide, kurÄ jÅ«s rakstÄ«siet kodu lieliem projektiem. Jums jÄzina vismaz viena izstrÄdes vide. Es iesaku sÄkt ar vai Jupyter notebook
- 2. diena: Github (6 stundas): IepazÄ«stieties ar , izveidojiet repozitoriju. MÄÄ£iniet apstiprinÄt, augÅ”upielÄdÄt kodu, aprÄÄ·inÄt atŔķirÄ«bu starp divÄm jebkurÄm Git kokiem. TÄpat izpratiet par zarojumiem, sapludinÄÅ”anu un pull requestiem.
- 3. diena: Pirmais projekts: VienkÄrÅ”s Kalkulators (4 stundas): IepazÄ«stieties ar Tkinter. .
- 4., 5., 6. diena: PersonÄ«gais projekts (5 stundas katru dienu): IzvÄlieties vienu no projektiem un sÄciet pie tÄ strÄdÄt. Ja jums nav ideju projektam, apskatiet Å”o sarakstu:
- 7. diena: ViesnÄ«ca (5 stundas): IepazÄ«stieties ar serveri un viesnÄ«cu, lai . Iestatiet Heroku un izvietojiet jÅ«su aplikÄcijas izstrÄdi.
KÄpÄc projekts:
VienkÄrÅ”i akli sekojot soļiem mÄcÄ«bu video vai lekcijÄ, jÅ«s neattÄ«stÄ«siet domÄÅ”anas prasmes. Jums jÄpielieto savas zinÄÅ”anas projektÄ. Kad esat iztÄrÄjis visus spÄkus atbildes meklÄÅ”anai, jÅ«s to atcerÄsities.
TreÅ”Ä nedÄļa: apmÄcieties kÄ programmÄtÄjs
JÅ«su mÄrÄ·is treÅ”ajÄ nedÄÄ¼Ä ir iegÅ«t vispÄrÄju priekÅ”statu par programmatÅ«ras izstrÄdes procesu. Jums nebÅ«s nepiecieÅ”ams pilnveidot savas prasmes. Bet jums jÄzina daži pamati, jo tie ietekmÄs jÅ«su ikdienas darbu.
- 1. diena: Datu bÄzu pamati (6 stundas): Pamata SQL vaicÄjums (Create Table, Select, Where, Update), SQL funkcijas (Avg, Max, Count), relÄciju datu bÄze (NormalizÄcija), iekÅ”ÄjÄ savienoÅ”ana, ÄrÄjÄ savienoÅ”ana utt.
- 2. diena: Izmantojiet datu bÄzes Python valodÄ (5 stundas): Izmantojiet datu bÄzu ietvaru (SQLite vai Pandas), pieslÄdzieties datu bÄzei, izveidojiet un pievienojiet datus vairÄkÄm tabulÄm, lasiet datus no tabulÄm
- 3. diena: API (5 stundas): IemÄcieties izsaukt API, apgÅ«stiet JSON, mikroservisus, REST API
- 4. diena: Numpy (4 stundas): un praktizÄjiet tÄ izmantoÅ”anu uz
- 5. un 6. diena: Vietnes portfelis (5 stundas katru dienu): Apgūstiet Django, , aplūkojiet arī Flask ietvaru
- 7. diena: VienÄ«bu testi, žurnÄli, atkļūdoÅ”ana (4 stundas): IepazÄ«stieties ar vienÄ«bu testiem (PyTest), apgÅ«stiet darbu ar žurnÄliem un to pÄrbaudi, kÄ arÄ« izmantojiet pÄrrÄvumus
ReÄlais laika apjoms (noslÄpums):
Ja esat veltÄ«jis sevi Å”ai tÄmai un pieŔķirat tai visu savu uzmanÄ«bu, tad spÄsiet paveikt visu mÄneÅ”a laikÄ.
- PastÄvÄ«gi mÄcieties Python. SÄciet plkst. 8 no rÄ«ta un studÄjiet lÄ«dz 5 pÄcpusdienÄ. Veiciet pusdienu un uzkodu pÄrtraukumu (kopÄ vienu stundu)
- Plkst. 8 no rÄ«ta izstrÄdÄjiet sarakstu ar lietÄm, ko plÄnojat apgÅ«t Å”odien. PÄc tam veltiet stundu, lai atcerÄtos un praktiski izmÄÄ£inÄtu visu, ko iemÄcÄ«jÄties pagÄjuÅ”ajÄ dienÄ.
- No plkst. 9 lÄ«dz 12 mÄcieties un praktizÄjieties mazÄk. PÄc pusdienÄm palieliniet intensitÄti. Ja esat iestrÄdzis kÄdÄ problÄmÄ, meklÄjiet risinÄjumu internetÄ.
- Katru dienu veltiet 4-5 stundas mÄcÄ«bÄm un 2-3 stundas praksÄ. (maksimums ā varat atļauties vienu brÄ«vdienu nedÄļÄ)
- JÅ«su draugi domÄs, ka esat traks. Nepieviļiet viÅus ā atbilstiet tÄlam.
Ja strÄdÄjat pilnu darba laiku vai studÄjat universitÄtÄ, jums vajadzÄs vairÄk laika. BÅ«dams students, man vajadzÄja 8 mÄneÅ”us, lai paveiktu visu sarakstÄ. Tagad es strÄdÄju kÄ vecÄkais izstrÄdÄtÄjs. Manai sievai, kas strÄdÄ ASV centrÄlajÄ bankÄ, vajadzÄja pusgadu, lai pabeigtu visus uzdevumus. Nav svarÄ«gi, cik ilgs laiks tas prasÄ«s. Pabeidziet sarakstu.
CeturtÄ nedÄļa: Åemiet nopietni, lai iegÅ«tu darbu (praksÄ)
CeturtÄs nedÄļas mÄrÄ·is ir nopietni pÄrdomÄt, kÄ iegÅ«t darbu. Pat ja Å”obrÄ«d nevÄlaties strÄdÄt, jÅ«s daudz iemÄcÄ«sieties interviju procesÄ.
- 1. diena: CV (5 stundas): Izveidojiet vienas lapas CV. AugÅ”ÄjÄ daÄ¼Ä norÄdiet Ä«su informÄciju par savÄm prasmÄm. Noteikti pievienojiet savu projektu sarakstu ar saitÄm uz Github.
- 2. diena: Vietnes portfelis (6 stundas): Uzrakstiet dažus blogus. Pievienojiet tos iepriekÅ”Äjam vietnes portfelim, ko izveidojÄt.
- 3. diena: LinkedIn profils (4 stundas): Izveidojiet profilu LinkedIn. PÄrnesiet LinkedIn visu, kas ir jÅ«su CV.
- 4. diena: SagatavoÅ”anÄs intervijai (7 stundas): IeguglÄjiet visbiežÄk uzdotos jautÄjumus intervijÄs. PraktizÄjiet 10 programmÄÅ”anas problÄmu risinÄÅ”anu, par kurÄm jautÄ intervijÄs. Veiciet to uz papÄ«ra. Interviju jautÄjumus var atrast tÄdÄs vietnÄs kÄ Glassdoor, Careercup.
- 5. diena: TÄ«kloÅ”ana (~ stundas): Izejiet no skapja. SÄciet apmeklÄt meet-upus, darba gadatirgus. IepazÄ«stieties ar rekrutÄtÄjiem un citiem izstrÄdÄtÄjiem.
- 6. diena: VienkÄrÅ”i pieteikieties vakancÄm (~ stundas): IeguglÄjiet "darbs Python", paskatieties, kÄdas vakances ir LinkedIn un vietÄjÄs darba sludinÄjumu vietnÄs. IzvÄlieties 3 vakances, uz kurÄm pieteiksieties. PielÄgojiet savu CV katrai no tÄm. Atrodiet 2-3 prasÄ«bas, par kurÄm neko nezinÄt. Pavadiet nÄkamÄs 3-4 dienas, lai tÄs apgÅ«tu.
- 7. diena: MÄcieties no atteikumiem (~ stundas): Katra reize, kad saÅemat atteikumu, nosakiet 2 lietas, kuras jums jÄzina, lai iegÅ«tu darbu. Tad pavadiet 4-5 dienas, lai uzlabotu savas prasmes Å”ajÄs jomÄs. TÄdÄjÄdi, pÄc katra atteikuma jÅ«s kļūsiet labÄks kÄ izstrÄdÄtÄjs.
Gatavība darbam:
PatiesÄ«ba ir tÄda, ka jÅ«s nekad neesat pilnÄ«bÄ gatavs darbam. Viss, kas jums jÄdara, ir ļoti labi apgÅ«t 1-2 lietas. Un iepazÄ«ties ar citiem jautÄjumiem, lai pÄrvarÄtu interviju barjeras. TiklÄ«dz iegÅ«siet darbu, jÅ«s daudz iemÄcÄ«sieties tajÄ.
Baudiet procesu:
MÄcīŔanÄs ir process. JÅ«su ceļojumÄ noteikti bÅ«s grÅ«tÄ«bas. Jo vairÄk ir grÅ«tÄ«bu ā jo labÄks jÅ«s kļūsiet kÄ izstrÄdÄtÄjs.
Ja jums izdodas pabeigt sarakstu 28 dienÄs, jÅ«s esat liels Äalis. Bet pat ja izpildÄ«siet 60-70% saraksta, jÅ«s attÄ«stÄ«siet nepiecieÅ”amÄs Ä«paŔības un prasmes. TÄs palÄ«dzÄs jums kļūt par programmÄtÄju.
Kur mÄcÄ«ties:
Ja joprojÄm nezinÄt, ar ko sÄkt,
- (pievilcīga Android lietotne Python apguvei)
- (bezmaksas resursi mÄcÄ«bÄm tÄ«mekļa versijÄ)
- (skatieties video un mÄcieties)
VÄlu jums aizraujoÅ”u ceļojumu. NÄkotne ir jÅ«su rokÄs.
Tulkots: Diana Å eremjova
Avots: habr.com
