Updating the toolbox

Als developer is het een onbegonnen taak om op de hoogte te blijven van elke nieuwe ontwikkeling binnen de wereld van software. Denk maar aan de ontwikkeling van efficiëntere omgevingen, breaking changes in een API, nieuwe features in je favoriete programmeertaal, etc. Bijgevolg is het ook bijna onmogelijk om elk stuk software up-to-date te houden.

EVENWICHT TUSSEN OUD EN NIEUW

Ook niet elk shiny new thing is de moeite waard. JavaScript frameworks zijn hier het standaardvoorbeeld van. Als je elke website wilt herschrijven op het moment dat er iets nieuws uit komt, staat er nooit een afgewerkt geheel in productie.

Daarentegen is het toch belangrijk om niet nodeloos te blijven vasthouden aan verouderde technologie. Nieuw is soms wel degelijk beter. Kijk maar naar .NET Core, dat sneller en lichter is dan het oudere .NET Framework. Het komt er dus op neer om een gezonde balans te vinden tussen nieuw en oud.

WAY OF WORK BIJ BESTAANDE APPLICATIES

Bij Novado hebben we daartoe een aantal duidelijke keuzes gemaakt. Bestaande applicaties zetten we niet zomaar over: de voordelen moeten namelijk voldoende zwaar doorwegen terwijl de risico’s beperkt moeten blijven.
Sommige voordelen wegen daarbij zwaarder door dan andere.

Als we door één van onze libraries met een security risk zitten, dan zetten we alles op alles om dat op te lossen. Soms kan een nieuwe release ook betekenen dat we een bepaalde feature kunnen implementeren die voorheen onmogelijk was.

Elke aanpassing aan een bestaand product blijft natuurlijk wel een risico - we moeten er dan ook omzichtig mee omspringen. Een handige tool hiervoor is het Strangler Pattern.

(Microsoft, 2017) 

Met deze way of work komt het erop neer dat je oud en nieuw laat samenwerken zonder iets kapot te maken. Het oude blijft werken - al dan niet achter de schermen - en wordt gradueel vervangen door het nieuwe (als dat al nodig is). Dit pattern passen we nu – voorlopig succesvol – toe binnen eGovFlow.

ONZE GO-TO TOOLKIT

Voor gloednieuwe applicaties zijn we natuurlijk iets vrijer in onze keuzes, maar ook hier houden we vast aan bepaalde principes. Zo koos Novado ervoor om Vue.js en .NET Core te combineren. Vue.js is een aangenaam framework om mee te werken door de goede mix tussen vrijheid en conventies. .NET Core is sneller, efficiënter en lichter dan zijn voorganger. Ondertussen is het ook overduidelijk dat Microsoft volop inzet op dit nieuwe framework.

INNOVATIES IN .NET CORE & VUE.JS

Zelf binnen nieuwe applicaties worden we al snel geconfronteerd met veranderingen. We passen echter overal dezelfde regel toe: niet zomaar alles overzetten.

Zo implementeerden we recent .NET Core 3.1. Voor actieve projecten die al werkten met .NET Core, was het risico zo klein dat de overschakeling haast vanzelfsprekend leek.

De nieuwste versie van Vue.js, daarentegen, is iets ingrijpender en zal dus niet zomaar toegepast worden.
Als we ervoor kiezen om Vue.js 3 uit te rollen, dan zal dat - net zoals altijd - heel berekend gebeuren, door het stapsgewijs te introduceren in bestaande code.

Wil je onze Software Innovators op de voet volgen? Hou Novado in de gaten via LinkedIn.