zanimivo

Najboljši načini, da se naučite kode

Foto: Christopher Gower (Unsplash)

Če se želite naučiti kodiranja, se vam lahko prvi koraki v to ogromno vesolje zdijo strašljiva, če že ne zastrašujoča naloga. Tu je velika skrivnost: Obstaja ogromno brezplačnih (in poceni) virov, s katerimi si lahko sami zagotovite vso potrebno pomoč, se naučite novih tehnik in naredite ta učni proces zabaven in vznemirljiv - vsaj tako razburljivo kot kodiranje lahko postanete .

Ne glede na to, ali ste odrasli, ki želi prehod na tehnološko industrijo, študent, ki se želi naučiti najnovejši jezik, ali hobi, ki želi samo razumeti, kako delujejo programska oprema in storitve, za začetek programiranja potrebujete le računalnik in dostop do interneta. potovanje. Preden pa začnete leteti skok, so tu naši najboljši nasveti in viri, s katerimi se lahko postavite na pravo nogo.

Vprašajte se: Zakaj se želite naučiti kodiranja?

Vzemite si nekaj minut (ali en dan), da razmislite o razlogih - razlogih - zakaj se želite naučiti programskega jezika. Bodite iskreni do sebe. Se poskušate naučiti najnižjega minimuma, da bi dosegli napredovanje? Se želite prilagoditi karieri? Ali želite ustvariti naslednjo največjo aplikacijo? Navdušite svoje sostanovalce s programiranjem različnih pametnih naprav, da naredijo nekaj čudovitega?

Vaš odgovor vam bo pomagal določiti, kateri programski jezik bi morali obvladati, in kakšno zavezanost (v času in denarju) lahko zahteva vaš cilj. Če na primer sanjate, da bi ustvarili naslednji odličen operacijski sistem ali morilsko alternativo PhotoShopu, bi imeli koristi formalno izobraževanje iz računalništva, ki vas uči C ++, pa tudi bolj zapletene teme, kot so struktura podatkov, algoritmi in razporeditev pomnilnika.

Po drugi strani pa, če ste poklicni delavec v srednji karieri, ki išče prehod na tehnološko kariero, bi lahko imel kratkotrajni bootcamp bolj smiselno kot dolgovanje za drugo stopnjo. Če želite samo ustvariti spletna mesta ali potisniti svoj Raspberry Pi do svojih meja, bo morda dovolj kombinacija interaktivnih vadnic in brezplačnih spletnih tečajev.

Izberite pravi programski jezik

Ko ugotovite, zakaj želite kodirati, lahko lažje določite, kateri programski jezik se morate lotiti. Medtem ko ni enega samega "najboljšega" programskega jezika za učenje, so nekateri jeziki prijaznejši kot drugi. HTML in CSS veljata za najlažji vstopni točki v svet kodiranja, vendar sta resnično uporabna samo za razvoj osnovnih spletnih mest.

Za bolj interaktivna spletna mesta, ki vključujejo plačilne sisteme ali baze podatkov, boste morali vedeti Javascript, PHP, SQL in Python, da bodo vse komponente pele. Proizvajalci mobilnih aplikacij uporabljajo Swift ali C za izdelavo iOS aplikacij, Java ali Kotlin pa za aplikacije Android. Razvijalci video iger se bodo obrnili na Unity ali celo na C #, da bodo oživeli svoje ideje za igre.

Še vedno se ne morete odločiti za programski jezik zaganjalnika? Večina strokovnjakov priporoča učenje Python, C # ali JavaScript, saj nudijo najširšo uporabnost in prilagodljivost kariere. Za lažjo odločitev si oglejte to odlično infografiko, ki primerja nekaj priljubljenih programskih jezikov.

Predvsem pa začnite z učenjem. Ko se boste spoprijeli z enim programskim jezikom, boste lahko mnogo hitreje izbrali naslednjega - kot je učenje novega glasbila ali tujega jezika.

Preizkusite nekaj spletnih tečajev

