Frihet til å lære: egenopplæring for systemutviklere

For noen dager siden besøkte jeg Dagen@IFI på UiO, hvor jeg promoterte Steria for informatikk-studenter. En student fortalte om en bekymring han hadde: «Dersom jeg velger feil kurs på skolen – låser jeg meg da til feil karriere?» Han ble lettet da jeg forsikret ham om at det ikke var tilfelle. For heldigvis er arbeidslivet det man selv gjør det til: du kan utvikle deg selv og skifte retning underveis.

Systemutviklere er både heldige og uheldige. Vi kan tilegne oss kunnskap og ferdigheter helt på eget initiativ, men vi tvinges også til å gjøre det for å holde oss relevante, ettersom teknologi endrer seg raskt.

Selv synes jeg at det er topp å plukke opp nye ting – her er noen metoder for å lære…

Bredde eller dybde?

Tenk på kunnskap som personøkonomi. Ikke invester alt i en aksje («Jeg kan bare Java!»). Spre eggene dine over flere kurver. For all del: legg ned tid i mainstream-teknologi som er populær idag. C# og Java f.eks er lavrisiko med grei avkastning. Men se også på nisje-teknologi (la oss si F# eller Scala, for eksempel) Disse er mer høyrisiko fordi det absolutt ikke er sikkert de blir populære i fremtiden. Smale temaer gir til gjengjeld langt høyere avkastning hvis de slår an: du får et fortrinn fordi du var tidlig ute.

Balanse mellom generelle og spesialiserte emner. Brede, eviggrønne felt (f.eks OO-design, regular expressions, statistikk) hjelper deg i mange år, uavhengig av domener og platformer. Men ikke overse domenekunnskap og platformspesifikke verktøy (Oracle og Microsoft) som gjør deg mer ettertraktet i prosjekter her og nå.

Kultiver personlige styrker. Hvis du bare kan “litt om alt” så er det vanskelig å utmerke seg. Finn en eller to ting som er dine hovedpillarer, som du stadig forbedrer og behersker bedre enn andre. Hva gjør at du skiller deg ut? Hva er ditt «Unique Selling Point»?

Studieteknikk-kungfu

Du har et enormt arsenal av studieteknikker. Min erfaring: jeg lærer meg ting langt mer effektivt nå enn da jeg var i skoleverket eller på universitetet. Dels fordi jeg har blitt flinkere til å lære, men mest fordi vi har fått flere måter å tilegne oss kunnskap. Her er en liten godtepose av muligheter:

  • Universiteter verden over legger ut åpen “courseware”: videoforelesninger, notater, pensum, oppgaver, fritt tilgjengelig på nett.
  • Screencasts er en fin blanding av foredrag og praktiske demonstrasjoner. Noen av dem må du betale for. De er derfor ofte optimalisert for å levere lærdom og verdi, mer enn en umotivert foreleser på Blindern noengang blir…
  • “So You’d Like To…”-guidene hos Amazon.com er i noen tilfeller knallbra utvalg av faglitteratur og fungerer bra som utgangspunkt for selvstudium.
  • Online nyhetsblogger og foredrag fra konferanser gjør deg oppdatert på tilstanden i fagfeltet ditt.
  • Podcasts og lydbøker gjør iPoden din til en forelesningssal – kanskje mens du tar oppvasken?
  • Møt andre engasjerte i meetups, brukergrupper, code camps og online studiegrupper. Få feedback fra likesinnede, ikke gjem deg bort!
  • Open source lar deg kikke bak kulissene og se hvordan andre utviklere jobber og tenker.
  • Mindmapping er en sterk måte å ta gode, raske notater mens du studerer.

Og dette var bare en tilfeldig utvalg. Med andre ord: dersom du begrenser deg til å kun lese en papirbok i ny og ne så handicapper du deg selv. Du har mange muligheter!

