Hva er programmering og hvordan kan du lære det?

Først vil jeg i denne artikkelen skrive litt generelt om programmering og hvor det hele begynte. Deretter vil jeg forklare hvordan du bør gå frem for å lære. Det siste punktet er det viktigste. Her går jeg gjennom den ene tingen du må vite før du lærer ditt første kodespråk.

artikkelen fortsetter under annonsen

Kort fortalt – snakke med en datamaskin

Det er det en programmerer gjør. Med korte til lengre instruksjoner, vil en programmerer kommunisere med en datamaskin ved hjelp av kodespråk. Du forteller datamaskinen akkurat hva den skal gjøre, og hvis du har gjort alt riktig så vil den gjøre jobben for deg.

Finner den en liten feil i programmet vil det sannsynligvis føre til at koden ikke virker. Derfor er det viktig med kontinuerlig sjekking opp mot dokumentasjonen som finnes, men dette er noe du vil bli vant til.

Hvor sensitivt kodespråket er for feil vil også variere basert på selve språket. De fleste språk som flittigst blir brukt i dag er relativt like, slik at det er mye overlapping i syntaks. Det vil si at det er lettere å lære et nytt språk etter at du har forstått tankegangen og metodene bak det første du lærte.

Det kan derfor være greit å holde seg til ett språk i starten, i stedet for å hoppe frem og tilbake.

Populære programmeringsspråk inkluderer C, JavaScript, PHP, Java og Python. De fleste språk i dag er basert på C, som ble introdusert helt tilbake til 1970-årene. Man skiller mellom lavnivå og høynivå kodespråk. Jo lavere det er, jo mer maskinnært er språket. En datamaskin jobber med bits – som kan ha en av to mulige verdier. Disse blir gjerne omtalt som 0 og 1/sann og usann/av og på. To motsetninger med andre ord. C er omtalt som en miks mellom høy- og lavnivå, da det er mye nyttig syntaks, men du har også muligheten til å jobbe veldig lavt (nærme prosesseringen i datamaskinen). C ble såpass populært at de aller fleste språk er i dag nokså like C i syntaks. Et lavnivå språk er gjerne raskere enn et høynivå, og derfor brukes de fremdeles den dag i dag.

Jeg vil komme med mer om dette i en senere artikkel.

artikkelen fortsetter under annonsen

Historien bak de første programmene

Som det ble nevnt i avsnittet ovenfor, ble C tatt i bruk så tidlig som på 1970-tallet. Utvikleren bak det begynte faktisk med det så tidlig som i 1969.

Men det var ikke her programmeringshistorien begynte.

Den første programmerbare maskinen ble tatt i bruk i 1801. Joseph Marie Charles – Jacquard – var en kjøpmann og vever, som tok i bruk hullkort for å forenkle tekstilvev-produksjonen sin. Fra 1920 til 1950 var hullkortet det mest populære lagringsmediumet. Et hullkort er et rektangulært kort. Fravær av hull registreres som 0 og et hull registreres som tallet 1. Helt til 1970-tallet var det helt vanlig å bruke hullkort, men har blitt erstattet av svært mange typer lagringsmedium siden den gang. Blant annet trommelminne, magnetkjerneminne, diskett, cd og minnekort.

Allerede på 1840-tallet ble det skrevet om en analytisk maskin som skulle være i stand til å analysere tall. Likevel tok det frem til 1940- og 50-årene at ting begynte å skje. På 40-tallet ble de første elektrisk drevne datamaskinene laget. Disse var langt fra optimale, og trengte menneskelige instruksjoner for å fungere. Utforming av disse programmene krevde mye hjernekapasitet, tid og ressurser. Disse språkene var på et svært lavt nivå, og de første høynivå språkene ble ikke introdusert før på 50-tallet.

Etter det så vi en gradvis forbedring av språk opp gjennom årene, med store hopp innimellom. I dag finnes det programmeringsspråk på et veldig høyt nivå, som eksempelvis PHP, Python, Ruby og C#.

Må man være skikkelig smart for å lære å kode?

De siste årene har det blitt flere og flere milliardærer av de som først begynte med programmering. Jeff Besos, som er verdens rikeste mann, fullførte i 1986 en ingeniørutdanning innen elektronikk og datafag. Videre er Bill Gates et åpenbart eksempel, som hadde tilgang på farens pc fra han var svært liten. Her fattet han interesse fra en ung alder og dette ble et fantastisk utgangspunkt for en eventyrlig karriere. Elon Musk programmerte dataspill før han var tenåring, og startet karrieren sin ved å selge software for hundrevis av millioner. Han var også med å etablere PayPal, og var med på å utvikle løsningen. Resten er historie.

