Most developers familiar with agile methods are familiar with the idea of the spike. A spike is a time-boxed task that concentrates on clarifying the unknowns in your project. Usually these are technological (“can this be done with this technology?”) but they are also sometimes in the area of the business domain (“is this a [...]
Filed in architecture, professional practice, programming, technical, tools and techniques
|
Also tagged agile, ANTLR, code, craftsmanship, emergent design, profession, rewrite, test driven design
|
Saturday, September 5, 2009
I kind of disagree with this picture by Josh Susser regarding the “circle of death” in terms of code quality and late night effort. It is right enough as far as it goes but it doesn’t go far enough. First up, the easy way out – take a day off, go for a walk in [...]
I just want to answer the anonymous “process nazis” trackback on yesterday’s ‘//TODO’ Considered Harmful post, because that blog desn’t allow comments without a login. Quite apart from issues with Godwin’s Law (and that the writer has enumerated a bunch of rules that get “violated” then accuses other people of being process nazis), the post [...]
Yesterday I said that developers should start being a little more militant about the craftsmanship of their code, i.e. pushing back on broken methodology that demands poorly-built code be released into the wild. This sort of code is always inherently fragile and will break your software if it has not already. Today I just want [...]
Broken development processes lead to broken code. When you find badly formed code, and especially if you didn’t write it just then in order to make the test pass just a minute ago, and super-especially is the code is already in production, you not only need to rectify the code, you need to rectify the [...]
XP: After 10 years why are we still talking about it? By Robert C. Martin. Uncle Bob argues passionately, and correctly, for the principles of software craftsmanship. Link: http://www.viddler.com/explore/sergiopereira/videos/7/.
You might have seen the following cartoon before: It’s from a site called The Project Cartoon. What I didn’t know was the site allows you to use the little cartoons to make your own version. You can caption and re-order the panels. For your amusement, and perhaps your edification, I present “The Rewrite Will Be [...]
Tuesday, January 20, 2009
This post is not about health-care, per se. This is about “re-writes” or “total reforms” of systems. An argument Atul Gawande makes in New Yorker magazine about health-care reform: [Certain reformists say] The country has this one chance, the idealist maintains, to sweep away our inhumane, wasteful patchwork system and replace it with something new [...]
AKA EJB <= 2.x Entities are a stupid idea stupidly implemented. A blast from the past. What idiot decided this was a good idea? public interface SomeEntity { String getType(); String getName(); } public interface SomeEntityHome extends EntityHome { SomeEntity findBySomeData(String name, String type); } public class SomeEntityEjb implements SomeEntity, EntityBean { public SomeEntity [...]
Thursday, January 15, 2009
In Emergent Design Scott L. Bain dedicates a chapter to Paying attention to Disciplines: Unit testing. To an experienced agilist this may seem a little basic: of course the discipline of unit testing pays dividends! But I think that we agilists forget sometimes that there are still many programmers – or their management – who don’t value the investment [...]