Kā es pabeidzu visu freeCodeCamp mācību programmu 9 mēnešos, strādājot pilnu slodzi

Pagājušā gada laikā es pabeidzu visu freeCodeCamp mācību programmu, strādājot pilnu slodzi kā skolotājs. Šajā rakstā es izklāstīšu, kā man tas izdevās. Īpaši tas, kā es organizēju savu laiku un kādu papildu materiālu izmantoju.

Priekšvēsture

Pirmkārt, aizmugures stāsts. Kodēšana man nebija pilnīgi jauna. Es uzaugu mazā tehnoloģiju uzņēmumā.

Mans tēvs pirms manas dzimšanas nodibināja pats savu uzņēmumu, kur viņi tehnoloģiju jomā veica dažādas darbības, piemēram, datoru labošanu, interneta savienojumu un tīklu izveidi citiem uzņēmumiem, datoru kursu mācīšanu un administratīvo lietojumprogrammu izveidi uzņēmumiem. Tā bija maza pilsēta, tāpēc viņi būtībā bija visas pilsētas “tehnoloģiju puiši”.

Uzņēmuma biroji atradās mūsu mājā, tāpēc es burtiski uzaugu starp datoriem un cilvēkiem, kuriem tie patika. Es jau bērnībā sāku spēlēties ar Visual Basic (viens no puišiem kompānijā man iemācīja, kā to izmantot), un visu brīvo laiku pavadīju tiešsaistē, tērzējot ar citiem nerdiem.

Kad man bija apmēram 12 gadi, viens no šiem nerdiem nosūtīja man e-pastu tīmekļa izstrādes rokasgrāmatai (milzīgs .txt fails, kas pamatā nodarbojās ar HTML), un es to izmantoju, lai izveidotu savu fanu vietni. Tajā pat bija viens no šiem foršajiem apmeklējumu skaitītājiem.

Es to mitināju vietnē Geocities, dabūju bezmaksas īsu URL un uzskaitīju Yahoo un AltaVista (toreiz tie bija lielākie).

Pēc tam notika dzīve, un es pilnībā atteicos no idejas kļūt par programmētāju, jo apstākļi prasīja “reālistiskāku” pieeju. Tagad es neiedziļināšos detaļās, bet būtībā man bija jāatsakās no mācībām un jāiegūst darbs.

Es turpināju dzīvot savu dzīvi. Es izveidoju neregulāru vietni sava tēva klientiem un tad galu galā nolēmu sākt mācīt angļu valodu, kas man bija viegli, un būtībā visu aizmirsu par tīmekļa izstrādi. Līdz 2016. gadam tas ir.

Kā es nolēmu mainīt karjeru

Man patīk mācīt. Tā ir atalgojoša profesija, interesanta un jautra. Bet tam ir savas ēnas puses. Sākumā viss šķita kā izaicinājums, bet pēc tik daudziem gadiem, kad to darīju, es sāku just, ka man nav mērķa. Ka es vairs neaudzēju un nemācījos.

Es jutos iestrēdzis. Tāpat kā mans darbs bija tieši tāds pats gadu no gada. Es vienkārši gāju cauri kustībām. Tas arī nepiedāvāja daudz iespēju pārcelties, kas man vēlāk kļuva ļoti svarīgi.

2013. gadā es satiku savu vīru, un nākamajā gadā mēs devāmies trīs mēnešu mugursomas ceļojumā uz Eiropu, kas ir pavisam cits emuāra ieraksts, taču būtībā tam bija ārkārtīgi mazs budžets un mums bija lieliska pieredze. Mēs mīlējām Eiropu un nolēmām, ka atgriezīsimies vēl vienā garā ceļojumā.

Pagāja laiks, mēs darījām citas lietas, un tad es atradu Codecademy un sāku ar to spēlēties un rotaļāties ar domu kļūt par pilnas slodzes izstrādātāju. Man jau bija zināma pieredze vietņu izveidē, izmantojot tikai HTML un CSS, bet bez JavaScript. Es tiešsaistē lasīju daudzus veiksmes stāstus, bet es joprojām to neuzskatīju par īstu karjeru, nevis ar tālmetienu.

