vrijdag 20 december 2013

Global Day of Code Retreat

Afgelopen zaterdag ben ik naar de Global Day of Code Retreat geweest. Deze werd gehost door Luminis in Arnhem en was georganiseerd door Daan van Berkel.

De dag was afwisselend ingedeeld. En werd na elk blok van 1,5 uur onderbroken om even allemaal bij elkaar te komen en de ervaringen uit te wisselen (wat heb je gedaan? hoe ging dat? en liep je tegen dingen aan?). Het belangrijkste doel voor de dag was: Have Fun.

We begonnen met een blok van code kata. Dit houdt in dat je tijdens de kata werkt aan je programmeervaardigheden (het is niet erg als je aan het einde van het blok iets hebt dat niet werkt, sterker nog dat is de bedoeling). Dit hebben we via pair programming en TDD gedaan.
Na een korte onderbreking en samenkomst hebben we de tweede kata gedaan. Voor een aantal van de code kata's is er een online 'coding dojo' gebruikt, nl. cyber-dojo.

Vervolgens konden we aangeven wat we graag wilden gaan doen en welke kennis/materialen er aanwezig was. Hiervan ben ik een blok met OpenGL, A.R. Drone en een silent pair programming kata bezig geweest. De OpenGL kregen we helaas niet volledig aan de praat binnen 1,5 uur. Voor de A.R. Drone was er een app beschikbaar voor de smartphone waarmee je hem kunt besturen. Vervolgens hebben we de SDK gedownload, helaas wilde deze niet compileren. Tijdens de samenkomst kregen we te horen dat NodeCopter snel op te zetten is, misschien ga ik dat de volgende keer uitproberen.

Dit was voor mij de eerste keer en ik wist nog niet goed wat ik kon verwachten. Ik heb me laten verrassen en het was een geslaagde dag. Moe maar voldaan ging ik naar huis en de volgende keer ga ik weer :-)

dinsdag 3 december 2013

Why there's no such thing as quick 'n dirty, or how making a mess is slowing people down

Imagine you're at home and you're looking for something. Now, you can create a mess while you're looking... You're throwing stuff around, move things around to a random place and really just making a mess. Because of that you might actually look in the same place multiple times. When you've found it, the mess is still there.

  • You can leave everything where it is and the next time you're looking for something (the chance gets bigger that you have to look for something, because the mess is still there) you spend more time looking for it.
  • Another option is to clean up afterwards, but don't forget... the time spent sorting things out and putting them back is also part of the looking process (I believe people tend to forget that now and then).
Or, you look in different places and when you have to move things, put them back where they were. This may seem to take longer, perhaps because you're spending more time in the same place, but the actual time spent on the total looking process is less. Leaving your room clean and when you keep it clean, you'd have to search less for things and you can find things sooner.

In code it works the same. When you're making a mess it's harder to figure out what the code does, where the functionality is that you're looking for, or worse to find bugs. Keeping code clean may seem to take longer, but it actually takes less time. Or when you leave the mess, the next time you have to look for some code (which will happen sooner if you made a mess) will get harder. This may seem small or barely noticeable, but in due time, this will take up a lot of time; this doesn't always have to be true in the long run, it can (and will) happen in a short amount of time.

In short: People want to do things quick 'n dirty, because they think it's faster. In reality, however, this is an illusion, because 'dirty' doesn't go quick, that's all in their minds.