Kuidas ma läksin täiesti algajast tarkvaraarendajaks - ja kuidas saate ka teie

Kaks aastat tagasi olin ma täpselt seal, kus sa täna oled.

Tahtsin saada professionaalseks programmeerijaks. Kuid mul polnud aimugi, kuidas seda ellu viia.

Mul polnud kolledži kraadi, varasemat kodeerimiskogemust ja ma imesin matemaatikat.

Ja tekkis näriv kahtlus: kas minusugusest saab arendaja?

Noh, ma panin selle teoks. Mul on oma unistuste töö. Olen tarkvaraarendaja.

Minult küsitakse sageli, kuidas mul see õnnestus.

Siin on kolm olulist toimingut, mille ma tegin ja mis aitas mul minna täiesti algajast tarkvaraarendajaks.

1. Koostage oma tegevuskava

Suurim viga, mida arendajad soovivad teha, on see, et neil pole plaani.

Teekaarti pole.

Kui sul pole plaani, tunned end kaotsi. Võtate kodeerimise õpetused, võib-olla ehitate projekti või kaks. Siis mööduvad kuud. Mõtled, kas minust saab kunagi arendaja? See kõik on nii segane . Teil pole aimugi, millist teed minna.

Lahendus? Koostage tegevuskava - kohe. Looge plaan, kuidas täpselt saate arendajaks.

Esimene samm: otsustage, kas kavatsete teha kodeeriva alglaadimise või osalete veebikursustel.

Minu jaoks otsustasin bootcampis mitte käia. Lõin oma õppekava ja õpetasin endale kõike.

Kuna olin suureks kasvanud koduõppega, oli mul mugav iseseisvalt õppida, seega otsustasin õpetada ennast kodeerima, kasutades erinevaid veebikursusi alates freeCodeCampist kuni Udacityni.

See lähenemine maksab palju vähem kui alglaadur, kuid sellel oli ka varjukülg: mul ei olnud kodeerimismentoreid ega õppekava, mida järgida. Veebiressurssidest õppimine tähendab, et te ei maksa midagi või maksate väga vähe, kuid nagu ma avastasin, pole teil palju tuge. Ja te rabelete omaette nagu mina.

Inimesi tõmbab õppima veebiressurssidest kodeerimist õppima nagu mina, kuid see pole alati parim viis. Madal hind on suur eelis, kuid veenduge, et suudaksite iseseisvalt hästi õppida ja suudaksite ennast vastutada - ilma palju juhendamist ja tuge kasutamata.

Bootcamps on kallid, kuid sageli on neil palju rohkem tuge ja vastutust.

Otsustage hoolikalt, milline tee on teie jaoks parim.

Kui õpid kodeerima ilma alglaagrita, soovitan valida taskukohase veebiprogrammi, millel on vähemalt mõni juhendamine ja õppekava. Nii toimides saate vähem vaeva ja saate vajalikku tagasisidet. Udacity nanokraadid ja Treehouse'i tehnokraadid pakuvad mõningaid juhendamise ja koodide ülevaatusi.

Kui otsustate õppida tasuta kodeerima, on freeCodeCampi õppekava fantastiline ja kui nende kogukonnas osalete, saate sellega suurepäraselt hakkama.

Kui olete oma tee valinud, täitke oma tegevuskava vastates järgmistele küsimustele:

  • Kas ma tahan saada täispika, esiosa või taustaprogrammi arendajaks? Otsustage, millele keskendute õppimisele. Tea, millist keelt ja raamatukogusid peate õppima.
  • Mitu tundi nädalas ma õpin ja millal? Pange tähele nädala kellaaegu, kus harjutate kodeerimist, ja ärge jätke neid õppeaegu vahele.
  • Mis kuupäeval hakkan tööle kandideerima ? Määrake avalduse esitamise tähtaeg.
  • Millest ma loobun ? On fantastiline kujutada ennast arendajana töötades, kuid tee sinna jõudmiseks tähendab varahommikuid, nädalavahetusi ja hilisõhtut rasket tööd.

Ole realistlik: vaadake, millele te igal nädalal aega kulutate, ja loobuge ühest asjast. Minu jaoks ei olnud ma nõus loobuma oma perega ajast, kuid otsustasin loobuda sõpradega hängimisest. Enamikul laupäeviti jäin selle asemel, et veeta sõpradega aega nagu tavaliselt, kodus ja programmeerida.

Teekaardi koostamisel pidage meeles: vastupidiselt paljudele nähtud turundushüppele pole maagilist kodeerimiskursust, maagilist programmi ega maagilist alglaadimist, mis teid arendajaks muudaks. Paljud inimesed küsivad minult, millist veebikursust õppisin kodeerima, nagu oleks olemas üks “kuldne pilet”, mis muudab teid arendajaks.

Ei ole.

Ainult sina saad teha endast arendaja.

Teie rämpsus ja otsusekindlus viivad teid sinna. Kuid arendajaks kodeerimise õppimiseks kasutasin ka mängu muutvat meetodit.

Mis see oli?

2. Treeni oma tähelepanu.

