zajímavý

Nejlepší způsoby, jak se naučit kódovat

Fotografie: Christopher Gower (Unsplash)

Pokud se chcete naučit kódovat, může se vám první kroky do tohoto obrovského vesmíru zdát jako skličující, ne-li zastrašující úkol. Zde je velké tajemství: Existuje spousta bezplatných (a levných) zdrojů, které můžete použít k tomu, abyste si udělali veškerou pomoc, kterou potřebujete, naučili se nové techniky a učinili tento proces učení zábavným a vzrušujícím - přinejmenším tak vzrušujícím, jak se kódování může dostat, přinejmenším .

Ať už jste dospělí, kteří chtějí přecházet do technologického průmyslu, student, který se chce naučit nejnovější jazyk, nebo fanda, která chce jen porozumět tomu, jak software a služby fungují, vše, co potřebujete, je přístup k počítači a internetu k zahájení programování cesta. Než se však rozhodnete přejít, zde jsou naše nejlepší tipy a zdroje, jak vás vyrazit na pravou nohu.

Zeptejte se sami sebe: Proč se chcete naučit kódovat?

Věnujte několik minut (nebo den) přemýšlení o důvodech - důvodech - proč se chcete naučit programovací jazyk. Buď k sobě upřímný. Pokoušíte se naučit nejmenší minimum, abyste mohli povýšit? Hledáte velkou změnu v kariéře? Chcete vytvořit další největší aplikaci? Vzrušujte své spolubydlící naprogramováním různých chytrých zařízení tak, aby dělaly něco úžasného?

Vaše odpověď může pomoci určit, který programovací jazyk (y) byste měli ovládat, a také jaký druh závazku (v čase a penězích) může váš cíl vyžadovat. Například, pokud je vaším snem vytvořit další skvělý operační systém nebo zabijáckou alternativu k PhotoShopu, měli byste prospěch z formálního vzdělávání v oblasti informatiky, které vás naučí C ++, a také ze složitějších témat, jako je struktura dat, algoritmy a přidělování paměti.

Na druhou stranu, pokud jste profesionálem střední kariéry, který se snaží přejít na technickou kariéru, krátkodobý kódovací bootcamp by mohl mít větší smysl, než jít do dluhu na druhý stupeň. Pokud vše, co chcete udělat, je vytvořit webové stránky nebo posunout svůj Raspberry Pi na jeho hranice, může vám stačit kombinace interaktivních tutoriálů a bezplatných online kurzů.

Vyberte správný programovací jazyk

Jakmile zjistíte, proč chcete kódovat, můžete snáze určit, který programovací jazyk byste měli řešit. Přestože neexistuje jediný „nejlepší“ programovací jazyk, který by se měl učit, některé jazyky jsou uživatelsky přívětivější než jiné. HTML a CSS jsou považovány za nejjednodušší vstupní body do světa kódování, ale jsou skutečně užitečné pouze pro vývoj základních webových stránek.

U interaktivnějších webů, které zahrnují platební systémy nebo databáze, potřebujete znát Javascript, PHP, SQL a Python, aby všechny komponenty zpívaly. Výrobci mobilních aplikací používají Swift nebo C k vytváření aplikací pro iOS a Java nebo Kotlin pro aplikace pro Android. Vývojáři videoher se obrátí na Unity, nebo dokonce na C #, aby oživili své herní nápady.

Stále se nemůžete rozhodnout o vašem startovacím programovacím jazyce? Většina odborníků doporučuje učit se Python, C # nebo JavaScript, protože nabízejí nejširší flexibilitu nástrojů a kariéry. Chcete-li se rozhodnout, podívejte se na tento skvělý infographic, který porovnává několik populárních programovacích jazyků.

Především se začněte učit. Jakmile se s jedním programovacím jazykem budete cítit pohodlně, budete si moci vybrat další jazyk mnohem rychleji - například naučit se nový hudební nástroj nebo cizí jazyk.

Vyzkoušejte některé online kurzy

Pokud chcete více kontrolovat svůj rozvrh učení (nebo nechcete jít na něj samotný), online kódovací kurz může být lepší volbou než osobní kódovací bootcamp. Existuje však mnoho různých online tříd, které vyučují stejné programovací jazyky, a může být obtížné zjistit, která z nich skutečně stojí za váš čas a peníze.

Pokud vám nevadí cvičit sólo, podívejte se na projekt Odin, bezplatná možnost, která spojuje nejlepší obsah s otevřeným zdrojovým kódem pro přeměnu kódujícího nováčka na programátora.

Chcete více koučování a přípravy na kariéru, aniž byste museli dělat bootcamp na plný úvazek? Zkuste se přihlásit k předplatitelským certifikačním kurzům od Udacity nebo Treehouse, kde máte příležitost požádat o pomoc školitele namísto toho, abyste sami utrpěli chyby při kódování nebo dotazy. Nemůžete dělat mnohem lépe, než 19 kódovacích kurzů od Udemy (ještě méně, když je prodej) - každý den se studenti denního studia bootcamp a informatiky na tyto třídy přihlásí, aby doplnili své učení.

