Monday, May 17, 2010

Open Source Expert Panel - Geen open source kennis? Nee, bedankt!

I just submitted the following Dutch language article for the opinion section Open Source for the on-line Computable.nl.

Ik gooi het maar direct op tafel. Als ik een ontwikkelaar zoek, dan is aantoonbare affiniteit met en kennis van open source een absolute must. Ik ben er heilig van overtuigd dat de kwaliteiten van dit type ontwikkelaars veel beter zijn dan van hun closed source tegenhangers. Dat is niet enkel een gevoel maar een simpele kwestie van het opsommen van de feiten.

Een opensourceontwikkelaar is iemand die meewerkt aan opensourceoplossingen en de ontwikkelingen volgt. Ik ervaar dat zij - in vergelijking tot hun closed source concullega’s - een grotere passie hebben voor wat zij doen. Dit zie je bijvoorbeeld terug in de hoeveelheid vrije tijd die ze spenderen aan opensourceprojecten. Ze werken in een gemeenschap van ontwikkelaars waarbij hun communicatie, contributies, codes en sociaal gedrag online worden gedocumenteerd. Al deze gegevens zijn over het algemeen te achterhalen via een simpele online zoekopdracht. Bovendien zijn opensourceontwikkelaars zeer flexibel in de omgang met problemen. Als er iets mis is met een opensourceproduct bestaat er altijd de mogelijkheid het verder uit te zoeken, tot aan de broncode aan toe. Het zal je niet verbazen dat het uitzoeken alleen al vaak leidt tot een oplossing. Die oplossing kan vervolgens weer worden teruggegeven aan het desbetreffende project. Die flexibiliteit is overigens ook terug te vinden in hun omgang met veranderingen. Opensourceontwikkelaars beschikken vaak over diverse mogelijkheden die hen kunnen helpen bij het oplossen van problemen, zoals een stuk tooling, product of framework. Deze nieuwe technologieën worden dan eigenhandig gemaakt en toegepast in hun werk.
Hieruit blijkt maar eens te meer hoe zij zelfsturend te werk gaan met betrekking tot educatie en het bijhouden van kennis. Een opensourceontwikkelaar leest graag, offert graag tijd op om dingen uit te zoeken en bezoekt conferenties en congressen om zijn kennis op te vijzelen en up-to-date te houden. Over het algemeen is het dan ook veel kosteneffectiever om dit type ontwikkelaars aan het werk te houden, hun kennis bij te spijkeren en ze tevreden te houden zodat zij voor je blijven werken dan het bij closedsourceontwikkelaars het geval is.

Closedsourceontwikkelaars leunen namelijk op hun certificaten. Dat is op zich niet zo verwonderlijk. Immers, hoe kan ik weten wat iemand zijn capaciteiten zijn en wat hij kan zonder zijn lijst met certificeringen in te zien? Het is namelijk niet mogelijk op een andere manier terug te vinden hoe zij coderen, hoe zij communiceren in een ontwikkelgemeenschap of hoe zij omgaan met veranderingen. Een persoonlijk interview is in dergelijke gevallen dan ook van groot belang. Een closedsourceontwikkelaar richt zich namelijk vaak op een enkele omgeving, met een beperkte verzameling tools waarmee zij kunnen werken. Veranderingen in deze verzameling worden niet als normaal ervaren waardoor zij van nature geen flexibele manier van werken en handelen hebben. Problemen in de tooling of producten worden regelmatig bij de leverancier neergelegd in plaats van dat ze het zelf uitzoeken. Kortom, er bestaat een compleet andere houding qua educatie en het bijhouden van kennis. Deze is namelijk vooral gericht op het bijhouden van certificering op de door hun gekozen tooling en producten. Dat betekent dat het vaak een duurdere aangelegenheid is om deze ontwikkelaars aan het werk te houden, op te leiden en ze de gewenste certificeringen te laten behalen.

Natuurlijk is het beeld dat hierboven wordt sterk gechargeerd. Maar ga het voor u zelf eens na: Met welk type ontwikkelaar wilt u samenwerken aan uw volgende project? Dan zult u zien dat ik er toch niet zover naast zit.