Kõigile on saadaval miljon tasuta kodeerimiskursust.

Kui tasuta kodeerimiskursustele on nii lihtne juurde pääseda, siis miks on nii raske õppida kodeerimist? Miks on arendajaks saamine nii raske?

Kuna paljud meist ei tea programmeerimiskeelte õppimiseks ja valdamiseks vajalikke elutähtsaid oskusi. Seda oskust nimetatakse süvatööks, mille on populariseerinud arvutiteadlane Cal Newport.

TL; DR : Raskete asjade õppimiseks peate pika aja jooksul intensiivselt keskenduma . See on sügav töö.

Kuid enamik meist tapavad aktiivselt keskendumisvõimet ja vähesed inimesed teevad sügavat tööd.

Mõelge sellele, kui viimati järjekorras seisite. Kui palju aega möödub, enne kui tunnete sundi telefoni haarata ja märguandeid kontrollida? Või mis saab sellest artiklist endast - kas olete lugemise ajal uuele vahelehele üle läinud? Kas kontrollisite oma Twitteri kontot? ?

Täna on kuldkala tähelepanu tähelepanu normiks. Ja seetõttu on meil nii raske õppida keerukaid asju nagu kodeerimine. Kui olen selle välja mõelnud, mõistsin, et kui pühendun sügava töö tegemisele, võiksin õppida raskeid asju, mida ma arendajaks saamiseks pean teadma.

Koodile istudes seadke taimer 90 minutiks. Keskenduge kogu selle aja jooksul rakendusele, mida ehitate, või kodeerimisprobleemile, mida proovite lahendada. Ärge kontrollige oma märguandeid. Ärge avage uut vahelehte. Kui avastate end unistamas, viige oma tähelepanu kodeerimisele kiiresti tagasi.

Treeni oma tähelepanu nii, nagu su tulevane karjäär sellest sõltub - sest nii see ka on.

Ilma sügava töö harjutamiseta poleks ma täna arendaja.

3. Jälgi oma uudishimu.

Kui enamik inimesi kavatseb kodeerima õppida, alustavad nad õppekava asjadest, mida nad peaksid "teadma".

Siis on neil igav. Täpselt nagu koolis, kui õpite uusi asju ainult sellepärast, et peaksite neid õppima, kuid te ei tea, miks peate neid õppima või miks te üldse hoolite. Huvi kaotamine on lihtne.

Kodeerimise õppimiseks leidke programmeerimise kohta üks asi, mis teile põnev on. Leidke asi, mis muudab teid piisavalt uudishimulikuks, et sellest laupäeva õhtul teada saada - sest peate seda mõnikord tegema.

Alice Imedemaal on üks joon, mis mulle külge jäi:

Ta polnud kunagi varem näinud jänest, millel oleks olnud vesti tasku või käekell, millest seda välja võtta, ja põles uudishimust põgenedes sellele järele .

Kuna olen oma karjääri jooksul töötanud koos vanemate arendajatega, olen aru saanud: parimad programmeerijad ei pea end alati rohkem õppima sundima. Nad õpivad alati, sest sarnaselt Alice'ile põlevad nad uudishimust .

Mõned proovivad kodeerida ühes keeles ja vihkavad seda, seejärel võtavad teise keele ja armastavad seda. Proovige kindlasti erinevaid programmeerimiskeeli ja õppige programmeerimise eri valdkondade kohta, et teada saada, mis teie uudishimu tekitab.

Kui olete mitu korda proovinud kodeerimist õppida erinevate nurkade alt ja tunnete endiselt, et sunnite ennast, siis ei pruugi kodeerimine olla teie jaoks. Vastupidiselt enamiku alglaagrite turundusmaterjalidele pole enamiku jaoks reaalsus kolme kuu jooksul kodeerimise õppimine ja 100 000 dollari suuruse tööpakkumise maandumine. Kodeerimine ei ole kiire rikastumise skeem. Ärge õppige kodeerima, kui teil on sellest igav, sest jääte ilma, et leida, mis on teie tegelik uudishimu elus. Kui olete aga huvitatud tehnikast, kuid mitte kodeerimisest, on teil palju muid uskumatuid ja nõutavaid oskusi, mida saate õppida: disain, andmeanalüüs ja palju muud.

Kui teil on uudishimu programmeerimise vastu, jälitage seda. Mida rohkem te oma uudishimu taga ajate, seda rohkem seda teil on. Ja samal ajal, kui jälitate oma uudishimu, ärge muretsege selle pärast, kust tulete. Ärge muretsege CS-kraadi puudumise või selle taga.

Sõltumata teie vanusest, kraadi puudumisest või varasemast kogemusest, võite saada professionaalseks arendajaks, kui teile meeldib kodeerida, harjutada sügavat tööd ja seada õppimine oma elu prioriteediks.

Isegi kui olete täiesti algaja.

Alustage kohe.

Kui teile see lugu meeldis, hoidke palun? nuppu! Minuga ühenduse hoidmiseks registreeruge oma uudiskirja saamiseks, kus jagan näpunäiteid kodeerimise õppimise ja tasuta kodeerimiskursuse jagamise kohta.