Hogyan vesztegettem életem két évét a webfejlesztés elsajátításával, mielőtt felfedeztem a Free Code Camp-et

Két évvel ezelőtt volt. Egy idő, mielőtt a Free Code Camp még létezett volna. Gugliztam, „hogyan válhatok webfejlesztővé”, és hosszú nyelvlista jelent meg. Kutattam, és úgy tűnt, hogy a Ruby a legnépszerűbb nyelv.

„Ha 4 hónap alatt megtanulom a Rubyt, akkor jó dolgokat tudok építeni! Talán még felvehetik junior fejlesztőként, és még több jó dolgot tanulhat meg! " Gondoltam magamban.

Ez volt a legtévesztőbb ötlet, amelyet az agyam valaha is elképzelhetett. Ne feledje, hogy ezen a ponton alig értem hozzá a HTML-hez, nemhogy a CSS-hez és a JavaScript-hez.

Néhány könyv megkeresése után találtam egy nagyon jól fogadott kezdő könyvet a programozásról, Chris Pine „Tanulj meg programozni” címmel. Bevezetett a programozás alapjaiba.

Mindegyik fejezetnek több egyszerű algoritmusproblémája volt, amelyeket áttekintésként teljesíthet. Körülbelül egy hónapig, miközben minden nap sok órán át dolgoztam a könyvet, végül egyetlen nap alatt végig tudtam futni az egész könyvet, és néhány perc alatt megoldani minden problémát.

Ezen a ponton elég nagy egóm volt, és úgy éreztem, hogy nagyon jól tudok programozó lenni. Azt gondoltam: „Hé, egy nap alatt végig tudom futni ezt a könyvet. Programozó vagyok! Jobb?"

Hihetetlenül tévedtem. Csak egy óriási jéghegy felszínét kapartam meg, amelynek valójában soha nincs bázisa, hanem egyre mélyebbre mélyül.

Mint egy több ezer évvel ezelőtti ős, aki egy egész szigetet felfedezett és rájött, hogy a tengeren túl egy egész világ van, a felhők felett, van egy egész univerzum.

A Sublime Text 2, a Ruby és egy könyv erejével azt hittem, hogy bármit létrehozhatok, amit elképzeltem. Két évvel később rájöttem, hogy ez egyszerűen messze volt a valóságtól.

Ha visszamehetnék az időben és beszélhetnék múltommal, azt mondanám neki, hogy ambícióinak realitása nagyobb, mint amit fel tudna fogni, és hogy ezt a hosszú, fárasztó utat komolyan kell venni. „Ne kezelje a programozást úgy, mint egy játékot, mert az élete attól függ. Két év múlva rájössz, hogy ez mennyire komoly, és mennyi időt vesztett el. ”

Talán nem kellene túl keményen lennem magammal. Végül is nem igazán tudtam, hol kezdjem. Nekem volt egy könyvem, és a Codecademy-n tanfolyamot futottam át.

Ezalatt az idő alatt nem tudtam, mi egy fejlesztési verem, nem is beszélve a háttér-fejlesztés és a kezelőfelület fejlesztésének terjedelméről. Az akkori ötletem az volt, hogy válasszon nyelvet, kódoljon néhány dolgot, és mindennek varázslatszerűen kell működnie. Senki nem adott áttekintést arról, hogy milyen volt a webalkalmazás fejlesztésének folyamata.

A „Tanulj meg programozni” című könyv elkészülte után is tudtam, hogyan kell kódolni néhány algoritmust, de fogalmam sem volt, milyen célt szolgálnak majd egy alkalmazásban, azon kívül, hogy megoldjak egy fejezet végén található ostoba kihívásokat.

Alapvetően ez volt az én tanulási tapasztalatom körülbelül két évig. Csak vakon ugrottam az egyik online forrásról a másikra, és nem voltam biztos abban, hogy az egyes technológiák hogyan kapcsolódnak össze a többiekkel, vagy mit tudnék építeni vele.

Aztán valami nagyszerű dolog történt. Felfedeztem a Free Code Camp-et. Emlékszem, hogy a címlapon olvastam a leírást. Gondoltam magamban: „Munkát kaphatok, ha teljesítem ezt a tananyagot ?! biztos vagy ebben? Nem ártana megpróbálni. Már elvégeztem a Codecademy minden tanfolyamát, és egyetlen nap alatt végig tudok futni egy teljes könyvet! Mennyire lehet nehéz? Szelet torta. Ha befejezem a Free Code Camp-et, és nem tudok elhelyezkedni, akkor írok egy szörnyű értékelést, és átverésnek hívom! Ezt fogom tenni! ”

Tehát akkor elkezdtem ...

Vettem egy pillantást és a tananyag elrendezését. Egyszerű volt, de egy dolog felkeltette a figyelmemet. A tanterv végén, miután mindent befejeztél, ott volt ... a nonprofit lehetőségekhez való dicsőséges hozzáférés, amely lehetővé tette számomra, hogy valós tapasztalatokat szerezzek, és pozitív változásokat tudjak elérni a világon! Ez baromi csodálatosan hangzik! Nagyon szeretnék ezen dolgozni!

Az első néhány út a HTML-en és a CSS-en sütemény volt. Szántottam rajtuk. Természetesen voltam. "Ebben profi vagyok, duh" - gondoltam magamban.

