Assembla on Premature Integration or: How we learned to stop worrying and ship software every day

An excellent article from Michael Chletsos and Titas Norkunas at Assembla, which reminded me how important it is to keep anything which might fail or need rework off the master branch. It’s a truism about software development that you never know where the bugs will be until you find them. This can be a real …

Continue reading ‘Assembla on Premature Integration or: How we learned to stop worrying and ship software every day’ »

Do You Really Want to be Doing this When You’re 50?

I just read an article (Do You Really Want to be Doing this When Youre 50?) from James Hague, who describes himself as a “Recovering Programmer“. I understand his experience, and his reasons for deciding that it’s not the job for him. I even like that he has blogged about it. What I really don’t …

Continue reading ‘Do You Really Want to be Doing this When You’re 50?’ »

Zero-downtime deployments

It’s a common pattern, an enterprise software solution has a body of code, managed by version control, verified by continuous integration and eventually delivered to some deployment system. If that were the whole picture things would be relatively straightforward. Tests pass? deploy it! Unfortunately there is often also a database in the mix. This complicates …

Continue reading ‘Zero-downtime deployments’ »

Does working with Legacy code need a change in attitude?

Sometimes I can’t resist the urge to grumble to colleagues when confronted with systems developed in a way I would not have chosen. Maybe I just need A change in attitude. On the other hand, often the frustration comes from knowing that there is a better way, and I’m not sure that learning to love …

Continue reading ‘Does working with Legacy code need a change in attitude?’ »

Spike Driven Development

test-Driven development (TDD) is a very powerful and beneficial approach to developing software. I routinely recommend it as a solution to untested and hard-to maintain software. However, every rule has its exceptions and there are occasions when a pure TDD approach is not very helpful. Mark Needham wrote a recent blog post on the subject …

Continue reading ‘Spike Driven Development’ »

Throwing away working code

It’s a tough call to make, but sometimes the best thing for a business to do is to throw away working code if it’s not what the business needs to be successful right now. Eric Ries wrote an insightful post back in February 2009. Lessons Learned: Throwing away working code. A business which is not …

Continue reading ‘Throwing away working code’ »

REST and versioning, a more concrete example.

There’s an interesting discussion going on at The Wisdom of Ganesh in which Ganesh Prasad and “Integral ):( Reporting” (presumably the “JJ Dubray” mentioned in the article) are trying to work out some issues around versioning, REST and SOAP. This post is also referenced and commented on at infoQ. In the 14th comment to the …

Continue reading ‘REST and versioning, a more concrete example.’ »

Two good videos

Monday was a bank holiday, so I found a little time to catch up with some of the web videos in my queue. First I watched an inspiring session from TechCrunch Nordic which likens achieving an “exit” for a startup company to dating. Fun, and with a strand of truth. TechCrunch Nordic – Tommy Ahlers …

Continue reading ‘Two good videos’ »

James Carr Feels GREAT to Pair Again

I guess its is a common problem for software developers with a day job as well as out-of-hours projects, but it can be hard to get around to spending time on the out-of-hours stuff. I read with interest that James Carr sought out someone to pair with and found it a useful and enjoyable experience. …

Continue reading ‘James Carr Feels GREAT to Pair Again’ »

The Opposite of Waterfall is Pond – A Metaphor for Agile

You have to love a good analogy. Here’s one which takes the notion of a “waterfall” development process literally, and contrasts it with a pleasant day out on a serene pond. The Opposite of Waterfall is Pond – A Metaphor for Agile | Agile Blog: Scaling Software Agility My favourite snippet: Eventually, we find a …

Continue reading ‘The Opposite of Waterfall is Pond – A Metaphor for Agile’ »

Ruby, Sinatra, Dreamhost, Haml, git – a smooth web app workflow … eventually

I have spent many years developing web applications in Java for corporate clients. During that time I have used a wide range of frameworks, APIs and other useful stuff. I have written my own versions (sometimes several) of many of these components, learned the tools well, and become very productive and effective. However, it has …

Continue reading ‘Ruby, Sinatra, Dreamhost, Haml, git – a smooth web app workflow … eventually’ »

Snakes on the Web: what’s really wrong with web development

I don’t really consider myself a Python developer, although I have dabbled. As with many of the less mainstream languages there are keen developers and thinkers trying to clear away the confusion and push the limits of what is possible. Snakes on the Web The article is an enthusiastic call to action for “Pythonistas”, but …

Continue reading ‘Snakes on the Web: what’s really wrong with web development’ »

Does Agile coaching set up problems for later?

I have seen several attempts to implement an agile approach to software development within large organizations, and in many  (if not all) of those cases the end result has not been very compelling. This is in direct contrast to agile adoption in smaller, typically single-team, companies. It’s natural enough to assume that problems with implementing …

Continue reading ‘Does Agile coaching set up problems for later?’ »

Steve Freeman compares Test-Driven Development to rock climbing

I love this kind of analogy. Thinking and learning about one area by considering another is a very powerful technique for boosting overall understanding and wisdom. In this case, Steve Freeman has scraped off the climbing terminology from a snippet of an article and replaced it with jargon from software development. Thought-provoking. Tips on Test-Driven …

Continue reading ‘Steve Freeman compares Test-Driven Development to rock climbing’ »

Fun with very strict TDD

I use Test-Driven Development (TDD) every day, and find it very helpful. It can be hard to get to grips with, though. I was pleased to read that acceptance-testing pundit Gojko Adzic had fun with some very strict TDD rules. Gojko Adzic » Thought-provoking TDD exercise at the Software Craftsmanship conference. My approach to TDD …

Continue reading ‘Fun with very strict TDD’ »