Portfolio

TechGrow - klimaat controllers

Januari 2016 - September 2016

TechGrow maakt klimaatcontrollers en sensors voor kleine kassen voor privé gebruik. Deze controllers meten en regelen temperatuur, luchtvochtigheid en CO2 nivo. Daarnaast bieden zij een reeks sensoren aan, dataloggers en bewakingsmodules.

De controllers zijn gebaseerd op een AtMega328, dezelfde microcontrollers als in een Arduino. De software was toe aan vernieuwing; ik heb daarom de code herschreven in C++, gebaseerd op de Arduino IDE. Daarnaast heb ik een aantal hardware problemen opgelost omdat elektronica ëën van mijn hobby's is en daarom ben ik ook goed bekend met weerstanden, condensatoren, transistoren, triac's en dergelijke. De combinatie van hard- en software maakt dit een uitermate leuk project.

Invisible Apartment serie & Visual Novel Player

September 2014 - heden

Invisible Apartment is een serie 'visual novels' (digitaal stripverhalen) geschreven door Milan Kazarka. In eerste instantie was het alleen beschikbaar op de iPad en iPhones, en later MacOS. Er was echter ook sterke behoefte aan een versie voor Windows en Linux.

Daarom heb ik de code omgeschreven naar C++ en Qt, zodat het eenvoudiger is om het programma te porten. Dit vormt de basis voor Visual Novel Player, een engine om visual novels af te spelen op basis van een XML bestand.

Daarnaast heb ik de Engelstalige tekst nagelopen en zo nodig gecorrigeerd van Invisible Apartment, Invisible Apartment Zero en Ten Years Of Sleep.

SecureCOMZ.eu

November 2012 - februari 2013

SecureCOMZ biedt beveiligde communicatie (voice en chat) aan tussen mobiele telefoons door middel van speciale apps voor Android devices. Die apps heb ik niet geschreven, wel heb ik van scratch de website opgezet zodat registratie, facturatie en betaling mogelijk zijn. Voor de betaling kan de klant kiezen uit PaySafeCards van Mollie, iDeal of MultiSafePay.

De site is gebouwd met CakePHP, een flexibel PHP framework dat mij goed bevalt. Het grafisch ontwerp is gemaakt door Eurotech, waarmee ik eerder heb samengewerkt.

St. Antoniusziekenhuis Utrecht

December 2011 - juni 2012, januari 2014 - juli 2014, december 2015

Het St. Antonius ziekenhuis in Utrecht en omgeving heeft iets dat zelden voorkomt: het heeft een eigen ICT afdeling en ontwikkelt een groot deel van hun interne software zelf, waaronder een eigen Elektronisch Patiënten Dossier (EPD). Wat het helemaal uniek maakt is dat het ook nog eens onder Linux draait.

De software is geschreven in C++ en genereert HTML voor in een webbrowser. Maar dat is niet alles; in 7 maanden tijd heb ik gewerkt aan

Al met al een leuke combinatie van C++, HTML, JavaScript en nog een beetje CSS.

Anderhalf jaar later ben ik wederom gevraagd om voor het St. Antonius te werken, toen heb ik mij bezig gehouden met een scan applicatie die als brug fungeert tussen de webbrowser en TWAIN document scanners. Vanuit de webbrowser kan de gebruiker nu direct een document scannen en toevoegen aan het dossier van een patient.

NWWI

Mei 2011 - juni 2011

Het Nederlands Woning Waarde Instituut controleert en valideert woningtaxaties van ruim 4.300 makelaars in Nederland; hiermee wordt de kwaliteit van de taxaties gewaarborgd.

Bij het NWWI heb ik aan 2 projecten gewerkt:

Vlister Openlucht Baden

Februari 2011, juni 2012

De Stichting Vlister Openlucht Baden beheert 2 openlucht zwembaden in Haastrecht en Stolwijk. Ieder jaar worden hiervoor ±4.400 seizoensabonnementen aangevraagd. De verwerking van de formulieren, het incasseren van het abonnementsgeld en het (her)activeren van de bezoekerspasjes kostte ieder jaar veel tijd.

Met ingang van 2011 kunnen abonnementhouders daarom via de website van de zwembaden een abonnement aanvragen én direkt betalen met iDeal; de iDeal betaling is volledig geïntegreerd in de abonnementen-module. De module houdt rekening met gezinsabonnementen, senioren en heeft als bijzonderheid dat met één account meerdere gezinnen/abonnementen kunnen worden beheerd.

Een jaar later heb ik de code aangepast om met de nieuwe iDeal standaard om te kunnen gaan.

Radio G-FM: website voor online radiostation

Mei 2013

