Poradenství v oblasti kódování I Wish Id Trusted Earlier

Nedávno jsem oslavil 1 rok výročí, kdy jsem začal s kódováním. Za poslední rok se toho hodně změnilo a měl jsem to štěstí, že jsem se nedávno nechal zaměstnat technologickou společností na svou úplně první roli softwarového inženýrství.

Já vím, já vím... Existuje nepřeberné množství článků s radami, jako jsou tyto, jako tomu bylo před rokem. Navzdory tomu, že jsem mnohé sám přečetl, když jsem začínal, vzpomínám si, že jsem některé jejich rady odmítal, zejména v případech, kdy nebyly v souladu s mou již existující intuicí. Ehm, co kdybych ignoroval 24 různých článků, které jsem četl a které mi radí, abych něco udělal, a místo toho pokračoval NEDĚLAT to, díkyss. 💅

Například přítomnost online se zdála být otravná a zbytečná ztráta času. Nyní jsem rád, že jsem znovu přezkoumal svůj postoj, protože mě na moji současnou pozici oslovil recruiter na LinkedIn. To by se nestalo, kdybych tvrdošíjně lpěl na své představě, že to mohu udělat po svém, aniž bych se uchýlil k tomu, co jsem v té době považoval za protivné koncepty, jako je digitální self-marketing.

Takže, s plným uznáním, že soubor literatury je již tak rozsáhlý, přidám další hlas „z druhé strany“, v naději, že přesvědčím někoho tak tvrdohlavého, jako jsem byl já, aby níže uvedené rady zvážil .

Bez dalších okolků, zde je rada, kterou bych dal svému mladšímu já i všem ostatním, kteří začínají na své kódovací cestě.

1. Zvažte, zda je Bootcamp pro vás ten pravý 🗺️

Potřebujete se zúčastnit bootcampu, abyste se naučili kódovat? Rozhodně ne. Jsou všechny zdroje, které potřebujete, abyste se naučili kódovat, dostupné online zdarma? Rozhodně ano. Takže, budete mít ještě prospěch z dokončení bootcampu? 🤔 Taky ano! Učební osnovy navržené zkušenými učiteli usnadní učení se věcem ve správném pořadí a vyhnou se ponoření do témat, která vyžadují již existující znalosti. Například byste měli opravdu začít tím, že se před prozkoumáním Reactu naučíte vanilkový JavaScript a pravidelnou manipulaci s DOM. Jinak bude váš mentální model fungování frontendu chybět.

Ale bootcampy jsou OBROVSKÝ závazek. Než rozdáte peníze a omezíte jiné povinnosti, abyste si udělali čas na velmi intenzivní zážitek – ujistěte se, že máte opravdu rádi kódování. To se může zdát samozřejmé, ale existuje překvapivé množství studentů, kteří investují peníze a čas, než se ujistí, že mají o předmět dlouhodobý zájem.

Naštěstí existuje spousta levných Udemy nebo bezplatných tutoriálů na Youtube, které s tím pomáhají. Mít pevný mentální model programovacího jazyka vás připraví na úspěch a usnadní vám držet krok s rychlým tempem bootcampu. Začal jsem s Colt Steele's Udemy Modern Python Bootcamp, pak pokračoval s jeho Web Development Bootcamp, než jsem se přihlásil do skutečného bootcampu. Mohl bych pokračovat o tom, jaký je Colt vynikající učitel se stejně vynikajícími zvyklostmi v pojmenovávání domácích mazlíčků (jeho kuře se jmenuje Stevie Chicks, kluci, musím říct víc ), ale zněla bych jen jako hloupá fanynka. Místo toho vám zanechám jména některých stejně skvělých instruktorů, kteří také nabízejí kvalitní bezplatné nebo levné kurzy:Angela Yu, Andrei Neagoie, Jose Portilla, ale seznam by mohl pokračovat.

Rok 2020 mohl přinést pandemii, setkání Zoom a Cyberpunk 2077, ale také nás zdobil stále rostoucím počtem tvůrců online obsahu, kteří pořádají dostupné kurzy. Vyberte si!

2. Vyberte správný Bootcamp 💻

