Jeg har programmert på fritida siden jeg var ganske liten, men det var journalist jeg ble.
I stedet for å angre på valget, som til tider var fristende, bestemte jeg meg for å prøve å kombinere hobby og jobb. Lenge før kode24 ble påtenkt, fant jeg derfor et nettstudie hos Treehouse, som jeg tenkte skulle bli løsningen.
Jeg fikk stipend fra fagorganisasjonen min, meldte meg på og har det siste halvannet året studert meg til en såkalt «Techdegree» i fullstack JavaScript-utvikling.
Men var det lurt? Og kan jeg anbefale andre å gjøre det samme? Tja, og njei.
#1: Hva er en Techdegree?
Treehouse er en av mange leverandører av nettkurs og studier innen programmering. Og en Techdegree derfra, er en samling av mange kurs, som samla skal gi deg en "grad" i en disiplin.
I mitt tilfelle; fullstack web-utvikling i JavaScript.
«Prisen er stiv; rundt 1.700 kroner måneden.»
Treehouse går langt i å love jobb etter studiet, bare man jobber hardt nok. I reklamene florerer det av lykkelige amerikanere som snakker om sine nye liv som utviklere, men som vi skal komme tilbake til: Fullt så enkelt er det nok ikke her til lands.
Prisen er stiv; rundt 1.700 kroner måneden. Og Treehouse sier man kan klare det på noen måneder om du studerer fulltid, selv tenkte jeg å bruke ett år på deltid. Det kunne jeg klart, hadde det ikke vært for en viss kode24-lansering, så jeg brukte nærmere halvannet år og 30.000 kroner.
#2: Hva lærer man?
Studiet er delt opp i tolv moduler, som alle avsluttes med en konkret oppgave som skal løses, ved hjelp av det du har lært.
Maximilian (18) brente skolebøkene, ble utvikler
Nå er han selvstendig konsulent, helt uten utdanning. - Ingen bryr seg, mener 18-åringen.
Det har endra seg litt siden jeg starta, men mitt opplegg så sånn ut:
- Grunnleggende JavaScript, HTML og CSS - for å lage en nettside som viser tilfeldige sitater.
- jQuery - for lage søk og dele opp en liste av ansatte i sider (pagination).
- Mer av det samme, fokus på skjemaer - for å lage et digert skjema med validering.
- Dypere JavaScript, fokus på objekter og arrayer - for å lage et bondesjakk-spill.
- HTTP, Ajax og bruk av API-er - for å hente og vise en liste over fiktive brukere fra randomuser.me.
- Node.js og npm - for å lage en terminalbasert applikasjon som skraper priser fra en fiktiv nettbutikk.
- Node.js, Express, PUG/Jade og Heroku - for å lage en servertegnet frontend for Twitter, med Twitters API-er.
- Gulp - for å skrive et skript som bygger en nettside Treehouse leverte, med blant annet JavaScript, bilder og Sass.
- React - for å lage en applikasjon som søker etter bilder med Flickr sitt API.
- SQL - for å lage et bibliotekssystem med en SQL-database over bøker, brukere og lån.
- MongoDB og REST-API-er i Express - for å lage et eget API som snakker med en MongoDB-database.
- "Capstone project" - hovedprosjektet, hvor du kan lage en webapplikasjon som gjør hva du vil, så lenge den bruker minst to tredjeparts API-er og en database. Helt til slutt er det også en eksamen, bestående av en multiple choice-oppgave.
#3: Hvordan er kursene?
En modul er en samling av store og små kurs.
De består av en haug videoer, en neve quiz-er og noen små kodeoppgaver - som funka bra for å vite at man faktisk fikk med seg alt, og til tider var ganske gøy.
Quiz: Klarer du en JavaScript-eksamen?
Ofte kodes en liten løsning gjennom kurset, også, som du kan kode sammen med læreren om du ønsker.
Og lærerne var ofte flinke, de, altså. Men mange hadde litt ulike kodestiler, som fort blir litt forvirrende for en nybegynner. For hvorfor bruker noen pilfunksjoner, og andre ikke? Hvorfor bruker noen let og const, mens andre bare var?
Selv brukte jeg pinlig mye tid på å fundere på sånt, før jeg innså at det ofte spilte liten trille.
#4: Hvordan er oppgavene?
Etter alle kursene, er det altså en oppgave som skal løses med det du har lært.
Man får vite hva man skal lage, med konkrete mål som må møtes og andre mål som kan møtes for en ekstra "exceeds expecations"-karakter. Det likte jeg; det ga meg motivasjon for å jobbe litt ekstra, når jeg hadde muligheten.
Du bruker tegnet hver dag, men vet du hvorfor?
Den tilfeldige historien til krøllparantesen. 💡
Som regel fikk vi utlevert HTML og CSS, trolig fordi studiet er mest opptatt av JavaScript-biten. Men det førte til lite trening på HTML og CSS, og at jeg ikke fikk den gode følelsen av å faktisk ha bygd hele løsningen selv.
Oppgavene leverte jeg via Github, og jeg trodde jeg skulle få tilbakemelding på dem fra lærerne. Men nei; Treehouse ber studentene selv rette hverandres oppgaver. Ofte var det derfor åpenbart at de som leste koden min kunne sånn cirka like lite som meg.
Og selv om lærerne var tilgjengelige via Slack, er dette et nettkurs i ordets rette forstand. Og prisen, på 199 dollar i måneden, virker vel stiv med tanke på hvor lite jeg så til betalte mennesker i løpet av studiet.
#5: Hvor mye lærte jeg?
Som nevnt er Treehouse veldig opptatt av at du skal kunne gå ut i jobb etter en Techdegree. Og om du leser pensumlista over, ser du at det ikke er småtteri de vil lære bort.
Slik jeg forstår studiet, vil Treehouse forberede deg på det meste de ser for seg at du kan møte i arbeidslivet. Det kan sikkert være lurt for mange, og fint for meg i den jobben jeg har endt opp med, men det har noen store problemer.
«Litt om for mye, og for lite om alt.»
For det første blir det litt om for mye, og for lite om alt. Jeg må ærlig innrømme at jeg knapt husker noe som helst om Gulp. Og spør du meg om å skrive en SQL-spørring, spør jeg deg hvordan.
Dessuten må Treehouse ta en rekke teknologivalg for deg, som jeg ikke er sikker på er riktige. For hvor vanlig er det egentlig å bruke PUG/Jade til å tegne ut nettsider fra Node? Og er det fornuftig at jeg kan over snittet mye om jQuery i 2019?
#6: Anbefaler jeg Treehouse?
Som jeg har lest i en artikkel jeg har skrevet selv; i Norge stiller du neppe særlig sterkt med en Techdegree fra Treehouse. Å ansette selvlærte utviklere er fortsatt uvanlig, og en Techdegree er engang ikke en bachelor.
«Den beste måten å lære seg å programmere, er å programmere.»
Skal du få jobb som utvikler i Norge, uten formell utdannelse, må du la kodingen din snakke for seg selv. Og kodingen man gjør på Treehouse, i form av de 12 oppgavene man må levere, er neppe en særlig imponerende portefølje. Særlig ikke når jeg aldri i verden hadde klart å gjenskape Gulp-skriptene eller SQL-koden mange måneder etter kursene.
Skulle jeg lært meg webutvikling i dag, på egenhånd, ville jeg heller konsentrert meg om én stack. For eksempel React, Node og MongoDB. Jeg ville lært meg dette skikkelig, heller enn litt om alt.
Og for å få til det, er ikke Treehouse stedet å gå. Du får langt mer igjen for tida og penga med blogger, Youtube-serier og nettkurs fra entusiaster som Wes Bos.
Sammen med selve programmeringen du gjør, da, selvfølgelig. For den beste måten å lære seg å programmere, er fortsatt å programmere.
Vil ikke ansette selvlærte utviklere
Mens lynkurs og nettstudier florerer, foretrekker norsk bransje utdannede utviklere. Det kan snart endre seg.