Hvordan jeg gik fra komplet begynder til softwareudvikler - og hvordan du også kan

For to år siden var jeg lige der, hvor du er i dag.

Jeg ville blive en professionel programmør. Men jeg havde ingen idé om, hvordan jeg kunne få det til at ske.

Jeg havde ingen universitetsgrad, ingen tidligere kodningserfaring, og jeg sugede i matematik.

Og der var den nagende tvivl: Kan en som mig blive udvikler?

Jeg fik det til at ske. Jeg har mit drømmejob. Jeg er softwareudvikler.

Jeg bliver ofte spurgt, hvordan jeg gjorde det.

Her er de tre vigtige handlinger, jeg tog, som hjalp mig med at gå fra en komplet begynder til en softwareudvikler.

1. Byg din køreplan

Den største fejl, som håbefulde udviklere laver, er at de ikke har nogen plan.

Ingen køreplan.

Når du ikke har nogen plan, føler du dig tabt. Du tager kodningsvejledninger, måske bygger du et projekt eller to. Så går måneder. Tror du, vil jeg nogensinde blive udvikler? Dette er alt sammen så forvirrende . Du har ingen idé om, hvilken vej du skal tage.

Løsningen? Byg en køreplan - lige nu. Opret en plan for præcis, hvordan du bliver udvikler.

Dit første trin: Beslut om du vil lave en kodende bootcamp eller tage online kurser.

For mig besluttede jeg ikke at deltage i et bootcamp. Jeg lavede min læseplan og lærte mig selv ... alt.

Fordi jeg var hjemmeundervisning i min opvækst, var jeg komfortabel med at lære alene, så jeg besluttede at lære mig selv at kode ved hjælp af forskellige online kurser lige fra freeCodeCamp til Udacity.

Denne tilgang koster langt mindre end et bootcamp, men det havde en ulempe: Jeg havde ingen kodende mentorer eller kodende læseplaner at følge. At lære af online ressourcer betyder, at du ikke betaler noget eller meget lidt, men som jeg opdagede, har du ikke meget støtte. Og du vil kæmpe alene, som jeg gjorde.

Folk er tiltrukket af at lære at kode fra online ressourcer, som jeg gjorde, men det er ikke altid den bedste måde. De lave omkostninger er en stor fordel, men sørg for at du er i stand til at lære godt alene og kan holde dig selv ansvarlig - uden meget mentorskab eller support.

Bootcamps er dyre, men de kommer ofte med meget mere support og ansvarlighed.

Beslut omhyggeligt, hvilken vej der er bedst for dig.

Hvis du lærer at kode uden et bootcamp, foreslår jeg at vælge et overkommeligt online-program, der mindst har noget mentorskab og en læseplan at følge. Dette vil sikre, at du kæmper mindre og får den feedback, du har brug for. Udacitys nanodegrees og Treehouses techdegrees tilbyder nogle mentorskab og kodevurderinger.

Hvis du beslutter at lære at kode gratis, er freeCodeCamps læseplan fantastisk, og hvis du bliver involveret i deres samfund, vil du udmærke dig.

Når du har valgt din sti, skal du udfylde din køreplan ved at besvare disse spørgsmål:

  • Ønsker jeg at blive en full-stack, frontend eller backend-udvikler? Beslut hvad du vil fokusere på læring. Ved hvilket sprog og biblioteker du skal lære.
  • Hvor mange timer om ugen vil jeg studere, og hvornår? Udskær de tider på ugen, du vil øve kodning og gå aldrig glip af disse studietider.
  • Hvilken dato begynder jeg at ansøge om job ? Angiv en frist for, hvornår du ansøger.
  • Hvad giver jeg op ? Det er fantastisk at se dig selv arbejde som udvikler, men vejen derhen betyder tidlige morgener, weekender og sene nætter med hårdt arbejde.

Vær realistisk: Se på, hvad du bruger tid på hver uge, og opgive en ting. For mig var jeg ikke villig til at opgive tid med min familie, men jeg besluttede at give op med at hænge ud med venner. I de fleste lørdage forblev jeg hjemme og programmerede i stedet for at tilbringe tid sammen med mine venner.

Når du opbygger din køreplan, skal du huske: I modsætning til meget af den marketinghype, du har set, er der intet magisk kodningskursus, intet magisk program, ingen magisk bootcamp, der vil 'gøre dig' til en udvikler. Mange mennesker spørger mig, hvilket onlinekursus jeg plejede at lære at kode, som om der var en "gylden billet", der vil gøre dig til en udvikler.

Der er ikke.

Kun du kan gøre dig selv til en udvikler.

Din grus og beslutsomhed vil bringe dig derhen. Men jeg brugte også en spilskiftende metode til at lære at kode for at blive udvikler.

