Honest comparisons that you really benefit from
   

Over rozen, Koos en code

Koos is een programmeur. Hij houdt van rozen, maar dat terzijde. Koos is elke dag bezig met programmeren. Elke dag opnieuw maakt hij een afweging over zijn te programmeren of geprogrammeerde oplossingen.

 

De volgende vragen spelen daarbij een rol:

  • Doet het wat het moet doen?
  • Is het snel?
  • Is het efficiënt?
  • Is het gemakkelijk aan te passen / uit te breiden?
  • Is het gemakkelijk aan te passen / uit te breiden door iemand anders?

De volgorde van bovengenoemde vragen, zal voor iedere situatie verschillen en dit zijn de vragen waar Koos vooral mee bezig is. Maar elke andere programmeur zal zo wel zijn eigen stokpaardjes hebben. En vast ook wel andere vragen.

programmeer-blogGJAls programmeur staat Koos bijna elke dag wel voor een nieuwe uitdaging en elke keer komen dezelfde vragen weer aan de orde. Er zijn veel factoren die meespelen in het antwoord op deze vragen. In de ideale wereld zou over elke oplossing een ‘Ja’ als antwoord moeten gelden op de gestelde vragen. En dat zonder mitsen en maren. Maar de werkelijkheid kent zaken als deadlines, quick fixes en “tijdelijke” oplossingen. Koos heeft ook wel eens een “tijdelijke” oplossingen geprogrammeerd. Tien jaar geleden. Werkt nog steeds… dat wel.

Koos’ ervaring leert dat investeringen die gedaan worden in de kwaliteit en duurzaamheid van de programmeercode, zichzelf uiteindelijk weer terugbetalen. Maar dat is wel eens moeilijk te verkopen, omdat de doorlooptijd van het werken aan een duurzame oplossing ten op zichte van een “quick fix”, met gemak 5 keer zoveel tijd kan kosten. Wat pas later vaak zal blijken, is dat die “quick fix”, uiteindelijk wel eens een hele dure kan zijn, omdat deze achteraf voor onverwachte en moeilijk opspoorbare bugs leidt. Zeker als vervolgens iemand anders er aan werkt en niet op de hoogte is van de fix. Een typische gang van zaken zou dan zijn, om alsnog voor een meer duurzame oplossing te kiezen.

Voor Koos is het een uitdaging op zich om een goede middenweg te vinden tussen “de goede oplossing” en “de snelle oplossing”. Je kan voor iedere oplossing doorslaan in het over-optimaliseren van je code en tot in de diepste details rekening houden met wat mogelijk komen gaat. Dat kost echter heel veel tijd. Aan de andere kant kun je doorslaan in het zo snel mogelijk produceren van een oplossing en alle “wat-alsjes” weg te zetten met een “dat-zien-we-later-welletje”. Want ookal leeft Koos behoorlijk bij de dag, hij krijgt jeuk van “dat-zien-we-later-welletjes”.

Tja, het leven van een programmeur gaat soms over rozen, maar altijd over code; programmeercode. Het leven van Koos gaat vaak over rozen en altijd over code; goede programmeercode. En dan hebben we het nog niet eens over Frits gehad… de bloemist.

Door Gert-Jan Jaarsma



Gert-Jan Jaarsma

© 1998 - 2024 Bencom Group BV > Founded in Groningen