Bez ohledu na to, kolik kurzů absolvujete, pro mnoho začátečníků je stále obtížné aplikovat jejich relativně základní znalosti. Za tímto účelem mnozí doporučují bezplatný kurz praktického JavaScriptu od Watch and Code, který se točí kolem jednoho projektu, který neustále opakujete.

Zaměřte se na učení výpočetního myšlení

Místo toho, abyste se soustředili na učení konkrétního programovacího jazyka, můžete se také naučit způsobem, kterému bude počítač rozumět. Jinými slovy, zdokonalte své dovednosti v pojmech, jako je rozpoznávání vzorů, algoritmy a abstrakce. K dispozici jsou také žargony, jako smyčky, které se musí objevit v jakémkoli jazyce, který používáte. Čím lépe porozumíte těmto principům, tím snazší bude naučit se další jazyk (a v důsledku toho navrhnout lepší produkty nebo projekty).

Díky internetu se nemusíte zapisovat do čtyřletého vysokoškolského studia, abyste se naučili základům informatiky; řada vysokoškolských kurzů je k dispozici online zdarma (nebo za nominální poplatek).

Nemohu doporučit Harvardův CS50x Úvod do informatiky. Kurz můžete bezplatně auditovat prostřednictvím edX a získat certifikát dokončením všech úkolů, nebo můžete jít vlastním tempem a sledovat všechny přednášky zveřejněné na Youtube. S tímto výběrem z patnácti online kurzů (z nichž mnohé jsou také uvedeny v naší sérii Goldavelez.com U) si můžete vytvořit svůj vlastní počítačový program na vysoké škole pro kutily.

Získejte knihu

Nejlepší způsob, jak se naučit kódovat, může zahrnovat to, abyste se seznámili s některými mrtvými stromy - skutečnou knihu, kterou můžete sledovat od začátku do konce. V dokonalém světě vám to poskytne komplexnější úvod do kódování, než přeskakování z jednotlivých témat na webové stránky.

Pravděpodobně najdete e-knihu pro jakýkoli jazyk nebo rámec, který se pokoušíte naučit na GitHubu, ale mnoho vývojářů webu přísahá na pestrou sérii Jon Duckett na všem, od vývoje front-to-end.

Jako programátor, který se učí samostatně, můžete mít také prospěch z knih, které nabízejí širší poradenství v oboru. Zlepšíte své myšlení a návyky, vlastnosti, které můžete použít pro jakýkoli jazyk, který se rozhodnete naučit. Steve McConnell je 900stránkový kód dokončen: Praktická příručka konstrukce softwaru (2. vydání) je považována za definitivního průvodce nejlepšími postupy s radami založenými na údajích o všem od návrhu projektu po ladicí kód.

Důsledkem toho monstrum je Čistý kód: Příručka agilního softwarového řemesla od „strýčka Boba“ Roberta Martina. Martin věří, že kód by měl být efektivně napsán pro snadné testování a škálovatelnost, což z něj činí mnoho moderních dev týmů.

Protože programování je opravdu o řešení problémů, oceníte myšlenkový proces a řešení „zadní strany obálky“, které Jon Bentley sdílí v Programming Pearls (2. vydání). Každá kapitola končí řadou výzev, které se často používají při technických pohovorech, a proto tuto knihu udělejte jako součást přípravy na zaměstnání.

Podívejte se na některé interaktivní návody nebo kódovací hry

Přiznejme si to: čtení řádků kódu na obrazovce nebo v knize může vypadat jako blábol. Když vidíte příklad v akci, tento abstraktní koncept najednou dává dokonalý smysl. To je krása interaktivních výukových programů, které můžete najít na webu.

Například FreeCodeCamp nejen rozděluje koncepty kódování na malé kousky ve vašem webovém prohlížeči, ale také spáruje každý koncept s příslušným cvičením, které musíte vyřešit před přechodem na další téma. Tímto způsobem nemůžete jen přeskočit dopředu na zábavné věci; web vás opravdu nutí k ladění kódu, jak se naučíte.

Kódovací hry jsou také zábavným způsobem, jak si nechat nohy při programování namočit. Pokud máte hodinu zabít, můžete vyzkoušet jednoduché hry Hodina kódu. Mnoho škol navíc již používá Minecraft: Educational Edition k výuce základů programování dětí pomocí kódovacích bloků a dokonce i JavaScriptu. (Tuto verzi Minecraft si můžete zdarma stáhnout, pokud máte účet Office 365 Education.)

