I am not sure why, but out of the set of all anti-patterns, drive-by coding is the one I am personally most disturbed by.
Perhaps that's because it's so unnecessary. Perhaps because it's indicative of laziness on behalf of the developer.
Perhaps because it is, itself, a smell of much more serious cultural issues. For exactly this last reason, if not for
any other, I feel very strongly that this particular anti-pattern should be uprooted mercilessly whenever noticed, before
it becomes endemic…
Anyone who has worked for a successful B2C knows how much
better and more precise decision making gets, once it is empowered by data. However, two of the companies I worked for turned
this into an art, and one of the two is, in my eyes, the unquestioned champion. In fact, we had such detailed
knowledge of our numbers (despite the many cyclicalities) that we would occasionally find software bugs
through our revenue figures: someone would notice a small drop in revenue and track conversion through…
Every professional in the software industry knows that building software is a highly unpredictable
business. This is why we don't like the question of “How long is it going to take?". The thing that
always puzzled me, however, is that that unpredictability always seems to point in the wrong
direction: software seems to almost always take longer to build than expected. With practically any other
process, one would expect something similar to a normal (binomial) distribution around the…