Selv om disse og svært mange flere historier finnes, er det ikke slik at man må være genial for å lære å kode. Det er som med alt annet, jo mer du gjør det, jo bedre blir du. Du trenger ikke å være fantastisk i matematikk eller rå  på fysikk for å bli en god utvikler. For alt du vet har du bare ikke vært interessert i å lære det som har blitt gjennomgått på klasserommet. Den beste måten å lære på er å begynne forsiktig, og lage svært enkle program i begynnelsen. Så enkle som mulig. Dette vil gjøre at du stadig lærer noe nytt, og etter at du har lagd hundrevis av enkle program, vil du være tilnærmet klar for en jobb. Eksempler på hva dine første program skal gjøre:

  • Få pc-en til å komme med en popup hvor det står ‘Heisann!’
  • Skriv ‘Hei, verden’ og få det til å vises i browseren.
  • Bruk to ulike måter på å få datoen i dag til å vises i browseren.

artikkelen fortsetter under annonsen

Hvordan du bør gå frem

Jeg vil fokusere på de som er interessert i webutvikling nå for denne gang. Hvis du vil bli en systemutvikler, så kan du også følge denne guiden, for deretter å fylle på med mer relevante språk når den tid kommer. De følgende rådene vil likevel være av hjelp hvis du ikke har noe erfaring med webutvikling og ønsker å vite mer.

Frontend: Det som vises på en nettside. Alle bokser, farger, ting som rører på seg er gjerne frontend. HTML, CSS og JavaScript er front-end språk. HTML kan gjerne sees på som strukturen. Dette er knappene, teksten, registreringskjemaene og lignende. CSS er et stilspråk hvor man bestemmer farger, størrelser, fonter og alle stilrelaterte valg. Det har også noe interessant funksjonalitet, og kan erstatte JavaScript i enkelte situasjoner. JavaScript er et høynivå programmeringsspråk hvor alle utregninger, sammenligninger og funksjoner vil utøves. Hvis du blir skikkelig god på JavaScript, så er du nesten garantert jobb. Det er et hav av JS-rammeverk der ute, og det virker å bare bli mer og mer populært.

Backend: PHP og Node.JS er eksempler på back-end språk. Dette er språkene som kobler det som skjer front-end med databasen (SQL). Hvis du klikker på en knapp (html), så vil en funksjon aktiveres (JavaScript). Hvis denne funksjonen ikke ser noe feil, vil verdien som følger knappen sendes via back-end (PHP) til databasen. Her er det ofte mye sanering av data (gjøre de trygge mot hackere o.l.) som foregår, samt. velge hvor verdiene skal legges til i databasen. Har du fylt ut et registreringsskjema med navnet ditt, vil denne verdien trolig bli lagt til under «name» i en tabell over brukerne som har registrert seg.

Null erfaring? Få en grunnleggende fortståelse

Du trenger ikke å velge om du vil jobbe med front- eller backend med en gang. Det er trolig greit å undersøke begge alternativene og lære hvordan de fungerer før du bestemmer deg. Men husk som jeg sa, at du bør bruke mye tid på det første språket du lærer. Dette vil være veldig nyttig til senere. Hopper du frem og tilbake mellom språk så vil det være vanskelig å mestre ett av de.

artikkelen fortsetter under annonsen

Hvis du har null erfaring innen programmering, så er det første jeg ville gjort å se på Youtube videoer relatert til programmering. Få en grunnleggende forståelse av hva programmering går ut på, og hvordan erfarne utviklere løser problemene. Velg svært enkle tutorials i begynnelsen, og bestem deg for et språk tidlig. Det er viktig at du velger å fortsette med dette språket, hvis ikke så vil du bare bli forvirret og bruke mye tid på å lære syntaksen flere ganger. Som utvikler, så ville jeg anbefalt denne listen:

  1. HTML (markeringsspråk / front-end)
  2. CSS (stilspråk / front-end)
  3. JavaScript (programmeringsspråk / front-end)
  4. PHP eller Node.js (programmeringsspråk / back-end)
  5. SQL (database / back-end)

Det viktigste du må huske på når du lærer å kode

IKKE GI OPP. Det tar tid å bli en flink og effektiv programmerer. Du må begynne svært enkelt, og synes du at det går tregt så må du vite at du ikke er alene. Jeg personlig og svært mange av de jeg studerte med syntes det var veldig vanskelig å forstå tankegangen som man må lære. Hvordan man setter opp et program og de spesifikke problemløser-evnene som kreves. Det er også mange interne funksjoner i de fleste språk som vil gjøre livet ditt mye lettere. Jeg vil anbefale å lage eller finne et cheat-sheet for språket du velger å gå for, og forsøke å kun gå etter det. Hvis du googler hvert eneste problem som dukker opp så vil du en dag sitte der uten svar eller en løsning på problemet.

Annonse
Aktivert.no

Aktivert er et webmagasin med tusenvis av lesere hver måned. Her finner du topplister og spennende innsikter innen flere ulike sjangre.

Populære innlegg
Annonse

Meld deg på nyhetsbrevet

Ved å delta samtykker du å motta varsler om nye innlegg, gode tilbud hos våre samarbeidspartnere og annen informasjon vi ser på som nyttig for våre lesere. Du kan melde deg av når som helst, og lese vår personvernerklæring for mer informasjon.