Če želite več nadzora nad svojim učnim urnikom (ali ne želite, da bi se ga lotili sami), bi bil lahko spletni tečaj kodiranja boljša možnost kot osebni kodni bootcamp. Vendar pa obstaja veliko različnih spletnih razredov, ki poučujejo iste programske jezike, in težko je ugotoviti, kateri je resnično vreden vašega časa in denarja.

Če vas ne moti prakticiranje solo, si oglejte projekt Odin, brezplačno možnost, ki združi nekaj najboljših odprtokodnih vsebin za pretvorbo kodiranega novinca v programerja.

Si želite več treningov za osebne treninge in karierne priprave, ne da bi se ukvarjali s polnim delovnim kampom? Poskusite se prijaviti na tečaje certificiranja za naročniški model iz Udacityja ali Treehousea, kjer boste lahko vprašali mentorja za pomoč, namesto da bi sami trpeli napake ali vprašanja. Ne morete narediti veliko boljšega od 19 dolarskih kodirnih razredov iz Udemyja (še manj, ko je prodaja) - na te tečaje se vpišejo tudi študenti s polnim delovnim časom in računalniki, ki dopolnjujejo učenje.

Ne glede na to, koliko tečajev zaključite, mnogi začetniki še vedno težko uporabljajo svoje relativno osnovno znanje. V ta namen mnogi priporočajo brezplačen praktični JavaScript tečaj Watch in Code, ki se vrti okoli enega samega projekta, ki ga nenehno ponavljate.

Osredotočite se na učenje računalniškega razmišljanja

Namesto da bi se lahko osredotočili na učenje določenega programskega jezika, se ga lahko naučite tudi na način, ki ga bo računalnik razumel. Z drugimi besedami, izboljšajte svoje spretnosti pri konceptih, kot so prepoznavanje vzorcev, algoritmi in abstrakcije. Obstaja tudi lingo, kot so zanke, ki se bodo pojavljale v katerem koli jeziku, ki ga uporabljate. Bolj kot razumete ta načela, lažje se boste naučili naslednjega jezika (in kot rezultat oblikovali boljše izdelke ali projekte).

Zaradi interneta vam ni treba vpisovati v štiriletni univerzitetni program, če želite spoznati osnove računalništva; na spletu so na voljo številni razredi na visoki šoli brezplačno (ali nominalna pristojbina).

Harvardovega CS50x Uvoda v računalništvo ne morem dovolj priporočiti. Tečaj lahko brezplačno pregledate prek edX in si priskrbite certifikat, tako da izpolnite vse naloge ali pa greste v svojem tempu in si ogledate vsa predavanja, objavljena na Youtube. S tem izborom petnajstih spletnih tečajev (mnogi izmed njih so navedeni tudi v naši seriji Goldavelez.com U) lahko zgradite svoj lastni program računalniškega izobraževanja na fakulteti.

Pridobite knjigo

Najboljši način, da se naučite kodirati, lahko vključuje, da se boste približali nekaj mrtvih dreves - resnično knjigo, ki ji lahko sledite od začetka do konca. V popolnem svetu vam bo to omogočilo celovitejši uvod v kodiranje kot skakanje iz teme v temo na spletnem mestu.

Verjetno lahko najdete e-knjigo za kateri koli jezik ali okvir, ki se ga želite naučiti na GitHubu, vendar mnogi spletni razvijalci prisegajo na barvito serijo Jon Ducketta o vsem, od naprednega do zadnjega spletnega razvoja.

Kot programer samouk bi vam lahko koristile tudi knjige, ki ponujajo širše nasvete o poklicu. Izboljšali boste svoje mišljenje in navade, lastnosti, ki jih lahko uporabite v katerem koli jeziku, za katerega se odločite, da se ga boste naučili. Dopolnjena koda Steve McConnell na 900 straneh: Praktični priročnik za gradnjo programske opreme (2. izdaja) velja za dokončen vodnik za najboljše prakse z nasveti, podprti s podatki, o vsem, od zasnove projekta do odpravljanja kod.

