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.

By karelriemelneel | June 6, 2011 - 10:18 pm - Posted in Duimzuigerij, Nederlands, Uit het dagboek van een programmeur

image by Ditter, edited by Gsorsnoi

In mijn rol als computerprogrammeur krijg ik een hoop naar mijn hoofd geslingerd: koffiebekertjes, werkgerelateerde onzin, managementkreten, vakantieanekdotes waar je niet om hebt gevraagd, onbegrijpelijk jargon, scheldpartijen, etcetera. De gemiddelde kantoorklerk zal dit vast herkennen. Maar één van die dingen die ik ook nog altijd naar mij toegeworpen krijg zijn … strings.

Strings? Hoor ik je denken. Ja strings! Alleen dan niet die zuinige slipjes waarmee Take That en Tom Jones platgebombardeerd werden. Want zo overdreven geliefd ben ik nou ook weer niet bij mijn collega’s. Nee, de string waar ik het over heb is de computerterm die staat voor de aaneengesloten reeks van tekens die door de computer als een zeker geheel worden beschouwd. Een stuk minder spannend dus dan zo’n opgeleukte reetveter.

En wist je dat computerprogrammeurs de hele dag in strings zitten te werken? Vast wel. Tenminste, als je de twee eerdere artikelen in deze reeks hebt gelezen (‘Zoek je nog een leuke string?’ http://wsnoi.com/tn/?p=305 en ‘Lord of the Strings’ http://wsnoi.com/tn/?p=457 ). De ganse dag kun je op onze werkvloer over strings gepraat horen worden. Ze zeggen dan altijd dat het over werk gaat! Gelukkig weten wij wel beter. Ik heb daardoor inmiddels wel een paar nieuwe strings voor jullie.

Want wat je nog meer kunt doen met strings is …

(Noot: lees de tekst alsof je een programmeur bent)

  • een kruisverwijzing tussen strings
    Twee strings lopen over het naaktstrand. Zegt de één tegen de ander: ik zie er vandaag geen gat in.
  • in hele kleine stringetjes knippen
    “Had ze nodig voor een werkje op school.”
  • losse string
    Gevonden in de vergaderruimte. Eigenaar onbekend.
  • string length too large
    “Nee mevrouw, die maat hebben we niet.”
  • illegal access to a string
    “Karel, tijd voor een nieuwe zedenzaak.”
  • unstring
    “Weekendjob”  (voor sommige ook door de weeks)
  • die string kan nooit te kort zijn
    “Oh echt wel! Dan ken je mijn vrouw nog niet!”
  • als je nou even in die string kijkt
    “LIEVER NIET!”
  • je string opgeven
    Resultaat van een spelletje strippoker.
  • hij wordt steeds groter die string
    Triootje.
  • stringteller
    Hobby van een ladykiller.
  • tijdelijke string
    Heftige onenightstand.
  • actieve string
    Sportuitvoering.
  • string bewaren
    Xoxo.
  • rare string
    “Nee schat, dat is dus wel een veter!”
  • globale string
    Ondergoed van een globetrotter.
  • locale string
    Gezien toen mijn juf eens bukte.
  • variabele string
    Zit nog voldoende rek in.
  • string poetsen
    Vergeten uit te trekken.
  • strings sorteren
    Kopzorgen van mevrouw Ten Brink.
  • over je string loopen
    (Tiener)meisjes met slechte opruimgewoontes.
  • dan gaat je string naar de klote
    Gebruikt om een snaar te vervangen.
  • de string eruit trekken
    “Gevonden!”
  • ik kan er best een aardige string in kwijt
    Ik wil niet weten over welk gat we het hier hebben!

En onthoud goed (wat je met je laatste stringetje doet):

“Eén string maakt nog geen zomer!” en
“Beter tien strings in de lucht dan eentje in je hand!”

By karelriemelneel | December 14, 2010 - 8:07 am - Posted in Duimzuigerij, Nederlands, Uit het dagboek van een programmeur

image by Joran D., edited by Gsorsnoi

Deel 2 in de string-serie.

Wie met het lezen van de titel bij dit artikel meent een lesje te krijgen in het bespelen van snaarinstrumenten zal bedrogen uitkomen. Ook het ondergoed dat doorgaans voor zo’n touwtje wordt versleten zou  hier aanvankelijk geen onderwerp mogen zijn. Toch ontkomen we er niet aan om de rode oortjes iets op te wrijven wanneer we je hier gaan vermaken met …
… het jargon van een programmeur.

De Tycoon Newspaper publiceerde eerder in dit jaar al een overzicht van het string-jargon uit de ICT. Programmeurs die dagelijks in strings zitten te werken confronteren elkaar met uitspraken over strings waarbij zowel in- als outsiders toch minimaal hun mondhoeken moeten krullen.

Eén van mijn collega’s blijkt een expert te zijn in dit vak! En waar zijn hart van vol is, stroomt zijn mond van over. Met dank aan onze eigen Lord of the strings hebben wij dit jaar weer heel wat nieuwe inzichten gekregen in de mogelijkheden van dit spannende ondergoed.

Je kunt …

  • een string opmaken.
    “Ah ah! Eerst het voorgerecht schat…”
  • een string anders opmaken.
    “Mama, de drop is op!”
  • input geven aan een string.
    Is met elk geslacht weer wat anders.
  • strings aan elkaar plakken.
    Let op het lijmrandje!
  • eerst nadenken wat je in een string wilt stoppen voordat de string te klein blijkt te zijn.
    Niet elk touwtje staat je goed.
  • strings opknippen.
    Familie ten Brink moet ook bezuinigen.
  • over een string vallen.
    Sportblessure.
  • een string converteren.
    Hoezo deze string is niet van jou?
  • strings ergens in hangen.
    Oeps!
  • strings ergens aan hangen.
    Kapstok voor in de slaapkamer.
  • strings uitbreiden.
    Familypack
  • een string in een kutveldje in stukken hakken.
    Vakjargon? Ah-ha!
  • een string coderen.
    Zebraprintje.
  • ruimtegebrek hebben, omdat je string te groot is.
    Lulsmoes.
  • een string ergens in rossen.
    Wedgie!
  • een zoekstring hebben.
    Beter dan je string zoek!
  • met een string weggaan.
    En niet alleen als je gaat stappen.
  • vastzitten in je string.
    Meestal is het andersom.
  • een boxer hebben met een dichtgeslipte string.
    Een beetje van alles.
  • nog wel wat ruimte hebben in mijn string.
    Kom er gezellig bij!
  • een string ergens hard in stoppen.
    En zo blijf je een backdoor virgin!

Eerste deel nog niet gelezen? Die vind je hier.

By karelriemelneel | March 13, 2010 - 8:59 pm - Posted in Duimzuigerij, Nederlands, Uit het dagboek van een programmeur

image by silentfuzions, edited by Gsorsnoi

Dit gaat niet over leren strings, maar wat ik je over strings wil leren.

Het mogen dan misschien niet de eerste mensen zijn waarvan je dit zou verwachten, maar het zijn wel met name de programmeurs die dagelijks in strings zitten te werken. En ik kan het weten. Ik ben er zelf ook één.
Naast dat rare touwtje dat de suggestie moet wekken dat je ondergoed draagt, betekent ‘string’ in het Engels namelijk ook “een reeks lekkers”. Euh… sorry, ik bedoelde natuurlijk “een reeks leTTers”!

Strings hebben diverse functies en eigenschappen.
Je kunt …

  • een nieuwe string opbouwen.
    Ja, zelfs die veter is een keer door iemand gemaakt.
  • het formaat bepalen van een string.
    “Welke maat zoek je?”
  • een rij strings vinden (array).
    Kledingrekje.
  • een positie vinden van een string.
    “Hè, deze zit helemaal niet lekker”.
  • een string uitbreiden.
    Knak!
  • een string laten vallen.
    “Oeps!”
  • een string oppakken.
    “Ja sorry, die is van mij!”
  • een string verlaten.
    “En nu wij.”
  • of achter laten.
    Als aandenken.
  • een string verzenden.
    Vurige correspondentie!
  • een string ontvangen.
    “Nee m-mam, ik k-kan mijn post zelf wel open maken.”
  • een string kwijt zijn.
    Ga ik toch gewoon zonder naar mijn werk?
  • een string zoeken.
    “Draagt ze er nou wel of niet eentje?”
  • een string terugvinden.
    “Dat wordt dan 270 euro exclusief voorrij kosten voor het vervangen van een wasmachinepomp.”
  • een deel van een string zoeken.
    “Zo’n waslabel zou toch moeten opvallen op zo’n minuscuul stukje stof?”
  • strings koppelen.
    Alternatieve vluchtpoging bij gebrek aan lakens.
  • een string doorgeven.
    “Hè gatver!”
  • een string verplaatsen.
    “Zo’n touwtje in je bilnaad zit toch niet zo fijn hoor!”
  • een string in een string vinden.
    “Ah! Daar was je dus!”
  • strings samenvoegen.
    Mocht je nog in de groei zijn, dan plak je ze gewoon aan elkaar.
  • een string teruggeven.
    “Ze lijken zo op elkaar hè?”
  • een string opdelen.
    Kinky snoepondergoed.
  • een string hergebruiken.
    Nee, dan toch liever zonder naar mijn werk.
  • een string vervangen (functie ‘reverse string’!)
    Deze week de gele kant, volgende week de bruine.
  • een string vervangen.
    Dat dan liever!
  • op zoek gaan naar een space in je string.
    Scheten laten kan tot ongewenste gevolgen leiden.
  • een string deleten.
    De rek is er uit.

Zoals je ziet kun je echt een hele hoop met strings. Ze zijn alleen nooit even betrouwbaar. Een string is namelijk nooit integer. En of je nu een lange of een korte string hebt, een vaste of een variabele, je kunt er in elk geval erg mee lachen!

Nog een paar leuke uitspraken over strings:

“Ik heb nu een nieuwe string”
“Ik kan hem die string niet meegeven”
“Hij pakt gewoon die string”
“Mijn string is niet meer zichtbaar”
“Ik ben mijn string kwijt”
“Ik zag een string voorbij komen”  – [update: 26 april 2010]

… en veel veel meer …

Geloof het of niet, maar dit soort uitspraken hoor je bij mij op het werk dus IEDERE DAG!

Inmiddels is er ook een Deel 2 verschenen in deze string-verzameling. Die vind je hier.

Hier heb ik even naar moeten googelen maar tot mijn grote verbazing bestaat het gewoon. ‘Bitneuken’ is zowaar een werkwoord wat nog wel eens gebezigd wordt in de IT. Online vond ik een  informatica woordenboek die hier een wat zuinige uitleg over kwijt wilde en er zelfs een beoefenaar voor had gevonden: de bitneuker! Respectievelijk is ‘bitneuken’ het programmeren op technisch niveau en de ‘bitneuker’ de programmeur die zich hieraan bezondigd. Waarom verbaast het mij ook eigenlijk nog?
Van het bestaan van cyberseks wist ik al langer, maar heb er nooit bij stil gestaan dat de digitalisering van deze – door velen geliefde hobby – zelfs in online woordenboeken terug te vinden is. Zou het downloaden van baby’s dan toch dichterbij zijn dan we wellicht voor mogelijk hadden gehouden?

Altijd bandwidth-hungry voor woordspelingen en uniek taalgebruik als ik ben, waren mijn oren tot in de puntjes gespitst toen ik een collega van mij in ons organisatieoverleg dit woord hoorde gebruiken. Door de associatie die ik met dit woord had werd er bij mij al gauw een link geslagen naar de variant zoals mieren deze beoefenen. Ik ben vast een muggenzifter op dat gebied denk ik dan.

FYI: Het begint daar waar Cybercitizen aanvankelijk heerlijk onschuldig met elkaar aan het Chatten geraakt zijn in een Chatbox. Dat is tot er op een goed moment een Click wordt gevonden tussen twee Avatars die elkaar duidelijk op de Cam hebben. Indien de Emoticons juist bespeeld raken slaat de Flame over. Zijn er geen Hidden texts of andere False Drops aanwezig, dan houdt niets deze twee meer tegen om elkanders Hardware nader te gaan zitten Debuggen. Als de Bible dit maar goedvindt!
Voordat er tot een Bang zal worden gekomen wordt de Applicatielaag altijd eerst flink Geïndexeerd. Er wordt even goed gecheckt of we hier niet te maken hebben met een Betaversie om Incompatibilities te voorkomen. Anders kan er nog steeds een Hard bounce optreden.
Pas als dat allemaal in orde is kan er worden Gebrowsed en kunnen de Bijlagen en String worden verwijderd. De Radiobuttons draaien naar een romantische Tune zodat de Animated buttons traditiegetrouw even kort bespeeld worden tot het Apenstaartje zich tot het juiste Internet Protocol heeft gevormd.

De User meldt zich aan bij de Administrator en waakt er voor niet in de Black Hole uit te komen. Tenzij dit gewenst is natuurlijk. Al zal de Centrale Verwerkingseenheid op die manier nooit bereikt worden en zal er van Bestandsoverdracht al helemaal geen sprake zijn. In het ergste geval levert de Digital Subscriber Line een Batch met een x-hoeveelheid Mbps ter plaatsen aan de Kernel af en spreken we van een Crash.
Voordat we wel juist zijn ingelogd kunnen Knowns bugs nog worden omzeild door de Trojan Horse te voorzien van een Antivirus Protection. Dit is bij de Black Hole overigens ook zeer aan te raden! Al zijn er ook bij die zich prima redden door Just-in-time te compilen. In beide gevallen is er geen sprake van File Transfer, maar wordt er enkel aangelogd op de Database. Daar vindt hooguit wat Low-Level Mail Transport plaats in de Library, maar zullen de Internet Engineering Task Force het Systeem altijd weer kunnen verlaten via een Loopback.

Wordt er wel ge-üpload naar de Server en komt er uit de Front Office geen Data meer terug dan kunnen we spreken van een succesvolle Datacommunicatie. Mochten er nog Hotspots zijn geraakt dan is er ook Dual  Tone MultiFrequency opgetreden en staat er wel degelijk buiten een extra Datasetje klaar. Zijn de eventuele Firewalls doorbroken en is er een flinke Burnrate geweest dan is Data librarian tevreden.

Is er een hoge Quality Of Service geweest tussen de Host en de Provider? Dan hoeft er verder niet ge-bugfixt te worden en is de kans op Instant Messaging aannemelijk!

Hoe dubbelzinnig wil je het hebben?
Voor meer voorlichting in IT-termen:

http://www.ti-aalst.be/index.php?show=woordenboek