Chcete složitější tutoriál pro vývoj her, který můžete dát na svůj životopis? CodinGame může být vhodnější pro věk, pokud se necítíte jako děrování bloků po celý den.

Vyzkoušejte dětskou hračku

Kdo říká, že se dospělí nemohou poučit ze stejných hraček a videoher STEAM / STEM, které přimějí děti, aby se zapojily do kódování? Tyto výrobky jsou koneckonců navrženy tak, aby učily kódovací logiku a syntaxi, aniž by se nudily snadno rozptýlené děti, takže i dospělé kodéry by je mohly najít zábavné a vzdělávací.

Pokud chcete lépe porozumět vztahu mezi hardwarem a softwarem, pak si užijete sadu Piper Computer Kit 2, která staví počítač s Raspberry Pi. Pomocí tohoto kutilského notebooku se můžete naučit kódovat prostřednictvím svých vlastních úkolů v Minecraft Story Mode, pomocí drag-and-drop blockly jazyka se učit fyzickou práci s počítačem, nebo si jen vybrat některé základní Python z předinstalovaných lekcí.

I když pravděpodobně nebudete moci vytvořit svůj vlastní droid BB-8, můžete se naučit kódovat jeden pomocí Sphero's BOLT. Pomocí doprovodné aplikace můžete ovládat svoji droidskou kouli pomocí drag-and-drop kódovacích bloků s názvem Scratch nebo úrovní až po JavaScript, abyste mohli naprogramovat pokročilejší pohyby.

Naučte svá oblíbená zařízení (a pomocníky) nové triky

Máte chytré zařízení, jako je Amazon Echo? Vaše dovednosti v oblasti kódování můžete vyzkoušet vytvořením přizpůsobených mini-programů, které vám pomohou získat více funkcí z digitálních asistentů vašich zařízení. Amazonská Alexa už možná zná mnoho základních „dovedností pro hlasové příkazy“, jako je čtení nejnovějších titulků zpráv, ale její složitější úkoly můžete naučit pomocí kódování v Node.js, Java, Python, C # nebo Go. (Nebo, pokud chcete začít s něčím jednodušším, zkuste jednodušší stránku s modrými dovednostmi Alexa.)

Je možné, že váš zájem o kódování je omezenější - možná se budete chtít jen naučit dost Pythonu, aby vaše Raspberry Pi udělalo skvělé projekty. Pokud ano, můžete si procvičit DIY přístup tím, že se podíváte na mnoho projektů, které ostatní sdílejí na jeho webových stránkách.

Obnovením stávajících projektů se dozvíte více o vnitřním fungování vašeho vysoce přizpůsobitelného zařízení. Možná se dokonce ocitnete inspirováni k vytváření nových způsobů, jak používat svůj mini-počítač a ponořit se dále do světa kódů. (Můžete se dokonce přihlásit do třídy Raspberry Pi Platform UC Irvine a Python Programming do třídy Raspberry Pi Platform prostřednictvím Coursera, pokud chcete trochu pomoci, jak začít.)

Podívejte se na videa o kódování

Někdy je prostě snazší sledovat, jak někdo ukazuje, jak se to dělá. V dnešní době najdete nejrůznější vzdělávací videa o tématech souvisejících s kódováním: bývalí spolupracovníci společnosti Google, kteří sdílejí řešení kódovacích rozhovorů, YouTubers živí své kódovací maratony a dokonce programovací veteráni vám ukážou, jak vyřešit konkrétní chybu v jakémkoli jazyce, který chcete.

Doporučuji podívat se na kanál CS Dojo, TheNetNinja a kanál Har50 na YouTube CS50. Pokud nemáte čas hledat dokonalé kódovací video nebo kanál, můžete se také podívat na rozsáhlou videotéku LinkedIn Learning, kde najdete prověřené a profesionálně vypadající návody. I když poplatek za předplatné služby 30 $ / měsíc není k ničemu, můžete se dívat na neomezené množství obsahu a témat. Díky tomu se LinkedIn Learning učí mnohem lépe než jiné on-line kurzy, které přicházejí s nepříjemnými omezeními.

Praxe s osobními projekty

Nezáleží na tom, kolik certifikátů a kódovacích seminářů absolvujete, nebo kolik programovacích jazyků se naučíte, vaše kódovací dovednosti budou ve vašem programovacím projektu. I když váš osobní projekt nemusí být tak ambiciózní jako vytváření dalších Map Google, mělo by být něco, na čem byste chtěli pracovat 24/7, aby se neustále zlepšoval a rozšiřoval jeho rozsah.

Začněte malý, ale přemýšlejte velký. Váš projekt by měl zahrnovat dovednosti, které v současné době máte v sadě nástrojů, ale měli byste mít také plán budoucích funkcí a dovedností, které potřebujete, aby se tato vize proměnila ve skutečnost. Bez použití vašich kódovacích dovedností v několika projektech byste nebyli dokonce považováni za profesionální programovací koncerty - začněte tedy plánovat a cvičit. (Naše rada? Pomocí kódovacích kotletů vytvořte úžasné nastavení pro herní noc.)

