Released: Kill long meetings

A lot has already been said and written about meetings, and some have carried the message above par; ‘Meetings: where work goes to die’. Today, I’m not going to foul the internet with another rant, but I’d like to show you a small application built over the last few weeks after work. I regularly find myself building small things as an antitoxin to the regular periods of not writing and shipping code at work. This time, me and @cgeers, built a not-so-serious application that aims to kill long meetings by visualizing the amount of time and money burned in a meeting. ...

November 25, 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

Post Web.NET Europe

I attended and spoke at Web.NET Europe in Milan over the weekend. This was only my fourth full day- or more conference (Techdays Belgium, TechEd Berlin and HTML5 WebCamps), but it was undoubtedly the best one so far. The quality of the sessions was definitely not inferior to those of bigger conferences. I especially enjoyed the talks on SignalR, OAuth and scaling data (I included some of my notes below). The strength of this conference doesn’t lie in the exceptional speakers or sessions though, but in its cozy size and the type of attendees it attracts. Being hosted on a Saturday, you already preclude all the developers who merely think of technology as a job. And when you put together those who care about what they do, and want to get better at it, good things happen. This was the first conference where I was able to talk to such a wide range of people - I guess I even spoke to more than six different nationalities - and where it didn’t feel awkward one bit. What helps in attracting such a variety of people, is that the conference is practically free and survives on donations from sponsors and attendees, making it very affordable even if you fly in from outside of Italy. Freelancers also seemed to appreciate that it was on a non-billable day. ...

October 22, 2012 · 3 min · Jef Claes

Slides and code from my Web.NET Europe REST and ASP.NET Web API session

I just returned to the hotel after attending and speaking at Web.NET Europe 2012. There were multiple sessions on ASP.NET Web API today, and I was responsible for delivering the first one of the day. Being first, and to avoid overlap with others, I tried to lay a solid foundation by focusing on the REST and ASP.NET Web API basics: resources, identifiers, representations, verbs and hypermedia. More people than I expected showed up for my talk; somewhere around 50 to 70 attendees, I guess. I think it was fairly well received; after 25 votes, the session rating stands at 90%. It’s great to see your preparations have such a fruitful outcome. ...

October 21, 2012 · 1 min · Jef Claes

Commands with dependencies

Also read: Separating command data from logic and sending it on a bus Yesterday I wrote about an architecture which limits abstractions by solely introducing commands and queries. I shared a dead simple variation of this pattern, the advantages I experienced, and how I could still unit test the controller if I wanted to. At the end of that post I wondered how I would be able to test commands in isolation; suppose the implementation doesn’t use a database this time, but a hairy, too low-level, third party webservice. ...

October 15, 2012 · 3 min · Jef Claes

Commands, queries and testing

Also read: Self-contained commands with dependencies Separating command data from logic and sending it on a bus We need abstraction, but the amount of abstraction we really need depends, and should be assessed on a case-by-case basis. It seems advisable to grow abstractions, and to introduce them gradually. That being said, in this post I want to talk about an architecture that tries to limit abstractions to solely commands and queries. ...

October 14, 2012 · 5 min · Jef Claes

Côte d'Opale

The girlfriend, me and another couple, returned from a short weekend at the French Opal Coast yesterday evening. Although we only planned this trip a week in advance, we still failed to anticipate how erratic the weather can be in October; setting up camp in the dark, on a sloughy underground, with a soft drizzle on your back, isn’t my idea of fun after a long day at work. The next morning, with destination Cape Blanc Nez, we drove over coastal routes between vast green fields, towards clearer skies. Passing white cliffs of clay and untouched beaches, we eventually halted at the obelisk commemorating the Dover Patrol for a while. Here you can clearly see the English coast on the other side of the canal; no wonder this spot was strategically ideal to safeguard the canal during World War I. Differing from the main route, we discovered the ramshackle remainder of a bunker. I think it’s fascinating how quickly something what once played an important role in our history, can lose its prestige, and be seen for what it is: a massive block of concrete. ...

October 8, 2012 · 2 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

The 7 R's of Hypermedia

While most REST concepts are rather easy to grok, there is one concept which I found harder to understand at first: Hypermedia. Let it be that without this concept, you’re missing out on an extremely important strength of REST. Hypermedia enables you to build dumb - or smart, depending on your perspective - clients, which are mostly driven by the server. Practically, this is implemented as resources embedding links which allow the client to discover and navigate through your RESTful service. ...

September 17, 2012 · 2 min · Jef Claes

Slides and code from my Tunisia REST and ASP.NET Web API session

I just returned from a four day trip to Tunisia with Euricom. Next to indulging on the sun, food and all-inclusive cocktails, getting to know each other in a less professional setting, we spent somewhere around half of our days - and this is a rather generous estimate - doing technical sessions and workshops. I gave a 90 minute long crash course on REST and ASP.NET Web API. Content REST: Concepts Architectural values Left overs ASP.NET Web API ...

September 13, 2012 · 1 min · Jef Claes