Just Breathe: Building the case for Email Apnea

Do you hold your breath while reading email? While typing? While thinking about this blog post? Linda Stone wrote a blog post about a year ago on this topic, claiming all sorts of health problems might be averted if we just remembered to breathe properly. Do you think this is a real problem? Linda Stone: …

Continue reading ‘Just Breathe: Building the case for Email Apnea’ »

Install multiple versions of IE on your PC

This is brilliant! Last week I eventually gave in and accepted the update to Internet Explorer 7 on my last development PC. I had been keeping IE6 around so that I could test on it’s broken-but-still-common behavior. I still need to test on IE6, though, so I was resigned to either installing a fresh version …

Continue reading ‘Install multiple versions of IE on your PC’ »

Agile Risk Management

There are lots of approaches to estimation for agile projects, but not all of them include estimation of risk. Some approaches deliberately ignore risk, preferring to work from hindsight and averages. For the others, a consideration of levels of risk for each estimated story or task seems a good idea. InfoQ: Agile Risk Management.

Hiring Software Developers: The Agile Aptitude Test

I know it’s a funny time to be writing about hiring with so many layoffs, but any company which can afford to hire needs to hire the right people more than ever. We have spent a lot of time and effort on the traditional CVC/resume and interview process, and still managed to reject the great …

Continue reading ‘Hiring Software Developers: The Agile Aptitude Test’ »

Chef – scriptable multi-machine deployment

I’m a strong believer that manual steps should be automated wherever possible. One of the areas of our current product which seems to require an inordinate amount of manual “faffing” is provisioning and deployment. Chef, a ruby system for distributing and automating just these kinds of tasks seems an interesting solution. Home – Chef – …

Continue reading ‘Chef – scriptable multi-machine deployment’ »

getteamtasks – get your flexible task management wiki here.

While setting up for some new work on my masters dissertation today I checked to make sure I had the latest version of TiddlyWiki. While looking I found a whole “ecosystem” of TiddlyWiki variants. One which particularly caught my eye was “teamtasks”, a neat way of using the TiddlyWiki technique to simplify project planning and …

Continue reading ‘getteamtasks – get your flexible task management wiki here.’ »

Embrace Uncertainty

In the current economic and work climate, it sometimes seems as if uncertainty is “flavour of the month”. In reality it’s been there all along, particularly in the field of software where the whole point is that choosing software over hardware is supposed to make change easier. Jeff Patton has put together a presentation about …

Continue reading ‘Embrace Uncertainty’ »

Put Your Large Pictures in Web Pages without Resizing Them, use Google Maps

With digital image sizes growing faster than screen space, it’s hard to put any kind of picture on the web without resizing it. There’s a great trick to use the Google Maps interface and a free “image cutter” to make zooming and panning across huge images easy. Put Your Large Pictures in Web Pages without …

Continue reading ‘Put Your Large Pictures in Web Pages without Resizing Them, use Google Maps’ »

PhoneME, a JavaVM for wifi routers

For some time I have beem mulling over the posibilities of deploying applications to low-cost wireless routers to provide hyper-local services to wi-fi surfers. One thing which has always put me off is the apparent need to dig deep into low-level Linux hacking. It’s a *long* time since I last did any significant C development. …

Continue reading ‘PhoneME, a JavaVM for wifi routers’ »

Pair programming is just like flying a plane

Flying is scary enough even without software development analogies! However, there is something to be learned about the practice of pair programming from studying problems with two-pilot aircraft – especially the kinds of problems which led to crashes. Sarah Taraporewalla’s Technical Ramblings » Pair programming is just like flying a plane.

Agile: When is a story done?

Anyone who has worked with me in the past will probably recognize my standard response to vague or unclear requirements – “how will I know when I’m done?”. I use it so much becuase the simple trick of changing viewpoint to view work in terms of acceptance criteria is key to enabling sensible discussion, estimation, …

Continue reading ‘Agile: When is a story done?’ »

Context and problems with “Best Practice”

I sometimes have to suppress a shudder when people use the term “best practice”. Despite a positive sounding name, the idea of “best practice” is almost always used in a way that is restrictive rather than enabling. Declaring one approach or solution as “best practice” by implication shuts out other answers. I will admit that …

Continue reading ‘Context and problems with “Best Practice”’ »