By karelriemelneel | October 17, 2013 - 6:22 pm - Posted in Duimzuigerij, English, Nederlands, Uit het dagboek van een programmeur

Programmeurs die, al dan niet actief in strings en andere integere rommel, de dag vullen met het doorgronden van code die door anderen is geschreven zullen dit herkennen: een warboel van code zonder toelichtend commentaar is de nachtmerrie waar je voor je vak niet aan wilt. Helaas is het voor vele van hen een bittere realiteit. Want wanneer programmeurs hun programma’s schrijven dan willen ze meestal gewoon dat het werkt en willen ze niet bezig hoeven zijn met voor iedere regel code die ze schrijven commentaar te moeten uitwerken (uitgezonderd hen die per regel code betaald krijgen natuurlijk).

De ijverige programmeur, die onderstaande commentaar bij zijn programma heeft geplaatst heeft daar wellicht anders over gedacht. Dit fragment kreeg ik vandaag door een collega van mij op een verloren momentje (voor de baas) doorgestuurd. Ik hou inderdaad wel van dit soort vermakelijke ‘agressie epistels’ die zwaarmoedige programmeurs vol geestdrift oppennen vaak onbewust van het feit dat er geen hond is die deze informatie, doorgaans, ooit tot zich zal nemen. Om vervolgens te ontdekken dat het op het web wemelt van de fora waar al even zotte programmeurs hun verloren tijd kolderiek zinnig proberen te maken met het naar elkaar uitwisselen van deze onnozele ‘codecrap’.

// At this point, I’d like to take a moment to speak to you about the Adobe PSD
// format. PSD is not a good format. PSD is not even a bad format. Calling it
// such would be an insult to other bad formats, such as PCX or JPEG. No, PSD
// is an abysmal format. Having worked on this code for several weeks now, my
// hate for PSD has grown to a raging fire that burns with the fierce passion
// of a million suns.
//
// If there are two different ways of doing something, PSD will do both, in
// different places. It will then make up three more ways no sane human would
// think of, and do those too. PSD makes inconsistency an art form. Why, for
// instance, did it suddenly decide that *these* particular chunks should be
// aligned to four bytes, and that this alignement should *not* be included in
// the size? Other chunks in other places are either unaligned, or aligned with
// the alignment included in the size. Here, though, it is not included. Either
// one of these three behaviours would be fine. A sane format would pick one.
// PSD, of course, uses all three, and more.
//
// Trying to get data out of a PSD file is like trying to find something in the
// attic of your eccentric old uncle who died in a freak freshwater shark
// attack on his 58th birthday. That last detail may not be important for the
// purposes of the simile, but at this point I am spending a lot of time
// imagining amusing fates for the people responsible for this Rube Goldberg of
// a file format.
//
// Earlier, I tried to get a hold of the latest specs for the PSD file format.
// To do this, I had to apply to them for permission to apply to them to have
// them consider sending me this sacred tome. This would have involved faxing
// them a copy of some document or other, probably signed in blood. I can only
// imagine that they make this process so difficult because they are intensely
// ashamed of having created this abomination. I was naturally not gullible
// enough to go through with this procedure, but if I had done so, I would have
// printed out every single page of the spec, and set them all on fire. Were it
// within my power, I would gather every single copy of those specs, and launch
// them on a spaceship directly into the sun.
//
// PSD is not my favourite file format.