Å bli en .NET ninja


søndag 28. desember 2008 .net ninja

ninja1o.png2008 har vært en flott år. Jeg har gjort mye gøy, og føler jeg har utviklet meg mye på det personlige plan. Men jeg er ikke helt fornøyd... Her kommer mitt nyttårsforsett for 2009.

Den siste tiden har jeg følt litt på at jeg ikke har utviklet meg så mye som programmerer som jeg skulle ønske meg. Jeg har nå vært ansatt hos Contiki lengre enn jeg har vært noe annet sted faktisk, og jeg merker at når man jobber lenge et sted så er det lett for at utviklingen stopper opp.

Og utvikling er viktig. Veldig viktig. Men nå har det seg sånn at jeg faktisk ikke har noe ønske om å skifte arbeidsgiver. Så hva gjør jeg da?

Jeg har alltid sagt at programmering er min hobby, og at jeg er så heldig som får betalt for å drive med det jeg liker aller best. Men jeg har ikke oppført meg som om dette er tilfelle. Jeg har blitt sløv, og jeg merker hvordan nye teknologier kommer til, mens tiden renner ifra meg og ferdighetene blir sløve.

I Contiki fungerer jeg som leder for et utviklingsteam, og bruker det meste av min tid til å veilede utviklere. Men jeg kjenner nå at jeg ikke ønsker å være en av dem som forsvinner oppover i systemet. Jeg vil ikke at min rolle som utvikler gradvis skal viskes ut og erstattes av diffuse arkitekturoppgaver og management-vissvass (no offence).

Nei, jeg vil bli en ultraflink utvikler - det er kodingen som tiltrekker meg. Jeg vil bli en programmerings-jedi, en überninja med imponerende kung-fu-ferdigheter. Klart jeg vil fortsette å inspirere og veilede teamet, men jeg må også inspirere og veilede meg selv.

Utviklingen i bransjen vår er ekstremt stor. Sannsynligvis er det lenge siden det har vært så spennende å være utvikler. Mulighetene er større enn noen gang før. Dette krever at vi som utviklere kontinuerlig må forbedre oss, og bruke energi på å henge med.

ninja3.png.NET ninja

Så nå er det på tide å ta noen grep. Jeg har vært programmerer i omtrent 10 år, og føler meg moden for å ta et nytt steg opp på systemutviklernes rangstige. Jeg iverksetter dermed prosjekt .NET ninja.

Ok.., hva i all verden er det da? Jo, tanken er at jeg målrettet og strukturert skal jobbe med å utvikle mine ferdigheter som programmerer. Men også at dette skal bli en livsstil. Jeg skal sørge for at jeg hver dag gjør ting som inspirerer meg til å utvikle meg videre.

Dette har mye med planlegging og utnyttelse av tid å gjøre. Og jeg har allerede gjort et par grep. Det første jeg har begynt med er å høre på podcasts. Det finnes mange, gode podcasts for programmerere, og mange tidspunkt i løpet av døgnet hvor det er ideelt å høre på dem. Jeg bruker tiden om morgenen før jeg går på jobb, tiden i bilen til og fra jobb, samt hver gang jeg går tur med hunden. Til sammen blir det rundt 12 timer hver uke.

ninja4o.pngSå i 12 timer hver uke hører jeg på inspirerende eksperter snakke om faget mitt. Dette har faktisk en enorm effekt. Jeg føler jeg har lært mer av dette den siste måneden enn jeg gjorde på den dobbelte tiden på universitetet. Jeg får en bred og god oversikt over hva som skjer og hva jeg bør studere nærmere. Og det eneste jeg mister er å høre nyhetsoverskriftene gjenntatt gang etter gang på NRK Alltid Nyheter mens jeg kjører til jobb.

En annen ting jeg har tatt opp igjen er å lese fagbøker. For dem som har lest den andre bloggen min så vet dere at jeg leser store mengder science fiction. Den siste tiden har jeg ofret dette til fordel for programmeringslitteratur. Jeg har nettopp lest Domain Driven Design Quickly, er snart gjennom Code Complete, og har startet på Application Architecture Guide 2.0 fra patterns & practices teamet.

ninja2o.pngVeien videre

Ok, så jeg har ulike kilder som inspirerer meg, og jeg leser for å lære nye ting. Da gjenstår bare én viktig ting, og det er praktisk erfaring. Jeg må planlegge hvilke teknologier og metoder jeg vil lære meg og bli bedre på, og finne måter å trene på dem. Jeg må aktivt starte prosjekter som gir meg verdi, samtidig som de ikke er så store at jeg ikke klarer å fullføre dem før min oppmerksomhet går over på noe annet (ref. open source prosjektet jeg er med på, hvor jeg ikke har vært så flink til å bidra utover pangstarten vi hadde i vår).

Jeg har mange tanker om dette her svirrende rundt i hodet akkurat nå, og som en del av .NET ninja-prosjektet kommer jeg til å blogge om mine utfordringer, oppdagelser og erfaringer. Jeg har bl.a. lyst til å fortelle om hvilke ferdigheter jeg mener en god utvikler må ha, og litt mer konkret om hvilke kilder til kunnskap jeg bruker. Jeg kommer også gjevnlig til å presentere hva jeg fokuserer på - min ninja backlog om du vil.

Kanskje kan jeg med dette inspirere flere til å fokusere mer på egen utvikling. Det hadde jo bare vært positivt. Jeg håper i alle fall du vil følge med meg på ferden. Så ønsk meg lykke til! KOWABUNGA!!!


comments powered by Disqus