Mijn vriend Python

 
 

Ettelijke jaren geleden zijn we met de afdeling wat IT-buzzwords gaan verdelen om die te onderzoeken en aan elkaar wat over te vertellen. Mijn keuze viel op "Perl, Python en Ruby".

Het bleken talen te zijn die worden gebruikt bij webscripting. Voor mijn verhaaltje moest ik ook een beetje in de diepte gaan en daarbij ondervond ik dat Python me toch wel erg aansprak. In eerste instantie was dat vanwege het fenomeen dat inspringing een onderdeel van de syntax is en dat je dus geen afsluitende scope-delimiters (zoals "accolade sluiten" of END-IF) nodig hebt - dat vond ik altijd zo'n overbodige aanduiding als je je code toch al met inspringen geformatteerd hebt.

Als ik me goed herinner was toen net versie 2.1 uit en 1.5 was nog volop in gebruik. Ik heb zelfs nog een boek gekocht (dat ik overigens relatief weinig gebruikt heb omdat er al zoveel op het web te vinden was, of doordat ik het kocht toen ik er al een en ander van wist en er weinig nieuws voor me instond, of misschien gewoon omdat het een heel dik boek was dat lastig was open te houden terwijl je met twee handen aan het typen bent.

Ik programmeer altijd met erg veel plezier in Python. Ik vind dat het me uitdaagt om m'n best te doen, om steeds slimmere constructies te proberen te bedenken die toch leesbaar blijven. Als ik de programma's bekijk die ik schreef toen ik begon merk ik dat ik in de jaren toch wel flink wat heb bijgeleerd (door de ontwikkeling van de taal zijn er natuurlijk ook manieren gekomen om dingen te doen die er eerder niet waren).

Python bood ook een mooie mogelijkheid om iets anders te lijf te gaan wat in die tijd aan het opkomen was: XML, en dan met name de SAX methode. Ook weer een techniek die goed aansloot op mijn denkraam. Mede omdat ik XML gebruikte voor iets waar het niet helemaal voor bedoeld is, namelijk data-opslag. Met XML kon ik op eenvoudige wijze en zonder hulpmiddel een tabel-achtige gegevensstructuur in een bestand opzetten, en die dan met SAX uitlezen zonder eerst de hele structuur weer op te bouwen. Op het werk was ik dat ook gewend: met IDMS (een netwerk-DBMS) zoek je records direct op via een toegangspad, in plaats van ze uit te filteren uit een verzameling. Of zoiets - het voelt alsof ik het niet goed uitleg, maar het gaat erom dat het weer eens goed "klikte". meer hierover

In mijn werk kon ik het ook goed gebruiken; ik was in de mainframe omgeving altijd al druk bezig hulpmiddeltjes te maken om me het werk makkelijker te maken en herhalende taken te automatiseren, en met Python werd het ook eenvoudig om dat ook op de PC te doen (toen we nog met OS/2 werkten heb ik wel eens naar Rexx gekeken omdat collega's daar ook wat mee deden, maar dat sloeg nog niet erg aan bij me). meer hierover

En ideeen over projectadministratie en probleemregistratie kon ik hier ook mee uitwerken, om zo te laten zien hoe het volgens mij zou kunnen (in weerwil van allerlei prachtige standaard tooling die er bestaat en altijd net niet precies doet wat je er mee wilt). Dit stukje heb ik hierover voor een Python/Django bijeenkomst gemaakt in het Engels, maar het leek me iets dat iedereen waarschijnlijk allang wist dus heb ik het maar niet gepresenteerd.

 

terug naar de indexpagina volgende episode

content and layout created 2010 by Albert Visser contact me