Zes productiviteit tips die programmeurs weten

De term lifehacking heb je misschien wel eens gehoord als je je bezig houdt met productiviteit, en slimmer werken.

Deze term komt oorspronkelijk van programmeurs die slimme scripts maakte, om de computer dingen te laten doen waar ze zelf geen zin in hebben.

Wat dat betreft zijn programmeurs vaak de prachtige voorbeelden van strategisch lui.

In dit artikel deel ik vijf dingen met je die programmeurs weten, waardoor zij productiever zijn dan andere mensen.1

Sneller typen heeft een enorme impact

Sneller leren typen kan een enorme impact hebben op je productiviteit.

Als kenniswerker besteed je waarschijnlijk heel veel tijd aan je toetsenbord.

Daarom is het belangrijk dat je 1) een goed toetsenbord hebt (wat dat precies voor jou betekent zal verschillend zijn, maar waarschijnlijk wil je wel iets wat ergonomisch verantwoord is — zoals mijn persoonlijke favoriet), en 2) redelijk snel kunt typen.

Omdat je veel moet typen, is dat namelijk ook al heel snel je bottleneck. Door sneller te typen kun je sneller e-mails schrijven, je gedachten vlugger op papier zetten, en gewoon simpelweg meer gedaan krijgen.

Ik typ vrij snel, en nog steeds merk ik dat mijn typesnelheid vaak het probleem is — ik weet al precies wat ik wil zeggen, nu moet het alleen nog op papier komen.

Zelfs 1% beter worden kan een enorme impact hebben op je algehele productiviteit.

Hoe kun jij dit inzetten?

Vijf minuutjes per dag besteden om sneller te leren typen met tools als 10fastfingers.com kan na 1 à 2 weken al heel veel uitmaken.

En wil je het nog wat strategisch luier aanpakken? Speel dan gewoon een beetje vals, en leer tovertypen, om wel honderden woorden per minuut te typen. 😉

Optimaliseer voor lezen, niet voor schrijven

In veel gevallen is de snelheid waar iets mee gelezen kan worden veel belangrijker dan de snelheid waarmee het geschreven kan worden.

Er zijn uitzonderingen natuurlijk (bijvoorbeeld bij backups, die zul je waarschijnlijk meer schrijven dan lezen), maar bij veel dingen is er veel meer sprake van lezen.

Neem iets simpels als een Facebook post of een tweet: als jij er één schrijft en opslaat is dat één schrijf-actie.

Als tien mensen jouw post vervolgens lezen, zijn dat 10 lees-acties. En dat is al als maar 10 mensen het lezen!

Ook in (programmeer)code geldt dit: je bent veel vaker je code aan het lezen, dan aan het schrijven. Dus besteed liever iets meer tijd aan het schrijven, zodat het lezen later makkelijker is.

Hoe kun jij dit inzetten?

Het voelt soms alsof het makkelijker is om gewoon snel een mailtje af te raffelen, of alleen het minimaal nodige in een rapport te zetten, maar uiteindelijk ben je er vaak meer tijd aan kwijt.

Ten eerste: als meer dan één persoon het moet lezen, zijn zij allemaal meer tijd kwijt, omdat jij een beetje tijd bespaard hebt (denk je 😉).

Wanneer je in een team werkt ben je als algeheel team dus veel minder efficiënt.

Ten tweede: vaak ben je eigenlijk meer tijd kwijt. Want door jouw korte mailtje, krijg je weer een mailtje terug met meer vragen (die je had kunnen weten), en moet jij ook alles weer lezen.

Daarom heb ik wel eens gezegd: meer typen kan je tijd besparen.

Computers kunnen veel sneller denken dan jij

Computers kunnen veel sneller denken dan jij.

Dat is geen belediging, het is gewoon een feit — computers denken sneller.

Daarom kunnen ze winnen met schaken, veel sneller leren dat er niet te winnen valt met boter-kaas-en-eieren, en lastige berekeningen doen.

