En utviklers karakter

Dine personlige karaktertrekk har direkte innvirkning på din evne til å programmere. Karaktertrekkene som betyr mest er ydmykhet, nysgjerrighet, intellektuell ærlighet, kreativitet, disiplin og opplyst latskap. Overraskende nok gjør ting som rå intelligens, erfaring, ståpåvilje og mot like mye skade som nytte når det kommer til programmering.

Å være en av de bedre utviklerne har nesten ingen ting med talent å gjøre, og nesten alt å gjøre med å forplikte seg til personlig utvikling. Mange programmerere søker ikke aktivt ny informasjon og utviklingsteknikker, men stoler heller på tilfeldig tilgang til ny informasjon når de trenger det. Hvis du bruker en liten prosent av tiden din til å lese og lære om programmering, vil du derfor etter noen få måneder eller år klart skille deg ut fra de fleste andre programmerere.

Riktige karaktertrekk er først og fremst et spørsmål om å ha de riktige vanene. Den beste oppskriftene på å bli en god programmerer er å utvikle de riktige vanene – så vil resten komme naturlig.

Påstandene over er hentet fra Code Complete (fritt oversatt etter key points fra kapittel 33). De er på en måte overraskende, samtidig som de gir mening. Jeg er blitt spesielt oppmerksom på dette med vaner, og skjønner at om jeg skal bli en bedre utvikler så må jeg kultivere nye vaner. Og det er faktisk ganske enkelt om man gjør det på den riktige måten. Man må gå sakte frem, og gjøre ting riktig. Gjør små prosjekter hvor du f.eks. fokuserer på å gjennomføre TDD 100%. Eller å følge ett av SOLID prinsippene. Gjenta, gjenta og gjenta. Om ikke lang tid har du tillagt deg en ny vane.

“The moral virtues, then, are engendered in us neither by nor contrary to nature…their full development in us is due to habit…Anything that we have to learn to do we learn by the actual doing of it…Men will become good builders as a result of building well and bad ones as a result of building badly…So it is a matter of no little importance what sort of habits we form from the earliest age – it makes a vast difference, or rather all the difference in the world.”
-Aristotle

Bytt ut “moral virtues” med “programming skills”…

Kategorier: .net ninja.
RSS feed for kommentarene. Tilbaketråkk.

2 kommentarer til “En utviklers karakter”

  1. Halvard Says:

    Jeg har også lest boka en tid tilbake. Syntes den var god. Derimot lurer jeg på hvordan rå intelligens og erfaring kan skade. Hvis man kombinerer intelligens med erfaring skulle man vel bare bli en bedre programmerer med tiden? Man lærer av sine feil (intelligens) og gjør det bedre neste gang (erfaring). Eller?

  2. Torbjørn Says:

    Når det gjelder erfaring – det er ikke sjelden at man er skeptisk til “gamle” utviklere. Utviklingen skjer så raskt i bransjen vår, og utviklere som utdannes i dag lærer mere effektive måter å jobbe på enn det jeg gjorde. Erfarne utvikleres største utfordring er å lære seg av med dårlige vaner.., dvs. vaner som ikke er “gyldige” lengre.

    Innen systemutvikling utgjør dessuten informasjon fra bøker en mye større del av kunnskapen som er nødvendig for å “gjøre jobben” enn det personlig erfaring gjør.

    En annen ting som nevnes i boken er at utviklere som har hatt suksess innenfor faget har en tendens til å “flyte” på denne suksessen, og derfor stopper å utvikle seg. De fleste lærer det meste av det de bruker i løpet av de par første årene som utvikler.., deretter repeterer de denne (etterhvert utgåtte) erfaringen.

    Når det kommer til intelligens så er budskapet at det er ikke avgjørende hvor intelligent du er, men hvordan du bruker den. Det er viktig at man er ydmyk – de beste utviklerne (hevder forfatteren) er de som innser hvor små og utilstrekkelige hjernene våre er. Programmering er en øvelse i å kompansere for begrenset hjernekapasitet. Studier viser at ydmyke utviklere som kompanserer for sin feilbarlighet skriver kode som er enklere å lese og forstå – for seg selv og andre – og som har færre feil.

Skriv en kommentar

Tillatte tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>


Torbjørn: La oss anta to ulike definisjoner av Template Method pattern - de to ytterpunkte...

Lars-Petter: Hei igjen. Siden du inviterer til å ta diskusjonen i bloggen, og har tatt deg t...

Torbjørn: Lars-Petter: Det er én måte å se det på. Det er absolutt fortsatt Template M...

Lars-Petter: Hei. Har du ikke i prinsippet her gått over fra Template Method (arv) til Strat...

Christian Abildsø: I alle fall i C#, så føles dette som kode som blir mer fleksibel men vanskelig...

Torbjørn: Hei Henrik, og takk for tilbudet. Ble oppmerksom på Rasberry Pi for under en uk...

Henrik Sandaker Palm: Ang. større hobby prosjekt. Du er som er en slik rakker på programmering har j...

Øivind Nilsen: Slutt å bruke mobilnummeret mitt som eksempel !...

Bjørn Einar Bjartnes: Jeg har også latt meg fascinere av Clojure, uten at jeg har kommet så veldig l...

Bjørn Einar Bjartnes: Sweet :) Jeg tror egentlig jeg liker det som det er, med musikk. Litt av utford...

Mulig relaterte linker

 Hold deg oppdatert

Søk i bloggen

Ferske innlegg

  • Template Method del 4: Multippel arv
  • Template Method Intermesso
  • Template Method del 3: Bare funksjoner
  • Template Method del 2: På vei mot funksjonell programmering
  • Kategorier

  • .net ninja (37)
  • Bøker (17)
  • Diverse prosjekter (35)
  • DSL (10)
  • Erlang (10)
  • F# (5)
  • Hardware (1)
  • Jobb (77)
  • Julekalender (51)
  • kjempekjekt.com (23)
  • LISP/Clojure (33)
  • NNUG / community (60)
  • O/RM & databaser (10)
  • Off topic (116)
  • OO-design/clean code (30)
  • Podcasts (14)
  • Polyglot (77)
  • Ruby (27)
  • Silverlight / RIA (3)
  • Software/verktøy (20)
  • Softwareutvikling (20)
  • Testing / TDD (30)
  • the contiki strip (13)
  • User experience (3)
  • WCF (3)
  • Webutvikling (32)
  • WPF (9)
  • WTF (12)
  • Last ned Wallpaper

    Programmeringsbloggens tøffe skrivebordsbakgrunn med snippets fra ulike språk laster du ned her!

    Abonner via epost

    Om du vil kan du få alle nye blogposter tilsendt til din epost. Abonner nå, det er kjempeenkelt!

    Meta