Archive for the 'Imperfection' Category

Increasing sustainable pace
Wednesday, April 9th, 2008

In the last few years, especially in the agile corners of the web, there’s been quite a lot written about the 40 hour workweek, sustainable pace, no overtime, and so on. I agree with most of this stuff and think exhausted developers in the long run do more harm than good. I can’t help to wonder, however, what’s so magical about 40 the hour workweek? Why not 35, 45, or even 55? Just playing safe on 40 seems a waste, if my team can do better.

Improve as you go
Sunday, March 9th, 2008

Sometimes we come to situation where we need to perform a major change in our code base, one that is likely to affect more or less the whole system and that would require many man-weeks to complete. Time that we typically do not have in the condensed schedule of a modern software development project. By performing the improvement step by step, at each commit, we can amortize the time spent over the course of the project, yet ensure that it performed.

Story Cards on a Whiteboard
Friday, February 8th, 2008

I just found what might be the greatest thing since sliced bread. It is so smart, so ingenious, that it made me excited like a child on Christmas for a whole week.

Solution: “Could not load a dependent class” when using Ant through Eclipse
Monday, January 21st, 2008

When running an optional Ant task through the Eclipse Ant interface, you get an error saying a dependent class could not be loaded. However, you have found all required dependencies for the tasks you are trying to use and put them in one of the folders as specified. This might be the solution.

Thoughtless Development
Friday, November 23rd, 2007

Test-Driven Development has gone from being a new idea, considered slightly crazy, to a serious development style used by many professional developers in their everyday life. However, it is a style of development which requires much discipline, or you will not realize it’s potential. In fact, you might end up doing more harm than good.

Sorted collections in Hibernate
Wednesday, October 3rd, 2007

We want a collection field belonging to an entity object to be sorted. There are two possible solutions.

Constructors and Creation Methods
Saturday, September 22nd, 2007

Sometimes a constructor doesn’t communicate intention very effectively. This could be because instantiating the class in question isn’t as straight-forward as “creating a new object”, or because there are many alternative constructors. In those circumstances it might be useful to use well-named static or non-static methods to create instances of the class instead.

Testability vs coupling
Friday, July 13th, 2007

I want to describe a situation I came across where designing for testability seems to be in conflict with the always-valuable principle of loose coupling.

Scope control
Thursday, June 21st, 2007

Again, the book Test-Driven Development: By Example by Kent Beck provides me with an eye-opening experience. It explains how test-driven development is useful for scope control when developing.

Slightly different and even simpler
Monday, June 11th, 2007

I’m constantly trying to become better at estimating how long a development task will take. As one step in this process I decided to create a simple web-based timer which I could use to measure time. Shouldn’t be too hard, I just needed a simple stop watch — the simplest thing that that could possibly work. That’s what I thought at least.