Sidste år tog jeg en meget stor beslutning i mit liv - 2013 blev det år, jeg endelig lærte at kode.
Jeg har altid været fascineret af internettet, og hvordan teknologi tillader os at kommunikere med mennesker over hele verden. Der er så meget fantastisk teknologi, der er ved at blive bygget lige nu, og jeg indså, at jeg ikke var tilfreds med bare at læne sig tilbage og bruge disse kommunikationskanaler - jeg ville gerne lave dem selv. Jeg havde ingen teknisk baggrund og havde aldrig rigtig lavet nogen kodning, men jeg vidste, at det var nu eller aldrig.
Naturligvis var det første spørgsmål: Hvordan? Der er masser af muligheder for at lære at kode: online-programmer, bøger, natklasser, boot camps - listen fortsætter, med hver mulighed der kræver forskellige engagementer.
Jeg havde poket omkring nogle kodende tutorialbøger i fortiden, men havde ikke særlig succes. Jeg ville lære, men jeg kunne aldrig se ud til et punkt, hvor jeg følte, at jeg udførte noget. Jeg ville få et par kapitler ind og ende fuldstændig forvirret, og spekulerer på, hvorfor på jorden jeg brugte kode til at få ordene til "99 flasker øl" udskrevet i terminalen. Så ville jeg give op.
For virkelig at lære, vidste jeg, at jeg havde brug for et rigtigt projekt, hvor jeg kunne se de praktiske resultater af det, jeg gjorde, og dele min succes med andre. Så jeg besluttede at oprette min egen sti til at lære at kode: Jeg afslutter mit job, fyldt på ramen-nudler og besluttede at JFDI (bare f * cking do it) ved at bygge 180 websteder på 180 dage.
Selvom det bestemt ikke er muligt for alle at afsætte sig fuldtids til et projekt som dette, er der stadig mange måder, du kan bruge min praktiske tilgang til at lære en ny færdighed. Uanset om du klør for at vide, hvordan du koder eller noget andet helt, skal du læse videre til nogle af de største lektioner, jeg har lært fra min rejse, og hvordan du kan anvende dem til dit eget eventyr.
1. Start lille, bliv ved med at bygge
At lære enhver ny færdighed kan være overvældende, når du stirrer op på et bjerg af viden, du prøver at erobre. Så i stedet for at tackle hele bjerget, besluttede jeg at gøre et mini-projekt om dagen, hvilket ville hjælpe mig med at holde fokus på at gøre små, trinvise forbedringer.
Inden jeg startede projektet med 180 websteder, vidste jeg, at jeg ville være i stand til at lave store, interaktive webapps, men jeg vidste næsten intet om, hvordan jeg selv laver et grundlæggende websted. Så jeg startede med at lave noget meget enkelt, bare et par kodelinjer. Det tog mig hele dagen og skure på internettet for at få svar på mine spørgsmål, men det var det første skridt.
Hver dag gjorde jeg noget lidt mere komplekst og bygger på det, jeg allerede havde lært. At skulle producere et slutprodukt hver dag betød, at jeg ikke kunne lade mig hænge på at forstå hvert eneste koncept, jeg udforskede - jeg var nødt til at bevæge mig. Og som et resultat tog det ikke lang tid, før min lille forbedring af babytrin begyndte at snebold i store spring.
Senere i projektet gjorde jeg ting, som jeg aldrig havde forestillet mig, at jeg ville. En masse af de websteder, jeg lavede, var sjove og legende. Jeg lavede legetøj som Sushi Jiggler og Etch-A-Sketch og spil som Simon og Minesweeper. Jeg lavede også mere seriøse apps. Jeg blev virkelig interesseret i data og lavede præsentationsværktøjer som Elevations, der plotter terrænet mellem to steder på Jorden. Kommunikation og deling var også et vigtigt koncept for mig, og jeg lavede apps som Audio Garden til at hjælpe folk med at oprette forbindelse rundt om i verden. Hvordan vi føler, som sporer følelser hos mennesker på Twitter, er en af mine favoritter.
Når du lærer noget nyt, vil du ofte støde på koncepter, der simpelthen ikke giver mening for første gang du ser dem. Det er farligt let at blive fanget med at prøve at forstå enhver detalje, blive modløs og give op. At sætte en hård, en-dags frist på hvert websted tvang mig til bare at få ting til at arbejde snarere end at bekymre mig om "at få det." Så længe jeg fortsatte med at komme videre, vidste jeg, at jeg til sidst ville forstå de ting, som jeg ikke helt få første gang.
2. At sætte dig selv derude er den bedste måde at holde sig ansvarlig på
Ud over at sætte min daglige hjemmeside online, satte jeg også al min kode på GitHub (kodedelingsplatformen til 6 millioner mennesker over hele verden) for hvad der føltes som hele ingeniørfællesskabet at se. Ingen vittighed - dette var skræmmende! Alle ville være i stand til at se, hvor dårlig jeg var! Alle mine fejl, ude i det fri!
Hvad jeg dog snart indså, var, at ved at dele mit arbejde offentligt, efterlod jeg ikke plads til at slakke af, og jeg følte pres for at fortsætte med at forbedre mig. Jeg var også i stand til at få reel feedback om min kode og mine websteder, som hjalp med at forme hvilke ideer jeg ville udforske næste. Vigtigere er det at afsløre mine fejl og misforståelser lærte mig at være mere komfortabel med ikke at vide alt.
Sagen er, at læring er rodet, og du vil begå fejl, uanset hvad emnet. Når du lærer noget nyt, har du enorme huller i din viden, hvilket kan være virkelig pinligt. Dit instinkt kan være at forsøge at dække disse huller, men det hjælper ikke dig med at udfylde dem. Deling af mine fejl hjalp mig med at overvinde dette instinkt, at imødegå mine videnhuller og virkelig vokse ud fra dem.
3. At spore din rejse er den bedste måde at se, hvor langt du virkelig er kommet
Ud over at bygge et sted hver dag skrev jeg også et dagligt blogindlæg til journal til mit projekt. Naturligvis er blogging bestemt ikke vigtigt for at lære at kode - eller lære andet end skrivning - men det hjalp mig med at udvikle en meget vigtig færdighed: evnen til at kommunikere om mit arbejde og dele min historie.
Jeg havde aldrig skrevet et enkelt blogindlæg, før jeg startede projektet med 180 websteder (hvilket ikke kommer som en overraskelse, hvis du læser mine første indlæg fra projektet), så det var ikke let at skrive hver dag i starten. Jeg følte ofte, at jeg ikke havde noget interessant at sige. Men jo mere jeg skrev, jo lettere blev det. Jeg fandt, at det at skrive om det, jeg lærte, gav mig et sted at opsummere de koncepter, jeg kæmpede med, og muligheden for at udvikle mit programmeringsordforråd. Det gav mig også et sted at tænke på ting ud over kodning, som hvordan det, jeg lærte, relaterede til det virkelige liv. Ved udgangen af de 180 dage havde jeg ikke kun lært at kode, men også hvordan man kunne tale om min oplevelse som en koder.
Et år og 250+ blogindlæg senere, er jeg nu en stor fortaler for magt ved blogging, og jeg opfordrer alle og enhver, jeg møder, til at starte, især hvis du prøver at lære noget nyt.
Det var ikke altid let at følge min egen vej, og der var bestemt dage, jeg følte mig meget ensom. Det gav mig dog muligheden for at udforske ideer, som jeg måske ikke havde været i stand til i en mere struktureret atmosfære. For eksempel opdagede jeg, at selvom jeg ikke er stor på tal og matematik, elsker jeg data! Jeg lærte også at glemme perfektion og omfavne hurtig iteration.
Vigtigst af alt lærte jeg at eje mit arbejde unapologetisk. Hver gang du tager store gynger i livet, vil der være naysayers og skeptics. Deres kommentarer kan svi, men lad ikke negativitet føde din selvtillid. Hvis du vil gøre noget banebrydende, skal du nogle gange gå ud på en lem.