Premature judgement

When I started my first job, I hardly ever judged my peers. After all, how could I? Everything was unknown for me; I couldn’t differentiate good from bad. Over the years that has changed a bit, but with that, I’ve also slowly become more judgemental towards peers, often prematurely, and not always deservedly. The first few months of last year, I found myself doing maintenance on a legacy code base between projects. While I worked my way through layer after layer, I pointed my frustration towards those that had come before me; they were responsible for putting me in this mess. With half the office having touched the code base, that didn’t really add up though. When I looked at the commit history of some of the offending modules, I found names that I didn’t expect; those people were still around, and I actually thought of them pretty highly. ...

February 10, 2013 · 3 min · Jef Claes

It's not cake we are baking

I recently watched a talk on Vimeo where Christin Gorman talks about how cookie dough relates to Hibernate; why use the generic, bloated and one-fits-all solution when you can mix together your own yummy cookie dough? We should aspire to be the Gordon Ramsey of software, not the college student who can only cook Ramen noodles. If you haven’t watched or listened to her talk, you should; it’s only a few minutes long, and she brings it really well. Go ahead, I’ll wait. ...

December 9, 2012 · 2 min · Jef Claes

Commuting? Have you done the math?

On my first job interview, over four years ago, I was asked whether I would relocate if I was hired. Back then, I still lived in the Campine region with my parents, while the Ferranti Computer Systems headquarters are in Antwerp. I thought about it for a few seconds and told the interviewer that I didn’t plan on moving out of my parents’ place in the first few years. Besides, the distance isn’t that great; it’s only 60km (=37 miles) of highway, how bad could it be? Apparently that reply was good enough since I was given the job a few days later. ...

November 4, 2012 · 4 min · Jef Claes

On job titles

It didn’t take long before I noticed how little job titles mean. In my first job, you were assured to be granted a fancy title after only having acquired a minimum seniority, if you knew how to play the game. A more important sounding job title was HR’s default bribe that often kept people from leaving for greener pastures, for a short while. But even after being upgraded from a stable cleaner to a Senior Barn Hygiene Technician, you’re still cleaning shit though. ...

October 7, 2012 · 3 min · Jef Claes

Is serialization really that expensive?

While wading through an exotic codebase, I stumbled upon a static class named Convert. This class contained somewhere around 2700 (non-generated) lines of code, where each method manually converted some object to a simple textual representation. These methods were then used to convert requests and reponses to and from a remote third party service before logging them to the database for auditing reasons. public static class Convert { public static string PaymentRequest(PaymentRequest req) { var sb = new StringBuilder(); sb.Append("Reference: " + req.Reference + " - "); sb.Append("NumberOfLicenses: " + req.NumberOfLicenses + " - "); sb.Append("PricePerLicense: " + req.PricePerLicense + " - "); sb.Append("CardNumber: " + req.CardNumber + " - "); sb.Append("Address: " + req.Address); return sb.ToString(); } } My first thoughts were something along of the lines of “What the.. this is insanely stupid code.” This must be a PITA to maintain and be extremely error-prone. Looking at the solution now, it looks simple enough to move that to some infrastructure and have the conversion done by something more generic. Serializing to JSON comes to mind; interpretable by man ánd machine. ...

August 22, 2012 · 3 min · Jef Claes

My learning resources distilled

I have picked up a few new tools this summer (MongoDB, NancyFx and WebAPI), and it occurred to me that I’ve built certain habits these last few years in how I make use of all the learning resources out there. I tried to identify all of them, to then categorize them, to finally order them according to in which phase of my study process I use them. The written and spoken word The first thing I look for online is documentation. It might be a coincidence, but all the documentation I found for these three tools was excellent. It seems obvious, now more than ever, that the early adaptation of new tools can be proportional to the quality of their documentation. ...

August 19, 2012 · 4 min · Jef Claes

The 'everyone should learn to code' dilemma

Back when I was working on software for fire departments, we started thinking about reworking a critical piece of our solution: deployment plans. In a fire department domain, deployment plans help to make a suggestion to the dispatcher about which units should be dispatched to a location when an incident is called in. The suggested composition of units depends on a wide range of variables: availability, response time, ranks, type of incident, required tools, … , even politics. Originally, people high enough in rank could compose these plans using a decision tree-like UI. However, as it turned out, this UI was insufficient; not all variables and conditions were available. Since this was no custom built tool, we had to work around it by composing incomprehensible decision trees or by tricking the underlying services. When talking about how we could do better, we hit a wall pretty soon. We thought about building our own - but more extensive - UI, and damn, even designing a DSL crossed our minds. ...

June 3, 2012 · 3 min · Jef Claes

The open plan fallacy testimonials

I wrote an article titled ‘The open plan fallacy’ just two weeks ago. Earlier this week a similar article was published by the New York Times. The content of that article wasn’t particularly extraordinary, but the comments were. I waded through all of them on my daily commute, and it’s really hard to find one in favor of open plan offices - people seem to be enraged. I handpicked some of the most interesting ones. ...

May 27, 2012 · 4 min · Jef Claes

The open plan fallacy

I haven’t worked in a whole lot of places, somewhere around four, but every single one of them used an open plan to structure their workplace. From what I hear from others, it’s the standard. There are a few things to say about the advantages of an open office layout. They should stimulate communication, create more opportunities for observing and learning from others and be more cost-effective. I’m afraid it’s the latter which is the biggest driver though. ...

May 13, 2012 · 2 min · Jef Claes

Why I will always love RSS

There has been a lot of noise in the tech community earlier this year about how RSS is supposedly having one foot in the grave. If that would be even remotely true, I hope it dies with its boots on. The herald would be browsers and social networking sites killing or hiding support for RSS. While that may be true, their motives shouldn’t rig our opinions. RSS has never worked out for the regular consumer, not directly anyways. So I get why browsers are dropping support for it, I am not even disappointed. Most popular social networks have enough traction by now so that they can safely start fencing their gardens with the purpose of bringing more money in. Also reasonable. ...

May 6, 2012 · 2 min · Jef Claes