Extreem Programmeren, Snel Uitproberen (Rapid Prototyping)
Netsense probeert zo pragmatisch mogelijk te werken om zijn doel te bereiken: een product op tijd en binnen het gestelde budget te leveren.
Waarom Extreem Programmeren?
Omdat het gezond is! Effe serieus: een van de problemen met programmeren is dat het zwaar werk is: je moet je behoorljk concentreren, met veel herhalende taken. Dat betekent dat we gemakkelijk fouten kunnen maken, en dat deze fouten onmiddellijk gevolgen hebben: een programma werkt dan niet, of niet correct.
Om dat te voorkomen zijn er verschillende benaderingen. Twee sets ogen om fouten te voorkomen is een van de mogelijkheden.
Testen als onderdeel van het programma is een ander onderdeel. Dit voorkomt slordige omweggetjes.
Korte deel projecten, met duidelijke doelen en verhaallijnen is een ook een onderdeel. Dit voorkomt grote projecten zonder breekpunten, en maakt het mogelijk om snel de software aan te passen als de programmatuur niet de kant opgaat die je zou willen.
Dit zijn allemaal denkbeelden van extreem programmeren, van DSDM, van agile werken en van andere moderne werksmethoden.
Hierboven beschrijven we de ideale wereld, waarbij er voldoende tijd en mankracht is om op een rustige en evenwichtige manier tot een goed resultaat te komen. De praktijk valt nogal eens anders uit: te laat komt men er achter dat het werk niet op tijd klaar komt, dan worden er extra mensen ingeschakeld, waardoor het project nog meer vertraagt, vervolgens laten we bepaalde eisen maar zitten, wordt het testen ingekort, of niet gedaan, en eindigen we met de hakken over de sloot net voor de afsluitende borrel met een product dat niemand gelukkig maakt, maar het is in ieder geval iets…
Enfin, we doen ons best.
Buikbaarheid (Usability) en toegankelijkheid (Accessibility()
Een ander begrip dat we voor ogen willen houden is de bruikbaarheid en toegankelijkgeid van de programma’s die we schrijven. Dat betekent niet alleen dat visueel gehandicapte personen in staat moeten zijn de software te gebruiken, maar ook een duidelijke scheiding tussen de presentatie-laag van het programma en de gegevens-inhoud van het programma, ook wel het zicht op en de gegegevens van het programma genoemd.
Deze scheiding maakt het een stuk eenvoudiger om de gegevens te ontsluiten voor andere platformen:
slimme telefoon-apps in plaats van web-browsers, tablets in plaats van pc’s.
Broncode op verzoek
Tenslotte wordt het meeste van wat we bouwen met de bron-code geleverd. Dat betekent niet dat de klant de eigernaar van de code is, tenzij dat op uitdrukkelijk verzoek zo is afgesproken. Het betekent dat andere ontwikkelaars de code kunnen verbeteren en fouten kunnen repareren, zelfs als de oorspronkelijke ontwikkelaar niet meer betrokken is bij het project.