TEDcember Day 01 – Try something new for 30 days

One my video site I have just completed Vlomo. Vlomo is one of the many “every day in November” challenges, along with NaNoWriMo, NabloPoMo, Movember and so on. The end of November can be a bit of a let-down, though. One way or another the challenge is over. While discussing this with a colleague recently, …

Continue reading ‘TEDcember Day 01 – Try something new for 30 days’ »

ql.io – a SQL-style way of mashing-up web APIs

The guys at ebay have released ql.io, which seems to be a way of using SQL-like queries to fetch and join data (typically in the form of JSON, it seems) from multiple web APIs to generate quick “mashups”. See ql.io. I can’t help thinking that there are a lot of hidden issues around API compatibility …

Continue reading ‘ql.io – a SQL-style way of mashing-up web APIs’ »

TODOs, FIXMEs and a ‘window fixing’ wall

Agile software development places a lot of emphasis on prioritisation of work and elimination or deferral of anything which is not needed right now. An obvious advantage of this is that important stuff gets done quickly, but a less obvious disadvantage is that deferred work can pile up like snow before a snowplough. For a …

Continue reading ‘TODOs, FIXMEs and a ‘window fixing’ wall’ »

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?’ »

The case against iteration based re-estimation

I’ll say up front that I have some major issues with the idea of estimation in agile processes. There are plenty of alternatives to traditional time/manpower estimation which are at least as useful in delivering real, useful results. However, if you are working in a context which values estimation, Adrian Wible has some interesting points …

Continue reading ‘The case against iteration based re-estimation’ »

Using Markdown in GitHub Pages

I really like the idea of GitHub Pages, and the way that it helps to manage the documentation for a project, bringing it in line with the same practices and tools used to manage the software development process. Of course, I would have been slightly happier if GitHub had chosen to use my own broadly-equivalent …

Continue reading ‘Using Markdown in GitHub Pages’ »

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’ »

RESTful architecture: what should we PUT?

I love blog posts where the author reasons in depth about something and presents some conclusions in a clear and sensible way. Alex Scordellis has produced just such a post considering a particular philosophical issue in implementation of REST systems. RESTful architecture: what should we PUT?. Interesting.