Aztán eltaláltam a JavaScript kihívásait. - Hú, mindez csak áttekintés arról, amit már tudok! Pfff ... már félúton vagyok! Tudatlanul hittem.

Aztán eltaláltam az algoritmus kihívásait ...

Az első néhány nagyon könnyű volt. De aztán az ötödiken eltalált a valóság. Egyszerű feladat volt. Csak nagybetűvel írja be az egyes szavak első betűjét. Logikailag könnyű volt. De nem tudtam megtenni. Ekkor jöttem rá, hogy nem vagyok alkalmas webfejlesztőnek lenni.

"Ha nem tudom megmondani a számítógépemnek, hogy egyszerűen nagybetűket írjon minden szóban, akkor hogyan tudok valódi alkalmazásokat felépíteni, amelyek sokkal többet jelentenek?" Azt gondoltam.

Természetesen nem akartam ilyen könnyen feladni. Soha nem hagyom, hogy a számítógép legyőzzen. Ember vagyok - ugyanaz a faj, aki létrehozta ezt a gépet. Ha meg akarom parancsolni, hogy csináljon valamit, megtalálom a módját. Én vagyok a parancsnoka.

Sok órányi guglizás után sikerült előállnom valamilyen kóddal, amelyet magam írtam be, és rákattintottam a zöld „beküldés” gombra, és ez elmúlt.

Ekkor történt valami különleges. Úgy éreztem, hogy elrohan a teljesítmény, amelyet csak akkor kap, ha órákat tölt el azzal, hogy valamit kitaláljon, majd végül meglátja, hogy az összes teszt sikeres volt. Ez szó szerint életem egyik legkielégítőbb pillanata volt.

Elégedettebb, mint bármelyik játékban, amit valaha játszottam. Rákattantam. Azt akarta, hogy teljes minden algoritmus, mert számomra mindegyik algoritmus volt a főnök, hogy meg kellett legyőzni, és minden főnök legyőztem volna keresni nekem tapasztalati pontokat, ami szinten föl, hogy egy ügyes kódoló.

Azt tudta, hogy megyek, hogy legyőzze minden főnök, és lesz egy jobb coder. Amit nem tudtam, az az volt, hogy ez nekem hat fárasztó hónapot fog igénybe venni.

Igen, hat hónapig tartott az összes algoritmus elkészítése. De elvégeztem az összes elülső projektet is, úgyhogy azt hiszem, nem voltam túl kopott.

Ezen a ponton körülbelül 1000 óra munkát töltöttem be a FreeCodeCamp-ban. A JavaScript kódolás megértése sokkal jobb volt, mint amikor kezdtem. Nagyon hosszú órákon át a számítógépemet bámultam, és sokszor láttam a napfelkeltét.

Megtanultam, hogyan kell olyan algoritmusokat írni, amelyek ellenőrzik a helyes formázást, manipulálják a mondatokat, megfejtik a kódokat, kiszámítják a bolygó átlagos magasságát a keringési periódusában, felépítenek egy teljesen működőképes számológépet és így tovább. Csak hat hónap alatt tanultam meg ezeket a dolgokat.

Játszottam a Node-szal, az Express-szel és az Angular-szal, és mintaprojektekbe bepillantva kutattam a MEAN-veremet. Kezdtem érteni, hogyan készülnek a webalkalmazások. És ekkor jöttem rá, hogy a Free Code Camp az igazi.

Közel egy év telt el azóta, hogy elkezdtem dolgozni a Free Code Camp-en, és még mindig nem jutottam el a nonprofit részleghez, amelyen a szívem volt. De ez nem számít, mert az a képességugrás, amelyet akkor hajtottam végre, amikor először felfedeztem a Free Code Campet, és most megdöbbentő. Ha középiskolás koromban elérhető lett volna a Free Code Camp, akkor csak el tudom képzelni, hogy most éppen milyen szinten lennék, vagy mennyire lennék a karrierem szempontjából.

A legnevetségesebb az egészben természetesen az, hogy a Free Code Camp ingyenes. Csodálatos közösséget kínálnak, egy teljes veremű tananyagot, amelyet folyamatosan frissítenek, és lehetőséget kínálnak arra, hogy valódi munkatapasztalatokat szerezzenek, miközben segítenek a nonprofit szervezeteknek. Még saját álláshirdetési részük is van! Szkeptikus vagyok, hogy sok tandíjat számláló kódoló bootcamp még annyi tartalmat és lehetőséget kínál, mint a Free Code Camp.

Végül szeretném elmondani, hogy a Free Code Camp nagyon nehéz. De ettől olyan nagyszerű. Reális áttekintést nyújt arról, mi kell ahhoz, hogy fejlesztő legyen. Befejezi a tananyagot, és fejlesztő leszel. Ez egyszerű. Nehéz. Valódi. Csak annyit kell tennie, hogy folytatja mindaddig, amíg a térkép minden kihívását be nem jelöli.

Még körülbelül 1000 órám van még hátra az újonnan hozzáadott tartalmuk miatt. De minden órában több olyan készség alakul ki, amelyet elsajátíthatok, így válhatok olyan fejlesztővé, amelyikre törekszem.

Ez meglehetősen hosszú út, és előfordulhat, hogy elmaradok a menetrendtől vagy küzdök, de ennek minden egyes részét élvezem.