Posledica tega behemota je Clean Code: Priročnik agilne izdelave programske opreme „Stric Bob“ Robert Martin. Martin verjame, da je treba kodo učinkovito napisati za enostavno testiranje in razširljivost, zato je to potrebno za branje številnih sodobnih razvojnih skupin.

Ker programiranje resnično pomeni reševanje problemov, boste cenili miselni proces in rešitve "hrbtne ovojnice", ki jih Jon Bentley deli v programu Programming Pearls (2. izdaja). Vsako poglavje se konča s številnimi izzivi, ki jih pogosto uporabljamo pri tehničnih razgovorih za zaposlitev, zato naj bo ta knjiga del vaše službene službe.

Oglejte si nekaj interaktivnih vadnic ali iger za kodiranje

Sprijaznimo se: branje vrstic kode na zaslonu ali v knjigi je lahko videti brezskrbno. Ko vidite primer delovanja, ta abstraktni koncept nenadoma postane popoln smisel. To je lepota interaktivnih vadnic za kodiranje, ki jih najdete po spletu.

Na primer, FreeCodeCamp ne samo razčleni koncepte kodiranja na majhne koščke v vašem spletnem brskalniku, ampak tudi poveže vsak koncept z ustrezno vajo, ki jo morate rešiti, preden se premaknete na naslednjo temo. Tako ne morete samo preskočiti naprej do zabavnih stvari; spletno mesto res prisili, da odpravite kodo, ko se naučite.

Igre kodiranja so tudi zabaven način, da se noge zmotijo ​​pri programiranju. Če imate uro za umor, lahko poskusite preproste igre Hour of Code. Poleg tega številne šole že uporabljajo Minecraft: Educational Edition, da otroke naučijo osnov programiranja s kodnimi bloki in celo JavaScriptom. (Če imate račun za Office 365 za izobraževanje, lahko brezplačno prenesete to različico Minecraft.)

Želite bolj zapleteno vadnico o razvoju iger, ki jo lahko dodate v življenjepis? CodinGame je morda bolj primerna starosti, če se vam ne bo zdelo, da bi ves dan trkali v bloke.

Poskusite otroško igračo

Kdo pravi, da se odrasli ne morejo učiti iz istih igrač STEAM / STEM in video iger, s katerimi se otroci kodirajo na kodiranje? Navsezadnje so ti izdelki zasnovani za učenje logike in sintakse kodiranja, ne da bi se dolgočasnim otrokom zlahka motili, zato bi jih celo odrasli kodri lahko našli zabavne in poučne.

Če želite bolje razumeti razmerje med strojno in programsko opremo, potem boste uživali v Piper Computer Kit 2, na katerem ste nastavili računalnik, ki poganja Raspberry Pi. S pomočjo tega prenosnega računalnika se lahko naučite kodirati prek svojih izzivov v načinu Minecraft Story Mode, uporabljati jezik povleci in spusti Blockly, da se naučite fizičnega računanja, ali pa preprosto poberete nekaj osnovnega Pythona iz predhodno nameščenih lekcij.

Čeprav verjetno ne boste mogli ustvariti lastnega droida BB-8, se ga lahko naučite kodirati s Spherovim BOLT-om. S pomočjo spremljevalne aplikacije lahko nadzirate droidno kroglico s kodnimi bloki povleci in spusti, imenovani Scratch, ali dvignite nivo do JavaScript, da programirate naprednejše poteze.

Naučite svoje najljubše naprave (in pomočnike) novih trikov

Imate pametno napravo, kot je Amazon Echo? Svoje sposobnosti kodiranja lahko preizkusite tako, da ustvarite prilagojene mini programe, da iz digitalnih pomočnikov svojih naprav pridobite več funkcionalnosti. Amazonova Alexa lahko že pozna številne osnovne "govorne ukaze", kot je branje najnovejših naslovov novic, vendar jo lahko naučite bolj zapletene naloge s kodiranjem v Node.js, Java, Python, C # ali Go. (Ali, če želite začeti z nečim preprostejšim, poskusite s preprostejšim spletnim mestom Alexa spretnosti.)

