Hvor kan jeg lære programmering helt gratis?
Det meste du trenger, er gratis: freeCodeCamp, The Odin Project og Harvards CS50 gir hele kursløp, MDN og den offisielle dokumentasjonen forklarer detaljene, og kodeutfordringer som Exercism gir deg øving.

Det finnes et overflødighetshorn av gratis ressurser for å lære programmering, og du trenger ikke betale en krone for å komme i gang. Utfordringen ligger heller i å finne fram til de ressursene som passer din læringsstil og dine mål.
Mange tror at programmering krever dyre kurs eller utdanning, men sannheten er at det meste av kunnskapen ligger fritt tilgjengelig på nettet. Det eneste du trenger, er en datamaskin, internettilgang og vilje til å investere tid.
Gratis nettbaserte læringsplattformer
freeCodeCamp er en av de mest omfattende gratisressursene som finnes. Plattformen tilbyr strukturerte kurs i webutvikling, datavitenskap og maskinlæring. Du lærer ved å løse oppgaver direkte i nettleseren, og alle kursene er bygget opp med en progresjon som tar deg fra nybegynner til avansert nivå.
The Odin Project er et annet fullstendig gratis alternativ som fokuserer på å gjøre deg til en fullstack-utvikler. Kurset er omfattende og krever dedikasjon, men tar deg gjennom alt fra HTML og CSS til Ruby on Rails eller JavaScript med Node.js.
Codecademy har både betalte og gratis kurs. Gratisversjonen gir deg tilgang til grunnleggende programmeringskurs i språk som Python, JavaScript, HTML/CSS og SQL. Du får ikke alle funksjonene som i betalversjonen, men det er mer enn nok til å komme godt i gang.
Harvard og MIT tilbyr flere av sine programmeringskurs helt gratis gjennom edX. CS50, Harvards introduksjonskurs i datavitenskap, er kjent for å være grundig og godt pedagogisk lagt opp. Du får tilgang til forelesningsvideoer, oppgaver og kursmateriale uten å betale.
YouTube som læringsressurs
YouTube har blitt en uvurderlig ressurs for å lære programmering. Det finnes kanaler som publiserer komplette programmeringskurs som ville kostet tusener av kroner andre steder.
Traversy Media lager praktiske videokurs som går rett på sak. Brad Traversy dekker moderne webutviklingsteknologier og har laget nye kurs etter hvert som nye versjoner og rammeverk kommer.
freeCodeCamp har også en YouTube-kanal med timelange, komplette kurs i forskjellige programmeringsspråk og teknologier. Disse kursene er ofte laget av erfarne utviklere og går grundig gjennom temaene.
The Net Ninja spesialiserer seg på moderne JavaScript-utvikling og tilhørende rammeverk. Kanalens styrke ligger i hvordan komplekse konsepter brytes ned i fordøyelige deler.
For norskspråklig innhold er utvalget mer begrenset, men det finnes noen kanaler som lager innhold på norsk. Søk gjerne spesifikt på norsk hvis du synes det er enklere å lære på morsmålet i begynnelsen.
Offisiell dokumentasjon og guider
Den offisielle dokumentasjonen til programmeringsspråk og rammeverk er ofte den beste kilden til kunnskap. Pythons offisielle dokumentasjon inneholder blant annet en grundig tutorial som tar deg gjennom språkets grunnleggende funksjoner.
MDN Web Docs (Mozilla Developer Network) er gullstandarden for alt som har med webutvikling å gjøre. Ressursen dekker HTML, CSS og JavaScript med detaljerte forklaringer, eksempler og kompatibilitetsinformasjon.
Mange undervurderer dokumentasjon fordi den kan virke tørr og teknisk, men når du først lærer å lese den, blir det en uvurderlig ressurs. Dokumentasjon er også det du kommer til å bruke mest når du jobber som utvikler.
Kodeutfordringer og praktisk øving
Å lese og se videoer er viktig, men programmering lærer du best ved å faktisk skrive kode. Det finnes flere plattformer som tilbyr gratis kodeutfordringer.
LeetCode er populært blant dem som forbereder seg til tekniske jobbintervjuer. Plattformen har hundrevis av algoritmiske problemer i varierte vanskelighetsgrader. Mange av problemene er gratis, og du får mulighet til å sammenligne løsningen din med andres.
HackerRank tilbyr utfordringer innen algoritmer, datastrukturer, kunstig intelligens og databaser. Plattformen har også et rangeringssystem som kan være motiverende for dem som liker konkurranseelementer.
Codewars gamifiserer læringen ved å la deg løse «kata» – kodeutfordringer i forskjellige vanskelighetsgrader. Når du løser oppgaver, kan du se hvordan andre har løst samme problem, noe som gir verdifull innsikt i alternative løsninger.
Exercism er litt annerledes ved at det tilbyr mentorordning i tillegg til kodeutfordringer. Du løser oppgaver i det programmeringsspråket du vil lære, og kan deretter få tilbakemelding fra erfarne utviklere. Alt er gratis og drives av frivillige.
En AI-assistent kan også være en tålmodig hjelpelærer: Lim inn en feilmelding eller en kodebit du ikke skjønner, og be om en forklaring. Det er en av mange oppgaver du kan overlate til AI. Men skriv koden selv mens du lærer – lar du AI gjøre jobben, lærer du lite, og svarene kan være feil.
Bidra til åpen kildekode
Når du har kommet et stykke på vei, er det å bidra til open source-prosjekter en utmerket måte å lære på. Du får erfaring med ekte kodeprosjekter, samarbeid med andre utviklere og innsikt i hvordan profesjonelle prosjekter struktureres.
GitHub er stedet å starte. Mange prosjekter merker issues med «good first issue» eller «beginner friendly» for å vise hvilke oppgaver som passer for nybegynnere. Du kan fikse feil, forbedre dokumentasjon eller legge til mindre funksjoner.
Det kan virke skremmende å bidra til prosjekter som brukes av tusenvis av mennesker, men open source-miljøet er generelt veldig hjelpsomt overfor nye bidragsytere. Det verste som kan skje, er at din pull request ikke blir akseptert, og da har du fortsatt lært noe underveis. Mange begynner med prosjekter de selv bruker, for eksempel publiseringssystemet Joomla, som utvikles av frivillige.
Norske ressurser og miljøer
Det finnes flere norske miljøer hvor du kan lære og få hjelp. Nettavisen kode24 skriver om programmering og utviklerbransjen i Norge, og er en grei måte å holde seg oppdatert på norsk. Generelle forum som subredditen r/Norge har innimellom diskusjoner om programmering, men de er ikke dedikerte læringsfora.
Gratis meetups og workshops for utviklere finner du ofte ved å følge med på sosiale medier eller Meetup.com.
Facebook-grupper for norske utviklere kan være nyttige for å stille spørsmål og få tips. Selv om gruppene ikke er dedikerte læringsressurser, er miljøet ofte hjelpsomt.
Flere norske byer har coding meetups hvor både nybegynnere og erfarne utviklere møtes. Dette er gode arenaer for å bygge nettverk og lære av andre. Oslo, Bergen, Trondheim og Stavanger har særlig aktive miljøer.
Folkebiblioteket – en undervurdert ressurs
Norske folkebibliotek har ofte overraskende gode samlinger av programmeringsbøker. Du kan låne fysiske bøker eller få tilgang til e-bøker gjennom bibliotekets digitale tjenester.
Hvilke digitale tjenester du får tilgang til med lånekortet, varierer fra bibliotek til bibliotek, så spør ditt lokale bibliotek hva de tilbyr.
Noen bibliotek arrangerer egne programmeringsverksteder eller kodeklubber, ofte i samarbeid med den frivillige organisasjonen Lær Kidsa Koding. Det er lurt å sjekke hva ditt lokale bibliotek tilbyr.
Discord og Slack-communities
Discord har blitt et populært sted for programmeringsmiljøer. Det finnes servere dedikert til spesifikke programmeringsspråk, rammeverk eller generell utvikling. Her kan du stille spørsmål i sanntid og få hjelp fra andre som lærer eller som allerede kan det.
The Programmer's Hangout er en stor Discord-server med separate kanaler for forskjellige språk og teknologier. Du finner folk på alle nivåer som er villige til å hjelpe.
Mange utviklere undervurderer verdien av å være med i et aktivt fellesskap. Når du står fast, kan det å få hjelp i løpet av minutter i stedet for timer gjøre stor forskjell for motivasjonen.
Podkaster og utviklingsblogger
Selv om podkaster ikke direkte lærer deg å kode, gir de verdifull kontekst og innsikt i utviklerbransjen. Du lærer om beste praksis og nye teknologier, og hører erfarne utviklere diskutere problemstillinger du vil møte.
Syntax.fm er en populær podkast om webutvikling. CodeNewbie henvender seg spesifikt til dem som er nye i programmering, og deler historier fra folk som har lært seg å kode.
Å lese utviklerblogger er også nyttig. Medium har mye programmeringsinnhold, og mange erfarne utviklere deler kunnskap gratis på sine egne blogger eller på Dev.to. Du kan lære mye av å lese om hvordan andre løser problemer.
Velge språk og retning
Et vanlig spørsmål er hvilket programmeringsspråk man skal starte med. Svaret avhenger av hva du vil oppnå.
Python er ofte anbefalt for nybegynnere fordi syntaksen er relativt enkel å lese. Språket brukes til alt fra webutvikling til dataanalyse og maskinlæring – det er grunnlaget for mye av det som ligger bak hvordan AI fungerer.
JavaScript er uunngåelig hvis du vil lage nettsider. Språket har i mange år ligget øverst blant de mest brukte i Stack Overflows store utviklerundersøkelse, og det brukes både til frontend- og backend-utvikling.
Hvis du er interessert i mobilapper, kan du vurdere Swift for iOS eller Kotlin for Android. Flutter, som bruker språket Dart, lar deg lage apper til både iOS og Android med samme kodebase.
For dem som er interessert i lavnivåprogrammering, systemutvikling eller spillprogrammering, er C++ eller Rust relevante valg. Disse er mer komplekse å lære, men gir dypere forståelse for hvordan datamaskiner fungerer.
Strukturere læringen din
Med alle disse ressursene tilgjengelig kan det være lett å hoppe fra kurs til kurs uten å fullføre noe. Det er bedre å velge én ressurs og jobbe deg gjennom den systematisk enn å prøve litt av alt.
Sett av fast tid til å programmere, helst daglig. Selv 30 minutter om dagen gir bedre resultater enn fire timer hver søndag. Kontinuitet er viktigere enn lengden på hver økt.
Bygg prosjekter så tidlig som mulig. Det trenger ikke være noe avansert – en enkel kalkulator, en gjøremålsliste eller et program som henter værdata for din by, er gode startpunkter. Prosjekter gjør læringen konkret og motiverende.
Ikke vær redd for å gjøre feil eller skrive dårlig kode i begynnelsen. Alle gjør det. Det viktige er at du lærer av feilene og gradvis blir bedre. Det er ikke mulig å lære programmering uten å bruke masse tid på feilsøking.
Å lære programmering gratis krever disiplin og selvmotivasjon, siden du ikke har en lærer eller studieplan som følger deg opp. Men friheten til å velge ditt eget tempo og fokusområde er samtidig en stor fordel. Med ressursene som er tilgjengelige i dag, er det ingen økonomiske barrierer som stopper deg fra å lære å programmere.


