Software application development
This blog is intended to provoke discussion and exchange between like minded software application developers, engineers, architects, project managers - and keen hobbyists too.
Friday 31 August 2007, 6:08 PM
We don’t need no education – actually, maybe we do
You’ve probably aware that journalists get invited to press conferences and various other publicity-driven shindigs. Of course we’re offered interview opportunities and even the odd lunch with the spokesperson du jour. We also get to go to roundtables, conferences and once in a while the occasional ‘jolly’ where we’re not even expected to write anything, but just get to know a company’s execs a little better.
But today, I’m in San Jose at the Adobe headquarters attending (along with a bunch of other technical writers) a slightly different event – a press ‘study tour’. This is a series of learning sessions designed to give us a better understanding of the company’s latest technology iterations in the Rich Internet Application space.
This made me think about how unusual the software business is. While we’re being given extended demos and Q&A sessions to dig into the guts of how you build front end data centric applications, can you imagine this kind of thing happening in any other industry?
Rather than a quick factory tour, would the baking industry sit the catering press down to explain state of the art dough-mixing techniques? Instead of a nice little test drive, would BMW or Ford offer a group of motoring journalists a two-day boardroom session on torque ratios and their new brake pad roadmap? (no pun intended) Can you imagine a throng of movie reviewers studying cinematography best practice for the best part of week? I think perhaps not.
I don’t have to explain why we get the chance to attend this type of event – software engineering is, in short, complex. But I think it resonates with the same reason that many of you are developers in the first place. This complexity inherently brings power and that is what makes working with software attractive. Am I right?
Wednesday 29 August 2007, 9:38 AM
An Inconvenient Truth: A Convenient Option?
So I’m checking in for a BA flight this morning online and I notice that I’m now being offered the chance to offset my carbon emissions. A return to the East coast of the USA results in 1.32 tonnes of CO2 and the cost to offset this will apparently cost me £9.88. Note to self: I must look into this and start doing it.
Anyway, this got me thinking about a pal of mine who is associated with a company that claims to be able to offset the environmental cost of hosting your own web site. Sounds weird right? But think about it, hosting your own web site on your chosen ISP’s server means that all that data you are so proud of is sitting (and gently humming away) on a server somewhere. Now even an efficient server emits over two tonnes of carbon per year, that’s more than my return to Baltimore!
How does it work for the web then? For a £6 payment www.coco2.org will offset 100kg of carbon per year to cover the emissions that your web server generates. Whether this type of activity is proven to make a difference yet I’m not sure. I guess we’ll all learn more about this in the near future. I doubt too many environmentalists will read this blog; but if you are a green guru and a goodly geek to match then do let me know.
Monday 27 August 2007, 2:14 PM
Who programmed my post bag?
On today’s bank holiday with not too much happening I managed to get through a backlog of old post that had accumulated throughout the week. You know, the usual stuff – offers for cheaper car insurance, I may have already won a holiday in Antigua, am I worried about hard water etc…
So not much relevance to my life in the software industry then – or so I thought until I saw that NatWest bank with whom I take out home insurance, has offered to provide me with home insurance. Great! I thought – a new approach to boring old house insurance and they want to mail me about it. Of course not, it’s just that the bank’s database systems are simply not ‘connected’ enough to know that I am already a customer.
It’s at this point that I become “Mr Angry” and phone them up and get some poor sole in Bangalore. I then usually berate the unsuspecting phone-worker and start explaining how they need to get real and start looking for some new data integration software.
But – you know what? The sun is shining and that’s pretty unusual for a British bank holiday isn’t it? I think I’ll leave it for once.
Thursday 23 August 2007, 7:29 PM
Stop, collaborate and listen
I don’t know, scarcely a week goes by without me seeing a raft of publicity materials extolling the virtues of yet another collaborative software solution. Whether it’s IBM Lotus, Chordiant, Novell, Microsoft or even WebEx, there’s always a smorgasbord of info out there from the most basic groupware technologies to the extended virtualised collaborative solutions of tomorrow.
There’s undoubtedly value in providing all geographically (and even temporally dispersed) development teams with transparent participation in every step of the product development lifecycle. But as yet, I’ve been unable to cut through the hype and see beyond the so-called, “high-value mission-critical customer experience,” that these products are designed to deliver.
In a refreshing stab at explaining the pragmatic benefits of this section of the technology landscape I did learn from Chordiant that even the basics, like figuring out how the software in question works or how best to apply it to a business problem, becomes much easier when supported by a community-based development environment that includes people who actually developed the software and solutions and partners that have implemented them.
Is this an area too wrapped up in its own marketing-speak for your liking? Can you see beyond the ‘development ecosystem’ – or are you already in it and using these kind of solutions to really aid the software engineering that you do on a day to day basis?
Monday 20 August 2007, 10:54 AM
The Beautiful Code
With the England vs. Germany game around the corner this coming Wednesday, I caught a sniff this weekend of a new book called “Beautiful Code: Leading Programmers Explain How They Think.” I immediately wondered whether it would be a mind expanding – or perhaps slightly numbing – read. According to this tome’s co-editor, the aim of the book was to help programmers by having some of the world's best-known developers 'think aloud' about their favourite pieces of code.
Beautiful Code is a collection of essays and articles by well-known software development and programming experts such as Brian Kernighan, creator of the C language, Jon Bentley, a renowned author of the book Programming Pearls, and Tim Bray, a major contributor to the XML and Atom web standards.
It sounds like we’re championing the work of great coders up there as we do with our favourite soccer stars doesn’t it? Whether that is a good thing or not I’ll leave you to decide; software engineers rarely seem to form fan clubs to worship the greatest achievers in the industry do they? But, in truth, if you look at the blog popularity of some of the industry’s most prolific coders (IBM Fellow Grady Booch immediately comes to mind) then there may be a sub-culture of developer devotees out there after all.
Currently rated No.1 on Amazon.com in the programming category, this book gives advice and case studies on how to creatively and carefully design solutions to high-profile software projects and development dilemmas. For example, the "Beautiful Tests" chapter written by Alberto Savoia, CTO of Agitar Software, helps developers understand how running consistent and thorough tests can make code more robust.
Is this kind of book likely to help you score more programming goals? Who knows – but it’s good to keep up your training routine at all times isn’t it?