Pokud se vydáte po trase bootcamp (a váš úspěch na tom v žádném případě nezávisí, existují i ​​​​jiné způsoby), malé varování:vybírejte svůj bootcamp pečlivě . Mohl bych napsat celý článek o pevných kritériích, podle kterých bych mohl bootcamp posuzovat (měl bych? Dejte mi vědět v komentářích ), ale některé z nich budou nakonec subjektivní. Různé styly výuky a učební osnovy vyhovují různým okolnostem a stylům učení. Osobně jsem byl rád, že jsem se vyhnul bootcampům, které buď nemají vstupní zkoušku, nebo ji mají extrémně snadnou (např. „zapište funkci, která vrátí součet 2 čísel“ nebo „vrátí první položku v tomto poli“). Bootcampy obvykle trvají 3 až 9 měsíců a nedůvěřuji osnovám, které slibují, že vás během tohoto časového období naučí vše, co potřebujete vědět v juniorské roli, aniž byste z vaší strany vyžadovali jakékoli předběžné požadavky.

Také jsem skeptický k bootcampům, které učí více než 2 jazyky - možná nakonec nahradíte hloubku porozumění šířkou a opustíte bootcamp bez pocitu jistoty, že skutečně můžete plně využít nástroje, které nyní uvádíte ve svém životopise. Dobrým způsobem, jak posoudit kvalitu bootcampu, je najít absolventy a podívat se na jejich projekty nebo stránky s portfoliem – možná budete muset provést nějaké pronásledování na LinkedIn, Github nebo Twitteru, abyste získali dostatečně velký vzorek, abyste mohli přesvědčivě určit kvalitu bootcampu. Skvělý nápad je také spojení s bývalými studenty a mluvit s nimi.

Nakonec se podívejte na SwitchUp a Coursereport, kde najdete hodnocení a recenze.

3. Vytvořte si profil LinkedIn – brzy 👔

Ať už jste se rozhodli pro bootcamp nebo jste odvážný samouk, nepodceňujte sílu sítí . Tohle pro mě byla ta nejtěžší rada, kterou jsem musel strávit, a neustále jsem odkládal vytvoření profilu na LinkedIn, dokud mě kariérní služba mého bootcampu v podstatě nedonutila. Pro mnohé z nás je vytváření sítí nepříjemné, digitální sebepropagace je nechutný koncept a vytvoření profilu na LinkedIn se podobá prodeji naší duše ďáblu. I já jsem to tak cítil a do jisté míry stále cítím – nebaví mě žít ve světě, který nás nutí křičet o našich úspěších z plných plic a v podstatě se propagovat jako produkty.

Ale LinkedIn mi také sehnal práci a spojil mě s mnoha vážně působivými lidmi. Neexistují dva způsoby – pokud se snažíte proniknout do technologií nekonvenční cestou, budete mít prospěch z účtu na LinkedIn . Ujistěte se, že je váš životopis dobře napsaný, stručný a že uvádíte všechny předchozí zkušenosti, které byste mohli mít, bez ohledu na to, zda se týkají nebo netýkají technologií. Myšlenka je taková, že v době, kdy budete připraveni na práci, již budete mít síť kontaktů a historii soustavného předvádění svých technických schopností online, ať už prostřednictvím nasazených aplikací, příspěvků nebo článků.

4. Napište o svém učení – brzy 🖋️

To byla další často opakovaná rada, ke které jsem byl zpočátku skeptický. Čím bych mohl přispět do souboru kódovací literatury, kterou ještě neřekli lidé milionkrát kvalifikovanější než já, rolník s nízkým stupněm vzdělání? Články o svém učení jsem začal psát poměrně pozdě, když už jsem přešel od většiny backendových témat. Takže zvenčí se zdá, že moje online přítomnost je zaměřena výhradně na frontend, a musel jsem přesvědčit svého budoucího zaměstnavatele s full-stack rolí, že mám stejný, ne-li větší zájem o backend.

Kdybych to všechno mohl udělat znovu, určitě bych začal psát mnohem dříve. Pokud vás odrazuje skutečnost, že toho ještě moc nevíte a můžete dělat chyby – nebuďte. Bez ohledu na to, o čem píšete, je pravděpodobné, že si váš obsah někdo přečte a bude ho považovat za informativní. Ještě důležitější je, že když budete psát o tématech, na která nejste odborníky, (doufejme) je nakonec prozkoumáte více do hloubky, než byste jinak.

Navíc, když uděláte chybu, lidé vám to dají vědět v komentářích a vy budete mít možnost chybu napravit a poučit se. Nemohu dostatečně zdůraznit, jak užitečné je psát věci – opravdu bych si přál, abych začal dříve, a mým cílem bude pokračovat v psaní, i když přejdu do role na plný úvazek, protožeteď už vím, že je to vynikající způsob, jak upevnit nové znalosti.

