The problem with making things too easy

The TL;DR:

Continue reading

Posted in Anecdotes, Software Development, Software Engineering | Tagged , | Leave a comment

“Police hack PGP server” — really?

This afternoon, this headline caught my attention: “Police hack PGP server with 3.6 million messages from organized crime BlackBerrys“. When I read it, I thought: “either the journalist/title writer got it wrong, or PGP is broken”.
Continue reading

Posted in Computers and Society, In the news, Interesting stuff, Opinions | Tagged , , , , , , | Comments Off on “Police hack PGP server” — really?

Writing unmaintainable code in five easy steps

I have recently had to modify some code that, to say the least, was very hard to maintain — or refactor, for that matter.

The following are a few, firmly tongue-in-cheek, steps to make sure your code is thoroughly frustrating to whoever needs to maintain it after you.
Continue reading

Posted in Anecdotes | Tagged , , , | 1 Comment

Meetings, meetings, and more meetings

Recently, I spent a significant part of the day in a meeting reviewing the year’s progress on several projects, including the introduction of an agile methodology — Scrum. The approach in the meeting was simple: write on a sticky note what we did well, and on another what we should not repeat or how we should improve. The subject was “Scrum/agile”. I only wrote one sticky note: “get rid of Scrum”.

The TL;DR:
Scrum, in my opinion, is (moderately) useful for small teams with a single, short-term project — something like a web application. The overhead it imposes vastly outweighs the benefits for larger teams and larger projects.

Continue reading

Posted in Opinions | Comments Off on Meetings, meetings, and more meetings

Debugging — or: what I do for a living

I am often asked by friends and acquaintances of various backgrounds, what I do for a living. Depending on my mood at the time, I can answer in any number of ways, but invariably my answers are met with blank stares, questions that clearly demonstrate that I have once again failed to make myself understood and an eventual change of subject.
Continue reading

Posted in Scribbles, Software Development, Software Engineering | Comments Off on Debugging — or: what I do for a living

Really, Twitterverse?

This gallery contains 1 photo.

The Twitterverse has spoken, quietly, with a single vote — a cat it is…

More Galleries | Comments Off on Really, Twitterverse?

Setting up a Xubuntu-based kiosk

This is another “HOWTO” post — setting up a Xubuntu-based kiosk, which I did to make a new “TV” for my kids.

Continue reading

Posted in HOWTO | Comments Off on Setting up a Xubuntu-based kiosk

Technocracy II

In my previous post, I described technocracy as something that is positive in project and product management, and in team organization. In this post, to supply a boundary to my previous text, I will make the case for the opposite.
Continue reading

Posted in Opinions | Tagged | Comments Off on Technocracy II


In a discussion with a “Product Owner” recently, I told him I take a more technocratic approach to project management than they did. We discussed different project management styles for the next hour or so.

TL;DR: I believe that

  • to effectively and efficiently run a large team of developers who are collectively responsible for a product with a large code-base, that team needs to be organized as a network of smaller teams with experts leading each of those smaller teams, and
  • to successfully manage an “agile” development team and create a viable product, one has to have a vision and break it down from there.

Continue reading

Posted in Software Development, Software Engineering | Tagged | Comments Off on Technocracy

Real-time thirsty

The TL;DR:
In this post, I show using a fictitious example why real-time systems are defined by their worst-case timing rather than their average-case timing.

Imagine you’re running a coffee shop — not the kind you find in Amsterdam, but one where they actually serve coffee. Your customers are generally in a hurry, so they just want to get a cup of coffee, pay and leave to catch their plane, train or automobile. To attract more customers and appeal to the Geek crowd, you name your coffee shop “Real-Time Thirsty” and promise an “Average case serving within one minute!”.

While you get many customers, you’re not getting the Geeks-in-a-hurry crowd you were expecting.
Continue reading

Posted in Algorithms, Software Engineering | Tagged | Comments Off on Real-time thirsty