Eén van de gezelligste internet radiostations van Nederland, Radio G-FM was hard toe aan een nieuwe website. Samen met de eigenaar is een nieuw ontwerp gemaakt en de site omgezet naar Joomla.

Legal360: netwerksite voor juridische professionals

November 2009 - november 2010

www.legal360.nl is een netwerksite voor juridische professionals zoals advocaten, notarissen, rechters maar ook rechtenstudenten. Op deze site kunnen de mensen nieuws lezen, discussies voeren, cursussen boeken en elkaar op de hoogte houden van ontwikkelingen op juridisch vlak.

Voor deze site heb ik samen met een andere freelancer in 3 maanden tijd een aantal uitbreidingen geschreven, zoals een secretaresse-module voor het bijwerken van de profielen, het tonen van het netwerk van mensen, een wenskaarten module, een verbeterde registratieprocedure en vele andere optimalisaties en kleine aanpassingen. Daarnaast heb ik het systeembeheer van de Linux servers gedaan, inclusief het verhuizen van een aantal domeinen met e-mail.

LogosEuropa: webapplicatie voor binnenvaartschippers

Juli 2009 - heden

De binnenvaart heeft het momenteel moeilijk: crisis dit, crisis dat en geen schippersbeurs meer. Om een houvast aan binnenvaartschippers te bieden is Bankai Software benaderd om Logos Europa te ontwikkelen: een webapplicatie waar schippers de aangeboden reizen anoniem met elkaar kunnen vergelijken. Op basis van ingevoerde gegevens wordt een hele reeks getallen berekend die een maat geven voor de winstgevendheid van de reis.

Ik heb het project van begin tot eind begeleid, van het opstellen van een projectplan, verzamelen van requirements, formules en workflow tot implementatie, testen en oplevering. Het grafische ontwerp is in nauwe samenwerking met een webdesigner gemaakt, die tijdens het coderen dagelijks zijn wijzigingen doorvoerde.

Inmiddels is het project nog steeds in ontwikkeling; met kleine en grote uitbreidingen wordt de schipper nu nog beter geïnformeerd over de markt en zijn koppelingen met andere, gerelateerde systemen gerealiseerd.

Beveiligde remote support oplossing voor niet-standaard OS

September 2009

Om de helpdesk te ondersteunen heb ik voor een software retailer een remote desktop oplossing bedacht voor een OS waar geen standaard oplossing voorhanden was. Eisen waren o.a. dat de remote sessie beveiligd moest zijn met encryptie en door firewalls/NAT bij de klant heen moest werken. Er is een klein software package gemaakt dat door klanten geïnstalleerd kan worden, en met één druk op de knop kan de klant toegang geven aan de helpdesk tot zijn of haar desktop.

Elektronische agenda

Voor een vrijwilligersorganisatie in Rotterdam heb ik een elektronisch agenda systeem gebouwd als webapplicatie. Hierin kunnen activiteiten geboekt worden in diverse ruimtes, samen met de personen die bij de activiteiten betrokken zijn.

De agenda heeft een semi-publieke en een afgeschermde modus; in de semi-publieke mode zijn de activiteiten door iedereen te zien, maar niet welke personen. Voor de 2e modus moet ingelogd worden; men kan dan alle gegevens zien en eventueel bewerken.

Medische software

Ik heb (in loondienst) ruim 7 jaar gewerkt aan een medische applicatie voor analyse van hartcine's (MR en CT scans). De software begon als een C applicatie voor Sun & Linux, en is inmiddels getransformeerd tot een C++ applicatie op basis van Qt en draait op zowel Linux als Windows. Naast programmeren heb ik mij de laatste jaren ook bezig gehouden met het ontwerpen van diverse onderdelen van deze applicatie.

CVS conversie naar AccuRev

In het kader van een upgrade van CVS naar AccuRev (een ander, moderner revisie control systeem) moest een import gedaan worden. De oorspronkelijke CVS repository was groot en zeer complex met vele tags, branches en subbranches. Daarnaast was er de nodige 'vervuiling' door foutieve tags, handmatige aanpassingen en bestandsnamen die alleen qua case verschilden. AccuRev is gebaseerd op atomic commits, iets dat CVS niet kent.

De import werd in meerdere fasen verdeeld; hiervoor werden een aantal PHP scripts gebruikt. Door gebruik te maken van een MySQL database konden de individuele commits van CVS eenvoudig gegroepeerd worden tot atomic commits; ook werden zo de branches en tags gebundeld. Vervolgens werd de CVS repository stap voor stap geïmporteerd in AccuRev.

Systeembeheer

Ik heb ruim 20 jaar ervaring met het systeembeheer van Linux en (in het verleden) Solaris systemen, zowel voor bedrijven als instellingen.