5. Naučte se ovládání verzí – brzy (ish) 📁

Mít historii zadávání vašeho kódu na Github je nejjednodušší způsob, jak předvést své dovednosti náborářům. V určitém okamžiku budete chtít začít nahrávat cvičení, která dokončíte, na Github. I když jsem začal kódovat v dubnu 2020, na Github jsem toho moc nenahrál až do listopadu 2020, kdy mě k tomu začal povzbuzovat můj bootcamp. Jaké plýtvání, do té doby jsem vytvořil pěkných pár plných aplikací, které svět nikdy neuvidí! (Jsou hrozné. Svět měl štěstí. )

Měl jsem začít dříve, možná za 2 měsíce. Učit se Git může být zpočátku matoucí, takže bych počkal, až budu mít základní znalosti programovacího jazyka, abych se nezahltil. Ale za pár měsíců se Git stává nutností. Opět přichází na pomoc Youtube.

6. Zaměřte svou energii tam, kde na tom záleží ⏱️

Pokud nekódujete jen pro zábavu, ale také se snažíte přejít do tohoto odvětví profesionálně, zvažte zmenšení tolika dalších závazků, kolik jen dokážete . Jsem si vědom toho, že to nebude vždy možné, například pokud jste rodič nebo se spoléháte na příjem z práce na plný úvazek (v tom případě jste absolutní voják a můj obdiv, že děláte všechno to AND rekvalifikace nemá meze ). Podle mých zkušeností přijde čas, kdy se začnete cítit nuceni udělat nějaké těžké rozhodnutí, zda se vzdát jiných oblastí svého života a zaměřit se více na kódování.

V mém případě jsem se v polovině mého (vzdáleného prvního) bootcampu musel vzdát ne jednoho, ale dvou koncertů na částečný úvazek, které mě držely nad vodou, a místo toho jsem se musel spoléhat na vládní pomoc. Připadalo mi to riskantní a také jsem měl pocit, že zklamávám lidi tím, že opouštím své role, ale ukázalo se to jako správný dlouhodobý krok a jsem na sebe hrdý, že jsem to nechal jít ve správný čas. Je to těžká věc.

Jako u jakékoli jiné dovednosti platí, že čím více času a energie věnujete jejímu učení, tím lépe. Je to tak trochu nanic, opravdu. Obtížné je v reálném čase rozpoznat, na čem skutečně záleží a co lze odfiltrovat. Doufám, že vám pomůže, když budete vědět, že pokud se spolu s učením kódování snažíte splnit všechny své závazky – nejste sami, mnoho z nás se ocitlo v podobné situaci. Není žádná ostuda vzdát se práce, koníčků nebo vztahů, které nám žerou čas a energii, aniž bychom na oplátku dávali mnoho. Ve skutečnosti je to odvážná věc.

7. Přestávky jsou klíčové 💤

Jak již bylo řečeno, prodlužování doby kódování se ne vždy proporcionálně promítá do většího úspěchu – podle mých zkušeností existuje limit, kolik mozkové síly by člověk měl kódování denně věnovat. To se může případ od případu lišit, ale pro mě to znamenalo odpoutat se po večerech a vzít si víkendy volno. Všichni fungujeme optimálně v různou denní dobu, takže se všemi prostředky řiďte svým vlastním cirkadiánním rytmem, ale mějte na paměti, že přetížený mozek jen zřídka produkuje dobrý kód.

Jak vidíte, beru své přestávky velmi vážně. Vzal jsem si Vánoce a o víkendech téměř nekóduji. Tato strategie mi, doufejme, pomůže z dlouhodobého hlediska zabránit syndromu vyhoření a pomůže mi udržet si dětskou fascinaci psaním kódu.

V čem jsem byl zpočátku hrozný, je vědět, kdy přestat. Byly dny, kdy jsem zíral do obrazovky a v noci horečně opravoval děsivé chyby, když už jsem od rána pracoval. Spolehlivě bych během prvních 30 minut ráno opravil chybu, na které jsem předchozího dne zůstal zaseknutý na mnoho večerních hodin. Stejně spolehlivě bych si příště řekl, že tentokrát je to jiné a tentokrát chybu opravím večer, pokud nad tím strávím ještě 10 minut . Vzdát se a nazvat to den bylo těžké se naučit – dovednost, kterou stále zdokonaluji.

8. Na nastavení mysli záleží víc, než si myslíte 🧠

