Ik heb leren programmeren toen ik een jaar of elf was. Misschien wel vooral omdat de computer die mijn vader had gekocht me mateloos fascineerde, en programmeren zowat het boeiendste was dat je daar toen mee kon doen. Ik leerde BASIC uit een boek, en ook uit de Engelstalige handleiding die bij de computer was bijgeleverd – niet dat ik ooit Engels had geleerd, maar dat maakte niet zoveel uit blijkbaar. BASIC was een erg flexibele en weinig formeel gestructureerde programmeertaal, die daarmee aanzette tot grote slordigheid. Ik ben er een slordig programmeur door gebleven. Gelukkig heb ik zo goed als altijd programma’s afgeleverd die alleen ik zelf moest begrijpen. Maar zelfs dat bleek nadien niet altijd evident. Zodat het bijstellen van een programma soms veel tijd vergde. Want ik had best wel serieuze dingen gemaakt voor mijn vader, zoals een toepassing voor zijn facturatie.
In de middelbare school leerden we TurboPascal, waar ik voordien ook zelf al enkele stappen in had gezet. Het was veel meer écht programmeren dan BASIC, maar uiteindelijk kon je er niet echt iets meer mee. En omdat ik mijn succesvolle toepassingen nu eenmaal in die taal had ontworpen, leerde ik het niet echt goed. Al haalde ik wel goede punten, want de opdrachten die we kregen waren niet zo moeilijk. Aan de unief kregen we het vak programmeren in zijn meest theoretische vorm : we moesten algoritmes kunnen schrijven, maar ik herinner me niet dat we die ook echt op een computer moesten kunnen laten werken. Een beetje zoals theoretische zwemlessen toch wel. Heel veel deed ik er niet mee.
Pas later, toen de websites ontstonden, pakte ik de draad echt terug op. In de mate dat HTML een programmeertaal is, leerde ik daarvan wat ik nodig had om de code aan te passen die FrontPage of andere toepassingen voor mij ontwierpen. Ik leerde mijn plan trekken met het aanpassen van door anderen gecreëerde JavaScripts, en als ik niet vond wat ik zocht maakte ik er ook wel eentje zelf – dat dan vaak ingewikkelder was dan die gezochte, want anders had ik het wel kant-en-klaar gevonden, natuurlijk. Maar uiteindelijk was het de combinatie PHP/MySQL die me opnieuw echt aan het “coderen” kreeg. Dat mag nét iets slordiger dan TurboPascal, al vergeeft het je niet als je een puntkomma vergeet. En vooral, het bleek een zeer krachtige tool om websites net iets meer te laten zijn dan een visueel uithangbord. De site van Essen in Beeld is een product daarvan.
De meeste websites die ik ontworpen had raakten de laatste jaren stilaan “uit de mode”, bijvoorbeeld omdat ze zich niet aanpassen aan smartphones en tablets. Dat deed eerst degenen voor wie ik ze had ontwerpen en later mijzelf overstappen naar content management systemen zoals WordPress, waarop deze site nu draait, en waarbij de PHP door het systeem zelf gemaakt wordt en goed verborgen zit, zodat er alleen uitzonderlijk nog geprogrammeerd moet worden. Dat maakt ook dat ik altijd wat bang ben als ik aan Essen in Beeld toch iets moet veranderen, want hoe zat dat ook alweer in elkaar ? Maar de site hermaken zit er voorlopig niet in : de Heemkundige Kring plant een nieuwe website en daar wacht ik op.
Ondertussen ontdekte ik wel een andere omgeving. Eigenlijk moet je er niet eens voor kunnen programmeren : IFTTT laat je toe om allerlei toepassingen aan elkaar te koppelen, volgens het basisprincipe “if that then that”, één van de meest zinvolle maar ook één van de meest basale programmeercommando’s . Wil je een sms ontvangen wanneer je het licht aandoet ? Dat kan geregeld worden. En dat is maar één van de talloze mogelijkheden. Omdat ik in mijn huis enkele (kleine) “smart”-systemen heb, vind ik het wel leuk om daarmee wat te experimenteren – als die systemen bijvoorbeeld “scènes” of “routines” mogelijk maken, wordt het arsenaal van mogelijke koppeling meteen uitgebruid. Maar ook wie dat niet heeft en bijvoorbeeld zijn Facebook- en Twitteraccounts aan elkaar wil linken kan IFTTT gebruiken. Wie het allemaal nog wat meer programmeerbaar wil, kan de link maken met Apilio, en ook echte variabelen maken bijvoorbeeld. Wat ik dus ook doe : zo bepaalt de buitentemperatuur in de namiddag mee of mijn verwarming al dan niet opgeladen wordt ’s nachts.
Of hoe het programmeerbloed toch een beetje kruipt waar het niet kan gaan. Wat ook maakt dat ik soms net iets verder met ICT’ers of andere programmerenden kan meepraten dan ze voorzien hadden. Zo heb ik ooit voorgesteld om een toepassing die volgens ICT weken lang ontwikkelingstijd nodig had in een dag of twee zelf te maken. Toen bleek het plots toch niet zó moeilijk meer…