Tikmēr mēs plānojām nākamo garo ceļojumu, ietaupījām naudu, plānojām utt. Es arvien vairāk strādāju kā ārštata tulks, ļoti iesaistījies savā karjerā, tulkot tādas foršas lietas kā romāni un dzeja. Pienāca 2017. gads, un mēs šoreiz atkal devāmies uz Eiropu uz diviem mēnešiem.

Tur mēs satikām baru izstrādātāju. Tas bija traki. Šķita, ka katrs satiktais dīvāna sērfotājs kaut kā ir IT jomā, vai nu kā programmatūras produktu vadītājs, kā izstrādātājs, kā testētājs utt. Viņi visi mūs mudināja iedziļināties tehnikā. Tajā laikā mēs jau bijām izlēmuši, ka vēlamies pārcelties uz Eiropu, tāpēc daudzi no viņiem mums teica: “Jūs šeit varētu atrast darbu. Izstrādātāji šeit ir pieprasīti, mums to vajag daudz. ”

Pirms ceļojums beidzās, mēs pieņēmām lēmumu reģistrēties 2 gadu tehniskajam sertifikātam jaundibinātajā tehniskajā universitātē netālu no mūsu pilsētas. Programma galvenokārt bija Java, tāpēc, kad atgriezāmies, mēs sākām Java kursus Kouserā. Pirmais modulis faktiski bija JavaScript kurss, tāpēc mēs faktiski uzreiz piesaistījāmies JavaScript.

Kamēr mēs iemācījāmies JavaScript, mēs gaidījām mācību gada sākumu 2018. gada martā. Uni bija tikai 50 plankumi, tāpēc mēs iepriekš saņēmāmies ļoti labi un mācījāmies. Mēs gājām, kārtojām testus, nokārtojām kursus, un tad mums bija jāgaida, kamēr viņi nolēma. Mēs saņēmām visaugstākās atzīmes starp visiem kandidātiem, taču šīs atzīmes neko nemainīja. Plankumi tiktu piešķirti, izmantojot loterijas sistēmu. Mans vīrs iekāpa un es paliku malā.

Viņš nolēma, ka dod priekšroku mācīties pats, viņu vairs neinteresēja Java, jo viņš bija piesaistīts JavaScript, tāpēc mēs sākām mācīties paši.

Mēs sākām ar Codecademy, taču tā mums bija pārāk rokā (mums nebija Premium kontu). Kaut kur mēs lasījām par freeCodeCamp. Un mēs to sākām, sākumā ļoti lēni (pirmā sertifikāta iegūšana man prasīja mēnešus, tiesa, pa vidu mācību programma tika mainīta, un es nometu savu klēpjdatoru un nācās to salabot). Pēc vasaras brīvlaika beigām un es atgriezos pie pilna laika darba, viss kļuva grūti.

Strādā pilnu slodzi un veic pilnu ātrumu freeCodeCamp

Tas nebija viegli, nemelošu. Tas palīdzēja, ka lielākā daļa manu draugu un paziņu nedzīvo man tuvumā, un es dzīvoju mazā pilsētā, kas nepiedāvā daudz izklaides iespēju. Šajā ziņā programmēšana bija dzīvības glābējs. Man bija jādara kaut kas jautrs, un tas izraisīja atkarību, lai ar to varētu nogalināt garlaicības stundas.

Tāpēc tas ļoti palīdzēja, strādājot ar stundu daudzumu, ko pavadīju, veicot garīgo darbu (mācot un mācoties).

Pirmais sertifikāts prasīja mēnešus, daļēji tāpēc, ka gaidīju iekļūšanu Uni un daļēji tāpēc, ka pirmos 3 mācību gada mēnešus strādāju 10 stundas dienā.

Diemžēl es nevarēju vienkārši pamest darbu un mācīties pilnu slodzi, jo man vajadzēja samaksāt rēķinus, tāpēc man bija jāiegūst 3 lietas:

  1. Laika organizēšana
  2. Disciplīna
  3. Organizācija

Laika organizēšana