Mogoče je, da je vaše zanimanje za kodiranje bolj omejeno - morda bi se radi naučili dovolj Python-a, da bi na primer vaši Raspberry Pi naredili kul projekte. V tem primeru lahko pristopite k učenju tako, da preverite številne projekte, ki jih drugi delijo na svojem spletnem mestu.

Z poustvarjanjem obstoječih projektov boste izvedeli več o notranjem delovanju vaše zelo prilagodljive naprave. Morda se boste morda navdihnili za ustvarjanje novih načinov za uporabo mini-računalnika in se poglobili v svet kode. (Če se želite malce odpraviti do pomoči, se lahko vpišete v platformo Raspberry Pi in program za programiranje Python v programu UC Irvine za program Coursera, če želite malo pomoči.)

Oglejte si videoposnetke o kodiranju

Včasih je preprosto lažje gledati, kako vam nekdo pokaže, kako je to storjeno. Dandanes najdete vse vrste izobraževalnih videov o skoraj vseh temah, povezanih s kodiranjem: nekdanji Googlovi partnerji, ki delijo rešitve za kodiranje intervjujev, YouTubers v živo prenašajo svoje kodirne maratone in celo veterane programiranja, ki vam pokažejo, kako odpraviti določeno napako v katerem koli jeziku, ki ga želite.

Priporočam, da preverite CS Dojo, TheNetNinja in Harvard's CS50 YouTube kanal. Če nimate časa iskati popolnega kodirnega videa ali kanala, si lahko ogledate tudi veliko knjižnico videoposnetkov LinkedIn Learning za preverjene in strokovno videti vaje. Medtem ko 30-mesečno naročnino na storitev ni treba prizanesti, si lahko ogledate neomejeno količino vsebine in tem, s čimer LinkedIn Learning ponuja boljše ponudbe kot drugi spletni razredi na zahtevo, ki imajo moteče omejitve.

Vadite z osebnimi projekti

Ne glede na to, koliko certifikatov in delavnic kodiranja zaključite ali koliko programskih jezikov se naučite, bo dokaz o vaših sposobnostih kodiranja v vašem programskem projektu. Čeprav vaš osebni projekt ne bi smel biti tako ambiciozen kot ustvarjanje naslednjih Google Zemljevidov, bi morali delovati 24/7, da bi nenehno izboljševali in širili njegovo področje uporabe.

Začnite majhni, vendar mislite veliko. Vaš projekt mora vključevati veščine, ki jih trenutno imate v svojem orodjarju, vendar bi morali imeti tudi načrt prihodnjih funkcij in veščin, ki jih boste potrebovali, da to vizijo spremenite v resničnost. Brez uporabe veščin kodiranja v nekaj projektih vas sploh ne bi šteli za profesionalne igralske koncerte - zato začnite načrtovati in vaditi. (Naš nasvet? Uporabite svoje kodirne koščke, da sestavite neverjetno namestitev za igro noč.)

Praznujte male zmage

Kodiranje je vse v podrobnostih, zato morate "slaviti majhne zmage", kot je dejal eden izmed naših profesorjev programiranja. Potrebna je praksa, da vsak element deluje sam, pa tudi stalno testiranje, da se zagotovi, da bo vsaka vrstica kode delovala z vsemi ostalimi - brez napak. Če na videz ne počnete manjših stvari, kot je zapiranje oznake HTML, bi odpravljali napako v preprosto sintaksično napako, namesto da bi pisali bolj impresivno in zapleteno kodo.

