W1siziisijiwmtkvmdevmtuvmtyvntivmjuvotizl3zyzxnlbglqa2ugbgvnywn5ignvzguuanbnil0swyjwiiwidgh1bwiilciymdawedy0mcmixv0

Vreselijke legacy code? Dat heb je te danken aan een van deze types!

Ben je ooit bij een nieuwe opdrachtgever begonnen en kreeg je direct jeuk van de code die je zag. Zoveel jeuk dat je eigenlijk meteen alles wilde herschrijven of misschien zelfs naar huis wilde gaan? Legacy code is onvermijdelijk. Er zijn namelijk vaak ontwikkelaars die voor jou aan een opdracht hebben gewerkt. Maar soms zou je wel een hartig woordje willen spreken met je voorganger…

Legacy code is natuurlijk niet altijd slecht

Meestal gaat oud werk prima samen met nieuw werk, de meeste legacy code is dus helemaal niet slecht.  Ook niet als het op een ouder framework draait. Zeker niet-techbedrijven investeren veel in software en willen die niet jaarlijks updaten als dat niet nodig is.

Dus wanneer wordt legacy code nu echt een probleem?

Wij vroegen het aan onze developers en kwamen tot 5 types die ervoor zorgen dat je je haren uit je hoofd zou willen trekken. Herken je jezelf in een van deze types, dan mag jij je in een hoekje gaan schamen. Herken je een collega in een van deze types, voel je dan vrij om op creatieve wijze wraak te nemen. Onze suggestie? Suikervrije Haribo-beertjes... 

De raketgeleerde

De raketgeleerde is niet een of ander wonderkind dat in al zijn slimheid een iets te ingewikkelde code heeft geschreven. Nee, het is de developer die kleine problemen oplost door er een raket op te gooien. Je kent ze wel, de collega’s die liever geen gebruikmaken van standaard libraries en frameworks – nee, zij schrijven alles zelf!

En als ze weggaan? Tja, dan is het aan jou om uit te vogelen hoe alles eigenlijk werkt. En de stagiaire of nieuwe medewerker? Die moet intensief worden ingewerkt, want de enige support is de man (of vrouw) die het gebouwd heeft.

De tech-verslaafde

We kennen ze allemaal de collega’s (of nog erger managers) die altijd helemaal fan zijn van de laatste ontwikkelingen. Dat nieuwe hippe framework of die compleet andere manier van werken is het enige waarover ze nog kunnen praten. En ze zijn niet alleen fan, ze staan er ook op dat het zo snel mogelijk geïmplementeerd of gebruikt moet worden.

Zucht, daar is weer een of ander obscuur framework dat je halsoverkop moet gaan gebruiken. Probeer daar over 5 jaar nog maar eens developers voor te vinden…

De verdrinkende stagiaire

Soms zijn bedrijven te gierig om een senior in te huren wanneer ze die nodig hebben. Dus wordt de stagiaire gevraagd om het te doen, “want hij kan toch ook programmeren?”. De stagiaire doet natuurlijk zijn best, maar een code die aan elkaar hangt met gegoogelde oplossingen en workarounds, is over het algemeen niet de beste oplossing voor de lange termijn.

De brandjesblusser

Wanneer je iets snel wilt oplossen, los je het vaak alleen op voor dat moment. Het echte probleem wordt niet aangepakt, er wordt alleen een brandje geblust. Denk aan een app waarin een maximum aantal gebruikers is geprogrammeerd. Zodra je tegen dat maximum aanloopt, kun je het maximum aantal gebruikers verhogen (de brand blussen) of een duurzame oplossing zoeken waardoor je niet bij elke groeispurt met hetzelfde probleem zit. Als een brandjesblusser te lang op een project zit, heb je vaak legacy code vol met snelle oplossingen en dat-komt-later-wel-constructies. Helaas kwam “later” nooit en ben jij nu degene die het mag oplossen.

De sprintende wijsneus

De laatste twee types zijn vooral door omstandigheden codevervuilers, maar de sprintende wijsneus zorgt ervoor dat hele teams genoodzaakt slechte code moeten schrijven. Wanneer de manager aan hem vraagt iets te doen, zegt hij dat het binnen twee dagen geregeld is. TWEE DAGEN?! Dan is de code misschien af, maar dan wel zonder debuggen en testen. Maar nu de manager weet dat het binnen twee dagen kan, wil hij het natuurlijk ook binnen twee dagen hebben. Dus rennen jullie allemaal achter het plan van de sprintende wijsneus aan. Dat komt later wel., denk je en zo word ook jij een brandjesblusser.

Wat we hiervan leren? Dat door tijdsdruk en onrealistische verwachtingen iedereen een web van problematische code kan spinnen. Bedenk dus voordat je jouw wraakacties plant ook even wat je zelf kunt doen om het te voorkomen.