Hvad var det?

2. Træn dit fokus.

Der er en million gratis kodningskurser til rådighed for alle.

Hvis det er så let at få adgang til gratis kodningskurser, hvorfor er det så dang svært at lære at kode? Hvorfor er det så svært at blive udvikler?

Fordi mange af os ikke kender den nødvendige dygtighed til at lære og mestre programmeringssprog. Denne færdighed kaldes Deep Work populær af computerforsker, Cal Newport.

TL; DR : For at lære hårde ting skal du fokusere intenst i lange perioder. Det er dybt arbejde.

Men de fleste af os dræber aktivt vores evne til at fokusere, og få mennesker gør dybt arbejde.

Tænk på den sidste gang du stod i en linje. Hvor lang tid går der, før du føler dig tvunget til at få fat i din telefon og kontrollere underretninger? Eller hvad med selve denne artikel - er du skiftet til en ny fane, mens du læser? Tjekket din Twitter-konto? ?

I dag er det normen at have opmærksomhedsspænd for en guldfisk. Og det er derfor, det er så svært for os at lære komplekse ting som kodning. Når jeg først havde fundet ud af dette, indså jeg, at hvis jeg forpligtede mig til at udføre dybt arbejde, kunne jeg lære de hårde ting, jeg havde brug for at vide for at blive udvikler.

Når du sætter dig ned for at kode, skal du indstille en timer i 90 minutter. For hele den tid skal du fokusere på den app, du bygger eller det kodningsproblem, du prøver at løse. Kontroller ikke dine meddelelser. Åbn ikke en ny fane. Når du finder dig selv dagdrømmer, skal du hurtigt bringe din opmærksomhed tilbage til kodning.

Træn dit fokus, som din fremtidige karriere afhænger af det - fordi det gør det.

Uden at øve dybt arbejde ville jeg ikke være udvikler i dag.

3. Chase din nysgerrighed.

Når de fleste mennesker planlægger at lære at kode, starter de en læseplan med ting, som de "skulle" vide.

Så keder de sig. Ligesom i skolen, når du kun lærer nye ting, fordi du skal lære dem, men du ved ikke, hvorfor du har brug for at lære dem, eller hvorfor du endda holder af det. Det er let at miste interesse.

For at lære at kode, find en ting om programmering, der er fascinerende for dig. Find den ting, der gør dig nysgerrig nok til at lære om det en lørdag aften - fordi du bliver nødt til at gøre det til tider.

Der er en linje fra Alice In Wonderland, der sidder fast med mig:

Hun havde aldrig før set en kanin med hverken en vestlomme eller et ur, der skulle tages ud af den, og brændende af nysgerrighed løb hun efter den .

Da jeg har arbejdet med flere seniorudviklere i min karriere, har jeg indset: de bedste programmører behøver ikke at tvinge sig selv til altid at lære mere. De lærer altid, fordi de ligesom Alice brænder af nysgerrighed .

Nogle prøver at kode på et sprog og hader det, og vælger derefter et andet sprog og elsker det. Sørg for at prøve forskellige programmeringssprog og lære om forskellige felter inden for programmering for at finde ud af, hvad der fyrer op for din nysgerrighed.

Hvis du har forsøgt at lære at kode flere gange fra forskellige vinkler, og du stadig har lyst til at tvinge dig selv, er kodning muligvis ikke noget for dig. I modsætning til markedsføringsmaterialet for de fleste bootcamps er det ikke realiteten for de fleste at lære at kode på tre måneder og lande et jobtilbud på $ 100K lige efter. Kodning er ikke en hurtig rig ordning. Lær ikke at kode, hvis du keder dig, fordi du går glip af at finde ud af, hvad din rigtige nysgerrighed i livet er. Men hvis du er interesseret i teknologi, men ikke kodning, er der mange andre utrolige og efterspurgte færdigheder, du kan lære: design, dataanalyse og meget mere.

Hvis du har en nysgerrighed omkring programmering, skal du jage den. Jo mere du går efter din nysgerrighed, jo mere af det har du. Og mens du jagter din nysgerrighed, skal du ikke bekymre dig om, hvor du kommer fra. Du skal ikke bekymre dig om din mangel på en CS-grad eller hvad der ligger bag dig.

Uanset din alder, manglende grad eller tidligere erfaring, hvis du elsker at kode, øve dybt arbejde og gøre læring til en prioritet i dit liv, kan du blive en professionel udvikler.

Selvom du er en helt nybegynder.

Start nu.

Hvis du nød denne historie, skal du holde nede? knap! For at holde kontakten med mig, tilmeld dig mit nyhedsbrev, hvor jeg deler tip til at lære at kode og give et gratis kodningskursus væk.