Oslavte malá vítězství

Kódování je v detailech, a proto je třeba „oslavovat malá vítězství“, jak to řekl jeden z našich profesorů programování. Praxe vyžaduje, aby každý prvek fungoval samostatně, a také stálé testování, aby se zajistilo, že každý řádek kódu bude fungovat se všemi ostatními - bez chyb. Pokud neděláte zdánlivě malé věci, jako je uzavření značky HTML, měli byste uvíznout v ladění jednoduché chyby syntaxe, než psát působivější a složitější kód.

Musíte být trpěliví se sebou; nečekejte, že kód příští už po několika měsících studia nebo po několika bootcampech. Kódování bezchybného svatebního formuláře RSVP na webové stránce nebo vytvoření jednoduché, ale přesto správné hry pro predikci čísel je již pro začátečníka významným úspěchem. Pokud uvíznete, nevzdávejte to. Měli byste absolutně hledat pomoc všude, kde ji najdete, ale také vědět, kdy si dát pauzu, abyste se vyhnuli vyhoření. A pak to zkuste znovu.

Google vaše chybové zprávy

Toto je naše nejlepší rada ohledně kódování: Pokud nemůžete zjistit, proč je váš kód rozbitý, můžete vždy hledat řešení online. Pravděpodobně nejste první, kdo udělal svou chybu, po tom všem, a někdo na internetu již jistě našel řešení vašeho problému. Stačí „zkopírovat a vložit“ svou chybovou zprávu do Googlu (nebo upřednostňovaného vyhledávače), přidat celou uvozovku kolem celé fráze tak, abyste nejen hledali klíčová slova, a pak stiskněte „Enter“. Doufejme, že tento malý trik vás dovede ke správné odpovědi.

Pokud máte stále problémy, vždy můžete svůj dotaz zveřejnit na fórech vývojářů, jako je Stack Overflow, Redditova programová subreddit nebo GitHub. Nikdy neuškodí telefonovat příteli - nebo cizímu internetu.

Zasekněte někdo jiný kód

Když změníte kód někoho jiného a testujete každý řádek, abyste viděli, jak to funguje, získáte lepší představu o velkém obrazu. Díky tunám a tunám open-source kódu, který je tam venku, se můžete dozvědět téměř cokoli tím, že prozkoumáte něčí (bezchybnou) práci někoho jiného. Nezapomeňte se podělit o svůj kód zpět s komunitou, pokud vás napadne inspirace a vylepšíte část programu, se kterým jste se hráli.

Získejte mentora (nebo učte někoho jiného)

Programovací komunita je plná lidí, kteří jsou ochotni pomoci další generaci programátorů. GitHub, online hangout pro vývojáře, kteří používají Git ke správě svých kódovacích projektů, je navržen pro online spolupráci. Vývojáři nejenže hostují a sdílejí své projekty se svými vrstevníky, ale také poskytují zpětnou vazbu a obecné rady komunitě.

Možná budete moci najít nějaké užitečné online mentory prostřednictvím GitHubu nebo se setkat s dalšími veteránskými vývojáři na místní kódovací události Meetup nebo hackathonu. Jakmile získáte nějaké zkušenosti s programováním, možná budete moci odpovědět na otázky jiných lidí nebo dokonce naučit to, co jste se naučili nováčkům - skvělý test, abyste zjistili, zda opravdu znáte své věci.

Zúčastněte se kódovacího bootcampu

Kódování bootcampů může být kontroverzní: Poskytnou vám rychlý úvod a zkušenosti se spoustou dovedností, ale nemusí to být váš zlatý lístek na zcela novou práci Google.

Pokud chcete jít profesionálním vývojářem a stát se vývojářem na plný úvazek, může vám pomoci intenzivní a osobní kódovací bootcamp, zejména pokud se ve strukturovaném prostředí naučíte nejlépe, aby vás motivovali skuteční lidé. Tyto typy bootcampů jsou však často nejdražší a nejnáročnější na návštěvu: na výuku se díváte nahoru o 15 000 $ plus životní náklady za několik měsíců, dokud nezačnete promoci.

Naštěstí instituce jako Flatiron School a The Grace Hopper Program nabízejí stipendia nebo odložené vyučování, aby tyto bootcampy byly dostupnější pro nedostatečně zastoupené skupiny, jako jsou menšiny a ženy v technice. Podívejte se na zprávu o kurzu, kde najdete komplexní přehled mnoha online a osobních bootcampů - včetně podrobných recenzí z jejich kamenných kamenů, které vám mohou pomoci rozhodnout, zda bootcamp vám pomůže dosáhnout vašich programovacích snů.