There’s something that I’m increasingly paying attention to these days.
And I’m seeing it everywhere: rapid software developments in short periods. It has been an ongoing trend, but now it is more clear than ever.
We are outsourcing a lot of our IT problems to third parties, perhaps in the cloud. This goes hand in hand with the upsurge of short-cycle improvement and development methods such as Lean and Agile.
The last 40 years has seen an increasing speed of application development. In the very beginning, the smallest unit of time for an IT development was one month. And for relatively small things it would even take up to a few months. Then when second-, third- and fourth generation development toolsets came along, productivity increased substantially. Through rapid development methods and tools pilots only take up 1 to 3 weeks. Remember that with traditional methods the prototyping itself would last up to 6 months.
In older technologies it was not that easy to make amendments to new or existing systems. But then Model driven Application Development came along and it said: change happens. This is what code generation is all about. Compare that with traditional software development, which tried to get a complete functional specification of a system upfront. This turned out to be false. It is always in beta, as the phrase goes in the IT world. It means: constantly under development and never completely finished.
Software development and IT in a broader sense should pick up these ideas from industrial design. In a Ted Talk, Tom Chi, responsible for the Google Glass project, gave a fascinating glimpse into the way Google is working with rapid prototyping. The first prototype – a makeshift object – was developed in one (!!) day. “Doing is the best kind of thinking,” is what Chi told his audience.