Hvordan lage minesveiper i JavaScript på under 14 minutter

Denne øvelsen ble opprinnelig utført foran publikum på Go Open / Communities in Action eventet i mars 2011.

En code kata er en enkel øvelse for å skjerpe programmeringsferdighetene dine. Det vil si – du trener bare problemløsning den første gangen du utfører øvelsen. Så gjentar du øvelsen, om og om igjen, til det sitter i fingerspissene. Og hver gang prøver du å gjøre det litt kjappere. Hensikten er å trene hastighet, teknikk og verktøy.

Les mer…

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…

Les mer…

Interaktiv programmering: utforsking, læring og produktivitet

Dette er blog-versjonen av et foredrag som jeg holdt på JavaZone 2010.

Jeg har fått dilla på dynamiske programmeringsspråk (JavaScript, Ruby, Lisp, med flere) i det siste. Et av fellestrekkene ved slike språk er at de lar deg programmere interaktivt. Vet du ikke hva interaktiv programmering er? Flott, da har du kommet til riktig artikkel!

Les mer…

Lær deg et scriptspråk!

La oss si at du er en systemutvikler. Du er ansatt for din ekspertise i et av de «to store» applikasjonsspråkene – Java eller C#. Disse språkene kan brukes til svært mange oppgaver. Du kan teoretisk løse ethvert problem med dem, og de er sannsynligvis hovedgrunnen til at cv-en din er salgbar. Så hvorfor lære noe mer enn Java eller C#?

Jeg skal fortelle deg hvorfor du bør lære deg et s.k. scriptspråk. Scriptspråk har andre styrker enn Java og C#, og tilfører allsidighet og produktivitet til verktøyskuffen din. En kompetent håndtverker bruker mer enn hammer på jobb: skrutrekker, meisel og knipetang må også med.

Les mer…

Hold stø kurs med autotesting!

Unit-tester er nyttig for de fleste systemutviklere.

Noen av oss kjører strikt, metodisk testdrevet utvikling. Andre bruker bare automatiserte tester nå og da som sikkerhetsnett for å unngå regress-feil. Hvor ofte fyrer du selv av testene dine? Kjører du testsuiten din en gang i ny og ne, eller strikt for hver metode du implementerer?

Jeg liker å kjøre testene mine ofte mens jeg arbeider. Det jeg liker enda bedre er å la utviklingsmiljøet mitt kjøre dem for meg, automatisk. Poenget med yrket vårt er jo nettopp å automatisere og effektivisere arbeidsprosesser – dette forsøker jeg å gjøre også med mine egne rutiner og verktøy. La oss se hvordan vi kan få til dette.

Les mer…

Slik forbereder og gjennomfører du et teknisk kurs

Jeg holdt nylig en teknisk workshop for noen kollegaer, og forsøkte da å markedsføre, forberede og gjennomføre kurset på en hensiktsmessig måte. Her er noen prinsipper og teknikker som fungerer bra.

Les mer…