Es sāku strādāt plkst. 7:00, tāpēc lielākajā daļā dienu sāku celties pulksten 4:30. Es sāku dienu ar freeCodeCamp izaicinājumiem un kafiju. Dažreiz es arī lasīju no grāmatas vai veicu citas apmācības, atkarībā no tā, ar ko es šobrīd strādāju. Mācījos arī pusdienu pārtraukumā un pēc darba, taču samierinājos ar to, ka darba dēļ nedēļas laikā nebiju tik produktīva. Tāpēc nedēļas laikā es galvenokārt veicu īsus izaicinājumus, lasīju utt. Es strādāju pie projektiem nedēļas nogalēs, svētku dienās un brīvajā laikā.

Ja man būtu 30 minūtes, es lasītu 30 minūtes. Ja man bija 15, es 15 minūtes veicu pētījumu. Es izmantoju katru brīvo brīdi manā dienā, lai mācītos.

Svētdienās es gatavoju lielāko daļu ēdienreižu nedēļā, tāpēc man nebija jāpavada laiks ēdiena gatavošanai, un man nevajadzēja galu galā ēst neveselīgas lietas. Es arī plānoju un apkopoju visu nepieciešamo darbam nedēļā, tāpēc nevajadzēja pavadīt papildus laiku papildus parastajām darba stundām.

Par laimi pēc jūnija manas darba stundas tika samazinātas no 10 -12 līdz 8, tāpēc es tagad strādāju normālu grafiku un tur es sāku uzņemt tempu.

Disciplīna

Jums būs jāmācās pat dienās, kad jums tas nepatīk. Šeit liela loma ir arī motivācijai, taču disciplīna ir svarīga - it īpaši, ja jūs esat līdzīgs man un daudz novēršaties ar sociālajiem medijiem un kaķu video.

Labākais padoms, ko es jums varu dot, lai cīnītos ar kārdinājumu lasīt rakstus tiešsaistē, ir šāds: ja galvā izdomājat tādu jautājumu kā “kā lido lidmašīnas?” (kas parasti ir tāda veida jautājums, kas mani aizrauj un iesūc uz 30 minūtēm), pierakstiet to kaut kur un apsoliet sev, ka pēc tam, kad esat pabeidzis, ko jūs darāt, varat visu par to izlasīt.

99% gadījumu jūs vairs neuztraucat, jo šie jautājumi vienkārši parādās jūsu smadzenēs, jo tas vēlas izklaidēties. Pārspiediet cauri, un jūs to pārspēsit.

Vēl viens disciplīnas aspekts ir izvēlēties studijas, nevis citas lietas. Šī nav tik jautrā daļa. Man nācās atteikties no daudzām, daudzām lietām, kas man patika, lai atbalstītu studijas, un es nevaru vien sagaidīt, kad varēšu pie tām atgriezties. Es to izdarīju tikai tāpēc, ka es gribēju pēc iespējas ātrāk kļūt par izstrādātāju (skat. Motivāciju zemāk), taču pat tad, ja jūs nesteidzaties kā es, iespējams, atklājat, ka jūs pavadāt daudz laika, darot lietas, pat lai arī viņi ir patīkami un jauki, aizņem pārāk daudz sava laika.

Jums būs jāpiešķir prioritāte un jāizdara smagas izvēles.

Motivācija

Man bija ļoti spēcīgs motivators, kas kļuva par izstrādātāju un pārcēlās uz Eiropu. Tas bija mans mērķis ilgi, ilgi, un es nonācu līdz brīdim, kad es sāku vilties, ka es to nedabūju. Visi mani draugi aizgāja no pilsētas, man šeit praktiski nav ģimenes, es jutos izolēta un gribēju aiziet.

Tas mani pagrūda. Tas jutās kā uguns zem manām kājām, es jutu, ka man nav citas izvēles. Radikālu izmaiņu veikšanai nepieciešama spēcīga motivācija. Es nezinu par tevi, bet es esmu kaut kas “nenovērš to, kas nav salauzts”, tāpēc man ir ļoti grūti likt man darīt lietas tikai to darīšanas labad.

