Paul Graham er en utvikler som tjente seg rik på å utvikle en nettbasert tjeneste for å sette opp nettbuttikker. Han solgt selskapet til Yahoo, og fikk betalt i aksjer like før aksjekursen tok av.
Tiden etterpå har han brukt til å skrive provoserende artikler om programmering og forretningsdrift, samt å lære gründere hvordan de bør starte en høyteknologisk oppstartsbedrift.
Les også:
- [09.05.2008] Pioner-brukere foretrekker fortsatt Microsoft
- [15.04.2006] Hvordan bli rik som programmerer
- [23.02.2006] Startet ny tjeneste med 80.000 kroner
I sin siste artikkel tar han for seg hvordan de beste utviklerne jobber, og hvordan det går på tvers av hvordan programvareselskaper og andre bedrifter organiserer sine utviklere.
En god utvikler holder sin egen kode i hodet, omtrent som på samme måte som en dyktig matematiker, hevder Paul Graham. Det gjør det mulig å bearbeide programmet på en helt annen måte enn hvis man hele tiden er nødt til å skrive ned og lese gjennom koden.
For å klare det, er det nødvendig å jobbe på en litt annen måte, og med litt andre rammebetingelser enn hva mange utviklere har på sin arbeidsplass.
For å få samlet tankene og oppnå nødvendig konsentrasjon, tar det ifølge Graham som regel en halvtime bare å komme inn i rett modus. Det er ikke mulig hvis man hele tiden blir forstyrret, eller hvis det går lang tid mellom hver gang man jobber med prosjektet. For utviklere som jobber i et åpent landskap, er dette gjerne en praktisk umulighet.
I de fleste større utviklingsprosjekter er det en vedtatt sannhet at arbeidsdagen ikke bør strekkes for mye ut, fordi de færreste klarer å prestere like godt etter mange timer. Dette er Graham totalt uenig i. Han mener at utviklere gjør det best når de får sitte i fred og jobbe mange timer på rad, mens de hele tiden har programmet og alle dets detaljer i hodet. 12 timer er en passe arbeidsøkt, ifølge Graham. Han ser ikke noe galt i å strekke det helt til 36 timer, hvis det føles riktig for utvikleren.
- Hvis man ser på hvordan programvare blir utviklet i bedrifter, ser det nesten ut som om de med vilje prøver å gjøre alt feil, skriver Graham i en artikkel på sin hjemmeside.
Han henviser til at organisasjoner stort sett behandler individene som jobber for dem som utskiftbare deler, noe som fungerer bra for parallelliserte oppgaver, som å utkjempe kriger, men som på ingen måte fungerer når det er snakk om å komme opp med gode ideer.
- Det å ha ideer er ikke parallelliserbart, og det er det programmer i virkeligheten er: Ideer, skriver Graham.
Graham mener at verken programvarebransjen, eller andre bransjer har skjønt hvor viktige individuelle geniale programmerere er, og at det er derfor de virkelige store teknologiske programvareløftene kommer fra unike individuelle personer som lykkes på tross av bedriftens organiseringer.
Slik bør gode utviklere jobbe, ifølge Graham:
- Unngå forstyrrelser
- Jobb lange skift
- Bruk kortfattede programmeringsspråk
- Omskriv programmet mange ganger
- Skriv lesbar kildekode
- Jobb i små grupper
- Ikke la flere jobbe på den samme koden
- Start i det små
Her kan du lese Paul Grahams artikkel på hans hjemmeside.