Morate biti potrpežljivi do sebe; ne pričakujte, da bo naslednjič kodiral le nekaj mesecev študija ali nekaj zagonskih kampov. Kodiranje poročnega obrazca RSVP brez napak na spletnem mestu ali izdelava preproste, vendar pravilne igre za napovedovanje številk je že pomemben dosežek za začetnika. Če se zataknete, ne obupajte. Vsekakor bi morali poiskati pomoč povsod, kjer jo lahko najdete, pa tudi vedeti, kdaj si morate vzeti odmor, da se izognete izgorelosti. In nato poskusite, poskusite znova.

Google sporočila o napaki

To je naš najboljši nasvet za kodiranje: Če ne morete ugotoviti, zakaj je vaša koda pokvarjena, lahko vedno poiščete rešitve na spletu. Navsezadnje niste prva oseba, ki se je zmotila, in nekdo na internetu je zagotovo že našel rešitev za vašo težavo. Preprosto "kopirajte in prilepite" sporočilo o napaki v Google (ali želeni iskalnik), dodajte par narekovajev okoli celotne fraze, da ne boste samo iskali ključnih besed, nato pritisnite "Enter". trik vas bo pripeljal do pravilnega odgovora.

Če imate še vedno težave, lahko svoje vprašanje vedno objavite na forumih za razvijalce, na primer Stack Overflow, Redditov programski podreddit ali GitHub. Nikoli ne škodi, da pokličete prijatelja ali internetnega neznanca.

Vdrite kodo nekoga drugega

Ko obrnete kodo nekoga drugega in preizkusite vsako vrstico, da vidite, kako deluje, dobite boljše razumevanje širše slike. Zahvaljujoč tonam in ton odprtokodne kode, ki je tam zunaj, se lahko naučite skoraj ničesar, če preučite delo nekoga drugega (brezhibno). Ne pozabite, da svojo kodo delite s skupnostjo, če navdihuje in če izboljšate del programa, s katerim ste se spopadali.

Pridobite mentorja (ali ga naučite nekoga drugega)

Programska skupnost je polna ljudi, ki so pripravljeni pomagati naslednji generaciji programerjev. GitHub, spletna klepetalnica Hangouts za razvijalce, ki uporabljajo Git za upravljanje kodnih projektov, je zasnovana za spletno sodelovanje. Razvijalci ne samo da gostujejo in delijo svoje projekte s svojimi kolegi, temveč tudi skupnost nudijo povratne informacije o kodi in splošne nasvete.

Preko GitHub-a boste morda našli nekaj koristnih spletnih mentorjev ali se srečali z drugimi veteranskimi razvijalci na lokalnem kodirnem dogodku Meetup ali hackathonu. Ko pridobite nekaj izkušenj s programiranjem, boste morda lahko odgovorili na vprašanja drugih ljudi ali celo naučili, kaj ste se naučili za novorojenčke - odličen preizkus, če želite resnično vedeti svoje stvari.

Udeležite se kodirnega zagonskega kampa

Kodiranje zagonskih kampov je lahko sporno: dali vam bodo hiter uvod in izkušnje z veliko spretnosti, vendar morda ne bodo vaša zlata vozovnica za povsem novo Googlovo službo.

Če želite iti profesionalno in postati programer za polni delovni čas, vam bo morda pomagal intenziven in osebni kodirni bootcamp, še posebej, če se v strukturiranem okolju z resničnimi ljudmi najbolje naučite, da vas motivirajo. Vendar so te vrste nakladalnih kampov pogosto najdražje in jih je treba časovno zahtevati: za samo šolanje gledate na 15.000 dolarjev in življenjske stroške nekaj mesecev, dokler ne diplomirate.

Na srečo ustanove, kot sta šola Flatiron in program Grace Hopper, ponujajo štipendije ali odloženo šolanje, da bi te zagonske kampe postale bolj dostopne za manj zastopane skupine, kot so manjšine in ženske v tehniki. Oglejte si Poročilo o tečajih za celovito razčlenitev številnih spletnih in osebnih zagonskih kampov - vključno s podrobnimi pregledi njihovih alumnov, s pomočjo katerih se boste lahko odločili, ali vam bo bootcamp pomagal doseči programske sanje.