Visi mani hobiji ir ļoti praktiski un produktīvi: dārzkopība, joga, ēdiena gatavošana. Man tās jādara (es gribu bezmaksas dārzeņus, sāp mugura, esmu izsalcis). Ja jūs esat kaut kas līdzīgs man, jums būs jāatrod burkāns, lai jūs varētu turpināt.

Pavadiet kādu laiku, domājot par to, ko tieši vēlaties paveikt, pabeidzot freeCodeCamp? Ko jūs vēlaties mainīt vai iegūt savā personīgajā dzīvē caur to?

Mācību programma + papildu resursi

Tālāk ir norādīti daži papildu resursi, kurus izmantoju savā freeCodeCamp braucienā. Paturiet prātā, ka tas nav pilnīgs saraksts, jo es daudz strādāju ar Google un ka daži no šiem kursiem nav bezmaksas.

Atsaucīgs tīmekļa dizains: Šī bija tā daļa, ar kuru man jau bija zināma pieredze, tāpēc tā bija viegli un jautri. Es izmantoju dažus papildu resursus, īpaši Flexbox. Mana vismīļākā vieta internetam ir grūti.

JavaScript algoritmi un datu struktūras: Kad es nonācu pie JavaScript moduļiem, es uzķēros. Viss bija super jautri, es daudz ko iemācījos un ļoti vēlējos to pielietot praksē.

Šajā sadaļā es galvenokārt izmantoju grāmatas. Man jau bija pietiekami daudz vingrinājumu ar freeCodeCamp, bet man vairāk vajadzēja paskaidrojumus. Sākumā JS ir arī daudz vingrinājumu.

  • Sākums JavaScript 5. izdevums
  • Jūs nezināt JS
  • Fondu programmēšana ar JavaScript, HTML un CSS
  • JavaScript dokumentācija

Līdz brīdim, kad nonācu līdz šai sadaļai, es arī pievienojos 1 miljonam sieviešu Tech Tech (1MWTT) Code of Summer programmai. Es iemācījos pamata Python un pamata un uzlabotas JavaScript valodas, kas ļoti palīdzēja, īpaši ar solījumiem.

Python mācīšanās man arī palīdzēja nostiprināt dažus pamata programmēšanas jēdzienus. Es nopietni iesaku, kad jūtaties pārliecināts par JavaScript, izmēģiniet jaunu valodu, tikai tās pamatjēdzienus. Pēc tam jums būs daudz ērtāk, kad jūs zināt, kā to pašu darīt ar dažādiem rīkiem.

JavaScript ietvari: Arī šī sadaļa bija lieliska, jo tā man deva pamatu React un Redux. Es jau biju sekojis React kursam par Udemy, React 16.6 - The Complete Guide (ieskaitot React Router & Redux).

Es ļoti iesaku šo kursu un citus šī paša autora kursus. Viņš ir neticami pamatīgs, un viņa paskaidrojumi ir lieliski. Šis bija viens no nedaudzajiem Udemy kursiem, kurā es faktiski sekoju līdzi viņa izstrādātajam projektam: es parasti skatos videoklipus un piemēroju principus visam, pie kā strādāju.

Uz 1millionwomentotech mums bija React nedēļa, kas galvenokārt bija React native, un tad es sāku ar to spēlēties. Tajā laikā es arī sāku strādāt ar savu blakus projektu ar savu vīru, par kuru mēs nolēmām, ka tas būs PWA ar React.

Es nevaru uzsvērt, cik svarīgi ir veidot kaut ko savu no nulles. Veidojot mūsu lietotni, pāris nedēļu laikā esmu iemācījies daudz vairāk, nekā esmu iemācījies, izmantojot jebkuru kursu vai apmācību.

API un mikropakalpojumi: Šī sadaļa man bija liela atklāsme un visu mainīja. Līdz šim modulim es biju pārliecināts, ka vēlos būt front-end izstrādātājs, bet pēc Node.js apgūšanas es sāku domāt par back-end vai Full Stack izstrādātāju. API veidošana ir tikai tik jautra, un jūs tik ātri redzat rezultātus. Es sāku veidot savus pirmos mazos Full Stack projektus, un es ļoti aizrāvos.

