De Venlose huiskamer van programmeur Bram Moolenaar is ingericht met computers, computerboeken en een flinke stereo-installatie. Hier ontstond VIM, een van de meest gebruikte tekstverwerkers in de Unix-wereld. De veertigjarige Moolenaar stelt het programma vrij beschikbaar. Gebruikers wordt wel gevraagd geld over te maken naar goede doelen.
De Nederlandse elektrotechnicus Bram Moolenaar (1961) werkt sinds de jaren negentig in zijn eigen tijd aan VIM, een variant van de Unix-tekstverwerker VI. Het programma is met broncode en al vrij beschikbaar. Het is een van de meest gebruikte tekstverwerkers voor Unix. Programmeur Moolenaar is een idealist. Wie zijn programma gebruikt wordt verzocht geld over te maken naar een weeshuis in Oeganda. |
"Voor Nlnet begin ik met het ontwikkelen van A-a-p, een nieuw idee van me. Wat het precies is moet nog duidelijk worden. Het wordt in ieder geval een programma dat het vinden en installeren van software makkelijker maakt. Je vertelt A-a-p wat je wilt installeren, en het zoekt uit hoe dat moet. Het haalt de benodigde software op en compileert deze voor het platform waar je op werkt. Wat je voor zo’n programma nodig hebt zijn standaard beschrijvingen. Installeer je iets op Microsoft Windows? Dan moet je op deze manier verder gaan. Is het een programma voor BSD, dan gebruikt het de BSD-installatiehandleiding. Is het voor Mac-OS, dan zegt het ‘sorry, maar dat kan ik nog niet’. Dit soort systemen zijn er wel, bijvoorbeeld voor BSD. A-a-p lijkt ook op een beetje op het installatiesysteem van FreeBSD. Maar het moet veel meer besturingssystemen aankunnen. Het moet daarnaast ook het ontwikkelen van programma’s eenvoudiger maken. Het moet alle onderdelen van softwareontwikkeling die te automatiseren zijn automatiseren. Waar zitten de verschillen in twee nieuwe broncode-toevoegingen? Welke programmeurs werken eraan, wat zijn hun e-mail adressen? Ik heb het als persoon bedacht, en de nonprofit organisatie Nlnet wil het ondersteunen."
Andere hobby’s
"Het ontwikkelen van een open source programma is tijdrovend. Je moet fouten herstellen, e-mailtjes van gebruikers beantwoorden en contact onderhouden met collega-programmeurs die fouten opsporen en verbeteringen opsturen. Heb je een gezin, dan kan je zo’n project niet trekken. Er zijn mensen in mijn omgeving die het hartstikke leuk lijkt, maar die hebben andere hobby’s, of een gezin."
"De meeste mensen verdienen om van te leven. Ik niet, tenminste, niet alleen. De ingrijpende veranderingen die ik in versie 6 van VIM wilde doorvoeren kon ik niet combineren met een volledige baan. Daarom heb ik in april 1999 mijn baantje opgezegd en mijn spaargeld aangesproken. Ik woon goedkoop, ik geef weinig geld uit. Ik heb geen gezin te onderhouden."
"Tussen april dat jaar en september 2001 werkte ik voornamelijk aan VIM. Ik was oorspronkelijk van plan een half jaar te studeren, freelance-opdrachten te doen en VIM te ontwikkelen. Ik zou daarna wel weer een baantje zoeken. Het werken aan versie 6 liep wat uit de hand, ik deed al snel weinig anders meer. Het zoeken van werk schoof ik voor me uit."
"Met die versie is het voor vele gebruikers nu goed genoeg, merk ik. Ondersteuning voor Arabisch, dat zou nog wel handig zijn. Zoveel tijd hoeft dat niet te kosten, 99 procent van wat daar voor nodig is, zit al in het programma. Nog een paar stapjes en VIM kan in het Arabisch teksten verwerken; ik ken geen enkele andere tekstverwerker die dat kan."
"Nu is het eind in zicht. Het programma is nu zo groot dat iedere nieuwe toepassing die eraan wordt toegevoegd iets anders kapot maakt. Het levert een flinke hoeveelheid e-mails, foutenrapportages en lapmiddelen op. Breid je dan nog verder uit, dan komt de stabiliteit in gevaar."
"Een programma is echter nooit af. VIM zit nu in de onderhoudsfase; dat behelst kleine aanpassingen en reparaties, zoals het geschikt te maken voor de aankomende 64-bit variant van Windows. Daarnaast blijft de computerwereld veranderen. Om VIM compatibel te maken met de nieuwe versie van het grafische raamwerk GTK moet er nog veel gebeuren."
Overbodig
"Ik houd op als VIM overbodig raakt. Daar kan me nu nog niets bij voorstellen. Hoor ik niets terug over de nieuwste versie of verbeteringen, dan heb ik niet het gevoel dat ik iets nuttigs doe. Het kost me verschrikkelijk veel tijd. Het enthousiaste commentaar van gebruikers is het enige wat me motiveert. Het heeft niets te maken met geld of zo. Makkelijk is dat niet. Veel gebruikers nemen pas de moeite te reageren als er iets fout gaat. Die klagers maken het voor mij soms moeilijk om verder te gaan. Om betere reacties los te krijgen begint VIM nu met een mededeling op het eerste scherm. Ik wil laten zien dat het niet vanzelf is ontstaan."
"Sinds versie 2.0 gebruik ik mijn eigen softwarelicentie, ‘charityware’. Het introscherm moedigt gebruikers aan geld over te maken naar een project voor kinderen in Oeganda. Mijn intentie was altijd al iets voor anderen te doen. In begin jaren negentig, toen ik nog studeerde, werkte ik tijdens mijn vakanties op een aantal projecten, in Tsjechië en Rusland bijvoorbeeld. In Tsjechië was hulp niet echt nodig en in Rusland zag ik geen kans iets nuttigs te doen. In 1993 deed ik mee aan een project in het Afrikaanse Oeganda, dat zwaar getroffen is door aids en burgeroorlogen. Dat land is nog steeds in opbouw, na Idi Amin. Alles wat je daar doet is nuttig, al zit je er zoals ik toen slechts drie weken."
"Een jaar na mijn eerste bezoek zei ik mijn baan als programmeur bij Océ op, om terug te gaan. Voor Océ werkte ik sinds mijn afstuderen in 1985. Het was mijn eerste baantje en ik was er helemaal ingedoken. Ik ontwikkelde er de software die moest zorgen voor de beeldbewerking in kopieerapparaten. Ik kon er, net als op de universiteit in Delft, werken aan hardware én software. Ik heb in die tijd algoritmes bedacht die nog steeds dienst doen, zoals voor het vertalen van de grijswaarden van een gescande foto naar een printer die alleen zwart en wit aankan. Die methodes van beeldbewerking zijn tien jaar later nog steeds in gebruik. Het is wel fijn om te zien dat het zich terugbetaalt."
Spaargeld
"Ik vroeg Océ eerst of ik een jaar met onbetaald verlof kon. Dat risico durfden ze niet aan. Ik had voldoende spaargeld en ging toch. Het onderdak bij het project is gratis en eten kost er niet zoveel. Het duurste wat ik daar bezat was de auto."
"Het project richt zich in het vooral op aids-weeskinderen. Het is triest als de ouders van net geboren kinderen uitvallen. Dan is het mooi om die kinderen uiteindelijk weer zingend te zien rondlopen."
"Na dat jaar ben ik in Nederland een stichting begonnen om fondsen te werven. Dat is het hoofddoel – de mensen weten zelf het best hoe het geld te gebruiken. Ook die stichting wordt genoemd in de licentie van VIM."
"Ik voelde dat ik hier kan helpen, ook al ben ik geen ontwikkelingswerker maar een technisch persoon. Het was goed om te doen, maar leuk werk was het niet. Ik was er een soort projectmanager, verantwoordelijk voor drinkwatervoorziening en hygiëne. Ik moest onderhandelen, dingen regelen, met leveranciers, bestuurders en werkers. Dat soort zaken ging lang zo makkelijk niet als hier. Ik vond het zeer vermoeiend. Het is ook niet echt iets voor mij. Ik werk liever aan een computerprogramma."