Můžete se naučit cokoli, pokud tomu jen věříte. To není planá fráze, ale naše aktuální současné vědecké chápání neuroplasticity. Pokaždé, když se učíte, váš mozek formuje, posiluje nebo přeskupuje nervové dráhy. To znamená, že máte sílu aktivně a cíleně tvarovat fyzický obrys svého mozku – jak skvělé to je . Přesvědčení, že lidé se nemohou změnit, je nejen archaické a nesprávné, ale je také nebezpečné a vede jednotlivce k přijetí tvárných vlastností a dovedností jako neměnných konstant.

Je tu však drobný háček – abyste se co nejlépe učili, je prospěšné přijmout víru, že MŮŽETE , opravdu se učit. Odstraňte omezující přesvědčení, jako je „kódování je podobné matematice a já nejsem matematik “ nebo „Nikdy nebudu odborník na kódování, protože jsem v životě začal příliš pozdě “, a budete se lépe učit.

Inteligence není nastavena při narození. Věřte mi, napsal jsem disertační práci z psychologie. Nebo ne, protože přiznejme si, že psaní diplomové práce v něčem před lety z vás odborníka neudělá. Věřte však současným akademikům. Zatímco stále probíhá debata o tom, do jaké míry naše geny předurčují naše kognitivní schopnosti, fakt, že každý jedinec může výrazně utvářet svou inteligenci, už není sporný – ani trochu. Přesvědčení, že inteligence není neměnná, ale může být rozvíjena naším vlastním úsilím, se také nazývá růstové myšlení . To je způsob myšlení, který chcete aplikovat také na kódování.

9. Ne, programování není snadné, a to je skvělé 🏃‍♀️

Dalším přínosným očekáváním, které je třeba mít na paměti, je, že programování je obtížné. Nečekejte, že to bude jinak. Opravdu není snadné pozvednout kódování od nuly, zvláště pro někoho, kdo nikdy předtím nic podobného nedělal. Je to zcela nový způsob myšlení a schopnost efektivně uvažovat o abstraktních pojmech chvíli trvá, než se vyvine.

Nenechte se touto skutečností odradit – je zcela normální bojovat a potřebovat znovu a znovu procházet pojmy, o kterých jste si mysleli, že je již ovládáte. Postupem času se zlepšíte v kladení správných otázek a budete přesně vědět, co nevíte, ale nikdy neočekávejte, že budete znát všechny odpovědi z hlavy.

10. Normalizujme slzy 💧

Tato závěrečná rada je určena mně stejně jako vám. Je v pořádku cítit věci při kódování , zvláště když se setkáte s náročnými situacemi - kterých bude mnoho. Je v pořádku cítit radost z úspěšného nasazení aplikace a stejně tak je v pořádku cítit smutek, když CORS znovu udeří a věci nefungují.

Různí lidé mají různé emoční rozpětí. Z kulturních a upřímně řečeno sexistických důvodů toto odvětví obvykle přitahuje určitý typ lidí. Normálně byste tento typ člověka nespojovali s projevováním široké škály emocí. (Příliš zjednodušené zobecnění, ale pro účely tohoto článku postačí ).

V dnešní době se věci mění a jak do odvětví vstupuje rozmanitější pracovní síla, doufám, že postupně normalizujeme pocity v kontextu softwarového inženýrství. Já například cítím věci intenzivně na obou koncích emočního spektra a chci se zbavit představy, že projevovat pozitivní nebo negativní pocity je nějakým způsobem hanebné nebo známkou slabosti. Naopak, vnést pocity a empatii do kontextu kódování je bonus, protože koneckonců lidé používající náš software jsou právě takoví - lidi a schopnost vžít se do jejich situace může produkt jen vylepšit.

Závěr

Doufám, že vám výše uvedené rady budou užitečné. Uvědomuji si, že jsme všichni jedineční jedinci, a proto se naše „nejlepší postupy kódování“ mohou lišit. Co fungovalo pro mě, nemusí nutně fungovat pro vás. Pokud jste například typ člověka, kterému nevadí pracovat dlouhé hodiny a víkendy, můžete se dostat tam, kde jsem teď, za polovinu času. Ale v průměru se domnívám, že výše uvedené rady jsou dostatečně obecné, aby se vztahovaly na velkou část lidí, kteří toto čtou.

Děkuji za přečtení a přeji příjemné kódování! Nebo smutné kódování, když na to přijde. Vaše pocity jsou platné, ať už jsou jakékoli.

Vězte, že na to máte! ✨💪