Dat betekent overigens niet dat ze overal beter in zijn (Dwight kan nog steeds beter verkopen dan een computer), maar dingen die samen te vatten zijn in een proces kun je vaak sneller door de computer laten doen.

En niet alleen is het sneller, de kans op fouten is ook kleiner. Dat is dus ook een reden waarom je wilt automatiseren.

Wat programmeurs overigens niet willen weten, is dat automatiseren niet altijd de moeite is. 😉


Hoe kun jij dit inzetten?

Zelfs een simpele basis van automatisering leren kan je enorm helpen om tijd te besparen.

Het tovertypen wat we net genoemd hebben is daar een voorbeeld van: elke e-mail die je niet helemaal hoeft uit te typen scheelt toch weer.

Twee trucjes die bijna iedere programmeur je wel zal vertellen:

  • Wanneer je hetzelfde meerdere keren doet, moet je gaan nadenken of het automatisch kan (dit is [het DRY-principe][dry]: Don’t Repeat Yourself);
  • Elke keer dat je merkt dat je handmatig gegevens van één systeem naar een ander zet, moet je je sterk afvragen of het geautomatiseerd kan worden.

Denk bijvoorbeeld aan het kopiëren / plakken — of zelfs overtypen(!) — van factuur-gegevens uit Excel naar Word.

Ook wanneer je het nog niet zelf kunt, is het waarschijnlijk uiteindelijk goedkoper om het één keer te laten automatiseren door iemand, dan het constant zelf te doen.

Probeer vooral heel bewust te zijn wanneer je werk doet, of het eigenlijk werk is wat de computer voor je zou kunnen doen.

Het is belangrijke om de juiste apparatuur te hebben

De juiste gereedschappen, of dat nou hamers of apps zijn, zijn enorm belangrijk.

Dit is natuurlijk niet helemaal uniek: een wasmachine-monteur zal je ook vertellen dat zo’n gereedschapsetje van de Action niet ideaal is voor zijn werk.

Een verschil is dat je bij programmeurs vaak veel meer ziet dat ze hun hele omgeving exact goed inrichten. Dus niet alleen de favoriete code editor, maar ook alles er om heen.

Een goede ergonomische stoel (het is inmiddels een soort cliché, maar Herman Miller Aeron-stoelen zijn nog steeds populair — en ik zit er zelf ook in eentje), verstelbaar bureau, en monitoren op de juiste hoogte.

En hulpmiddelen in de browser, handige tooltjes, een laptop met het juiste besturingssysteem. Als alles klopt ben je zoveel productiever, dat de investering in geld en tijd zich makkelijk terugbetaalt.

Hoe kun jij dit inzetten?

Ook als je succesvol vanuit huis werkt is het nog steeds belangrijk dat je niet gewoon aan je keukentafel zit.

Dat is een prima voor een keertje, maar als het langer is wil je echt een werkplek inrichten.

En investeer ook in de zaken die je nodig hebt om je werk goed te kunnen doen. Het is verleidelijk om te vragen "of het niet gratis kan" als iemand je iets aanbeveelt, maar het is vaak veel beter om een beetje te investeren.

Net als met het automatiseren: het kost je één keer tijd (of geld), maar uiteindelijk krijg je die veel meer terug.

Bovendien maakt het je werk vaak leuker, wat ook een belangrijke factor is!

Je hebt niet altijd de nieuwste tools nodig

En tegelijkertijd zullen goede ontwikkelaars je vertellen dat tools allemaal niet zoveel uitmaken.

Je kunt steeds switchen naar het nieuwste, hipste framework, of de laatste taal, of de nieuwste app…

Uiteindelijk gaat het er gewoon om dat je je werk gedaan krijgt. Op een manier die voor jou werkt.

Is er een nieuwe programmeertaal die wel 20% sneller is dan je huidige? Ok, mooi.

Maar hoe goed is de ondersteuning? Hoeveel moet je opnieuw leren? Is het al getest in omgevingen vergelijkbaar met die van jou? Moet al het werk wat nu gedaan is opnieuw gedaan worden? (Wat tijd is die je niet kan steken in het verder verbeteren van je huidige product.)