Daži no izmantotajiem resursiem:

  • Pilns Node.js izstrādātāju kurss (2. izdevums)
  • Node Girls Ievads aizmugures izstrādē ar Express
  • Mezglu dokumenti
  • Express dokumenti
  • NodeSchool
  • Ievads vietnē Node.js
  • REST & GraphQL API dizains Node.js, v2 (izmantojot Express & MongoDB)

Šajā laikā es arī brīvprātīgi piedalījos “1MWTT”, un man tika lūgts izveidot Probot lietotni brīvprātīgajiem, kas iekāpj ar Node. Tas man arī deva zināmu praksi ar Node, kas bija ļoti jautri.

QA un informācijas drošība: Šis modulis bija arī acu atvērējs. Līdz tam es nekad mūžā nebiju uzrakstījis nevienu testu. Tagad man patīk rakstīt testus, un es pat ļoti interesējos par testu vadītu attīstību.

Es galvenokārt izmantoju šīs sadaļas dokumentus, bet pēc tam es nolēmu pārbaudīt arī manu priekšējo daļu, un es atradu šo apbrīnojamo Udemy kursu, kuru es nevaru ieteikt pietiekami. Instruktors ir pārliecinoši labākais instruktors, ko jebkad esmu redzējis vietnē Udemy. Es nevaru sagaidīt, kad patērēšu jebkurus citus kursus, ko viņa izlaidīs nākotnē.

- Chai docs

- Reaģēšanas testēšana ar Jestu un Enzīmu

Datu vizualizācija ar D3: Šis bija visgrūtākais sertifikāts. Paskaidrojumi bija labi, bet, tiklīdz esat nonācis projektos, uzzināt, ka izaicinājumi attiecas tikai uz pirmo projektu, un pārējiem jūs esat kaut kas pats. Un tiešsaistē nav daudz labu resursu. Es galvenokārt lasīju dokumentus un izmantoju apmācības. Šeit ir resursi, kas mani beidzot ieguva, izmantojot šo sertifikātu:

- D3.js apmācības, ko izstrādājusi d3Vienno

- D3 dokumentācija

Padomi mācību programmas pabeigšanai

Rezumējot, šīs ir lietas, kas man visvairāk palīdzēja sasniegt mērķi pabeigt mācību programmu:

  • Izmantojiet mācību plānu kā ceļvedi, bet papildiniet ar citiem resursiem
  • Neuzķerieties uz ilgu laiku: uzdodiet jautājumus, Google, pārī programmu.
  • Nosakiet reālus mērķus katrai dienai un nedēļai. Nepārspēj sevi, ja vienu nedēļu esi lēnāks: dzīve notiek. Neļaujiet tam mest jūs ārpus kursa.
  • Paturiet prātā savu motivāciju: tieši tas jūs virzīs grūtās dienās.
  • Prioritāte: jums būs jāsamazina laiks, ko pavadāt, darot citas lietas.
  • Neaizmirstiet ņemt brīvas dienas. Tie ir vitāli svarīgi mācību procesam. Un pietiekami gulēt!

Pēc freeCodeCamp es jutos mazliet apmaldījies. Šis bija ceļvedis, kas man virzīja ceļu no skolotāja līdz izstrādātājam.

Pēc dažu dienu pārdomām un plānošanas es nodevos savam blakusprojektam, kuru veidoju kopā ar savu vīru. Mēs mācāmies un izklaidējamies, un mēs par to esam ļoti priecīgi.

Un jā, es saņēmu darba piedāvājumu uzreiz pēc mācību programmas pabeigšanas , bet vairāk par to gaidāmajā rakstā.

Kopumā es nevarētu būt iemācījies visu, ko esmu iemācījies tik ātri, ja vien tas nebūtu bijis freeCodeCamp, un esmu ļoti pateicīgs visiem, kas padara iespējamu tik brīnišķīgu projektu.

Ja jūtat to pašu un varat atdot, lūdzu, apsveriet iespēju ziedot freeCodeCamp šeit.