Absorber som en svamp. Hvis jeg har en ekstrem «læredag» så hører jeg på en podcast når jeg går til stasjonen på morran, leser litt i en relatert bok mens jeg sitter på toget, plugger inn iPoden igjen når jeg bytter over til tbanen til jobben, samme opplegg på veien hjem på ettermiddagen, og setter meg ned og koder en prototyp etter at ungene har lagt seg. Teknikkene nevnt i forrige avsnitt gjør det stadig enklere å presse inn læring flere steder i hverdagen enn man kunne før.

Jevn progresjon. Store skippertak kan fungere, men det er i lengden bedre å lære litt hver dag istedet. Når man er student så fungerer sånne «overdoser» til en viss grad, men det blir vanskeligere når du har jobb og familie. Tenk bærekraftig tempo…

Bruk det du lærer

Jobb med relevante prosjekter i arbeidstida. Dette er idealsituasjonen, men lar seg ikke alltid gjøre. Prosjekter krever vanligvis at vi leverer det vi allerede behersker, ikke det vi ønsker å lære mer om. Derfor kan det bli nødvendig å…

Lage ting på fritida. Bruk det du har lært til å gjøre sideprosjekter på egenhånd. Ambisjon og omfang trenger ikke være all verden, bare du lager noe konkret og nyttig. Du kan lage et verktøy eller en tjeneste som bare du selv trenger, eller slippe det som open source eller en kommersiell tjeneste for hele verden. Poenget er at du anvender kunnskapen til noe konstruktivt. Det kan være slitsomt å bruke fritida til dette – til gjengjeld eier du selv det du lager. Og du får en «portfolio» å vise til.

Lær det bort til andre! Når du formidler til andre (f.eks via kurs, blogging, foredrag) så tvinges du selv til å få bedre grep på stoffet ditt. Du trenger ikke være guru for å lære bort ting – det holder at du har noenlunde grep om temaet og evner å formidle det godt.

Robert «Uncle Bob» Martin sa på et av foredragene sine at en profesjonell utvikler må bruke tjue timer hver uke på å forbedre seg som håndtverker. Dette er kanskje ekstremt – men hvor mye gjør du selv? Og hvordan lærer du nye ting? Del gjerne av egen erfaring i kommentarene under!

2 kommentarer om “Frihet til å lære: egenopplæring for systemutviklere”

  1. Dette er en realitet, som alle som studerer IT burde være klar over. Learn how to swim or sink like a stone. Heldigvis så er det morsomt å drive med selvutvikling. Det at vår bransje krever at vi alltid utvikler oss, gir oss et fortrinn overfor andre bransjer. Selv vet jeg ikke om noe mer tilfredstillende enn å holde på med sideprosjekt. Det er nesten mer gøy enn jobben. Mange klager på for lite tid, men til disse menneskene har jeg bare en ting å si; Figure It the %$&* Out. Har du tid til sudoku, så har du tid til å lære. Hvis du ikke liker å bygge og ikke liker å lære, så vil du på et eller annet tidspunkt gi opp hele læreprosessen; skaffe deg slips og gå på en meningsløs jobb. Så finn et nytt giv inni deg og gå ut der og skap noe. Det er en herlig egotripp.

  2. Takk for et utrolig bra innlegg! Som ansvarlig for kompetanse- og karriereutvikling i Steria synes jeg du løfter fram på en veldig konkret måte både hvilke muligheter som faktisk finnes, og du tar litt livet av «har – ikke – tid «argumentet. For dette handler mer om en holding og et syn på hvordan læring skjer, mer enn om å ha mye ledig tid i løpet av dagen. Og virkeligheten i konsulentbransjen er jo dessverre ikke alltid slik at man til enhver tid får jobbe på de mest spennende og utviklende prosjektene. Et annet viktig poeng her er at du selv er ansvarlig for din egen faglige utvikling. Din nærmeste leder kan legge til rette, organisasjonen du jobber i kan lager gode programmer, men du må selv drive dette. Og du lærer noe virkelig godt når du skal lære bort til andre. Det er en av grunntankene i måten vi driver Steria akademiet på, Her er 99% av «lærerne» og kurslederne egne ansatte. På den måten skjer det læring på «to sider av kateteret»

Legg igjen en kommentar