Investeer een paar uur in de verduurzaming van je applicatie
Duurzaamheid is een hot topic als het gaat om voedsel, ondernemen, energie... Toch lijkt het alsof de ogen (nog) niet gericht zijn op software engineering als het aankomt op dit thema. Betekent dit dan dat je er niks mee hoeft? Ik vind van niet. Het opschonen en optimaliseren van je applicatie kan ervoor zorgen dat je werk niet alleen groener, maar ook leuker wordt. Mijn tip is dan ook: reserveer eens wat tijd met je team om kritisch te kijken naar wat je nu écht nodig hebt op applicatieniveau.
Wat we allemaal herkennen is technical debt. Je begint met een heel vet idee, die breid je uit en voor je het weet zit je met work arounds en bug fixes. Zorgen voor later, maar in de praktijk komt het er nooit meer van om er wat mee te doen. Zo eindig je na een aantal jaar met een complexe applicatie. Dat is het moment dat je terug moet naar de basis: wat heb je écht nodig? Zijn er functionaliteiten die eigenlijk uit kunnen of die je nu efficiënter zou schrijven? En hoeveel data moet er opgeslagen worden? Hoeveel data stuur je terug naar de gebruiker? Als je dat voor jezelf op een rijtje zet vind je altijd wel een aantal stappen die je kunt verbeteren. Leuk is inderdaad anders, maar geloof mij: het heeft zijn voordelen.
Het belangrijkste voordeel is voor jezelf: aandacht besteden aan de duurzaamheid van je applicatie maakt programmeren leuker, al is het maar een paar uur per week. Je krijgt meer grip op je applicatie, omdat je dingen die in het verleden gemaakt zijn en die je soms lastig kunt onderhouden, opschoont. Ook levert het performancewinst op. Gebruik je minder data in je applicatie? Dan hoeft er ook minder opgeslagen en verzonden te worden. Dat scheelt in energieverbruik, tijd en geld. Ook al worden servers steeds efficiënter, ons dataverkeer en dataverbruik groeit harder. De vraag naar elektriciteit, grondstoffen en water groeit dus ook. Je betaalt voor alle servers die je aan hebt staan. Door op te ruimen kun je ze weer voor andere doeleinden (her)gebruiken. De USP richting klanten is dat je als softwareleverancier kunt bewijzen dat je bezig bent met duurzaamheid. De verwachting is dat dit ook steeds meer gevraagd wordt, denk aan het nieuws rondom de datacenters en hun verbruik van energie en water. Consumenten hebben hier nauwelijks grip op, maar wij kunnen wél een bijdrage leveren.
Wanneer voor mij het realisatiemoment kwam? Toen ik ruim 3 jaar geleden bij Topicus kwam werken, zag ik hoe groot onze applicatie was. Er werden veel verschillende nieuwe technieken gebruikt om data te verwerken, maar ook alle oude bleven staan. De stap om dit op te ruimen was erg groot, maar ondertussen werd het steeds lastiger om alles te onderhouden. Echt vernieuwen werd steeds moeilijker. Toen kwam bij ons het omslagpunt: we willen, moeten en kunnen terug naar minder servers. We hebben tijd vrijgemaakt met het team om de applicatie op te ruimen. Vanwege de AVG moesten we sowieso kritisch kijken naar de data die we verwerken en opslaan. Daarna gaf ik op TopiConf een presentatie over de organische groei van applicaties en technieken om duurzamer data te verwerken. Het resultaat? Het duurde nog ruim 2 jaar, maar alleen al binnen ons team bij de divisie Onderwijs hebben we 20 servers uit kunnen zetten.
Zoals ik al zei: duurzaamheid is geen hot topic binnen IT. Nog niet! Naar mijn mening zal dit niet lang meer duren. Neem zelf nu al een stap in de goede richting en loop voorop in het verduurzamen van je software. Het hoeft echt niet snel te gaan, het hoeft ook zeker niet in één keer te gebeuren. Daarbij maakt het ook niet uit welke rol je hebt in je team, iedereen kan iets doen. Sta er eens bij stil, heb het erover met collega’s en kijk welke stappen jullie kunnen zetten.
Benieuwd naar andere codekrakers? Je checkt ze hier of lees meer over je hoe realtime een feedbacksysteem in je applicatie bouwt in de Codekraker van Egbert.
Janneke Slaa-Geerlinks
Software Developer - Business Intelligence Specialist
phone 0570 662 662 mail janneke.slaa@topicus.nl