Hoe kun jij dit inzetten?

Veel mensen die zich een beetje bezighouden met productiviteit zijn steeds op zoek naar dat beetje extra. De shiny new app die alles gaat fixen.

Ineens wil iedereen Notion gebruiken om alles te doen.

Maar weet je, uiteindelijk maakt het niet zoveel uit. En ben je vooral veel tijd kwijt aan het leren van een nieuwe app.

Focus op de dingen die écht een verschil maken voor jouw business, en dat is zelden een nieuwe tool.

Het wiel is al duizend keer uitgevonden (en soms is het vierkant)

In software ontwikkeling is er een concept van libraries; bibliotheken die je kunt gebruiken in jouw project.

Dat kan iets zijn wat je zelf eerder gemaakt hebt, of iemand van jouw team, of gewoon helemaal iemand anders.

Je kunt zelf gaan uitzoeken hoe je PDF-bestanden uitleest in de programmeertaal PHP, of je kunt gewoon de code van iemand anders gebruiken.

En zo gebruik je het als een soort bouwstenen, die je gewoon als LEGO-blokjes op elkaar zet.

Aan de andere kant: soms is het wiel inderdaad al duizend keer uitgevonden, maar zijn ze allemaal vierkant.

En als jij een manier ziet die echt beter is, bijvoorbeeld door het wiel rond te maken, is dat ook iets wat je aan wilt pakken. Omdat iets altijd op een bepaalde manier gedaan is, wil dat niet zeggen dat dat ook goed is.

Je kunt je wel afvragen waarom het zo gedaan is, en nooit zomaar zelf je eigen encryptie-methode gaan gebruiken, maar soms heb je gewoon echt een betere manier gevonden om iets te doen.

Mooi, dat kan een product op zichzelf worden. 🙂

  1. Het wiel is al duizend keer uitgevonden, maar soms is het vierkant. Enerzijds dus: focus op jouw core business, gebruik libraries voor de rest. (Of delegeer. 😉) Anderzijds: dat iedereen iets op manier X doet betekent niet dat het goed is.

Hoe kun jij dit inzetten?

Focus op de dingen die uniek zijn voor jou.

Je moet niet je eigen boekhoudpakket gaan bouwen, wanneer er gewoon producten als Moneybird en Moneymonk zijn.

Niet alleen is het enorm zonde van je tijd, waarschijnlijk zijn er ook nog 1001 dingen waar jij helemaal geen rekening mee gehouden hebt.2

Gebruik bestaande producten, delegeer naar experts, en zorg dat jij doet waar jij goed in bent.


  1. Het leuke is, dit geldt niet alleen voor programmeurs. Toevallig is dat een branche waar ik zelf erg bekend mee ben, maar waarschijnlijk zijn er in jouw branche ook dit soort voorbeelden! Als je een leuke hebt, mail me dan even. ↩︎

  2. Ik weet nog dat ik ooit in mijn simpele boekhoud-spreadsheet "ineens" ondersteuning moest inbouwen voor afschrijvingen. Wat een gedoe… Nu al heel wat jaren gelukkig met Moneybird.) ↩︎

[voornaam]
[voornaam]
[emailadres]
[emailadres]
[submit]
[submit]
[submit]
[submit]
[formId]
[formId]
[return]
[return]
[formName]
[formName]
[voornaam]
[voornaam]
[emailadres]
[emailadres]
[submit]
[submit]
[submit]
[submit]
[formId]
[formId]
[return]
[return]
[formName]
[formName]
[voornaam1]
[voornaam1]
[email1]
[email1]
[submit]
[submit]
[submit]
[submit]
[formId]
[formId]
[return]
[return]
[formName]
[formName]
[voornaam1]
[voornaam1]
[email1]
[email1]
[submit]
[submit]
[submit]
[submit]
[formId]
[formId]
[return]
[return]
[formName]
[formName]