The insane rate of change that everyone in IT now has to get used to brings to mind a classic science fiction story from my youth.
In the yarn, we meet a bunch of business people discussing a big steel contract. Turns out that it’s for a big starship that's about to embark on an adventure in the depths of space, and the characters are debating whether to join the trip.
The surprise twist is that you think the conversation takes place in America, but it turns out to actually take place on the Moon, in some far-future Lunar colony!
The message of this tale (check it out here, I haven’t done it justice) is that the baseline keeps moving. In the past, being in data processing meant just speaking COBOL (and maybe a bit of Assembler) and being able to wrangle one or two of the big hardware families; IBM, ICL, or even Wang (yes—ask your parents!)
Then came client/server, then relational database, and object-oriented programming, and Web services, and the cloud. And… it all got a bit complicated. Us IT folks used to have the luxury of long planning and testing cycles. With development approaches like Waterfall or SSADM, you were supposed to scope things out to the microdot, then slowly and carefully build the perfect design.
Great in theory, from a user’s point of view, horrible in practice. As a result, IT became marginal, annoying figures in meetings who only seemed to answer as standard, “It’ll take six months. What was the question again?” to any line-of-business manager’s demand for new functionality.
Where enough isn’t enough.
Around ten ago, we decided enough was enough. The business finally got what it wanted in the shape of rapid delivery of ‘good enough’ applications that it could deploy, update, or dump as external business conditions changed.
Luckily, this new development methodology came along just as we got the cloud. This freed us from the hardware layer and finally allowed us to focus on what we wanted the code to do for a workflow, rather than keeping 27 old software packages and home-crafted code limping along.
So, like in the story, we ended up living on the Moon.
By this I mean, as an industry we transitioned from legacy to a clean, new, modern, functional baseline, where everyone was using some form of cloud (at least somewhere in the stack), a clutch of key common open source platforms (Linux and Apache), and a set of microservices and containers to operationalise and optimise easy interoperability and portability.
The time of the old-fashioned ‘IT Manager’ ended, and the era of the CIO began. We reached our science fiction future at last, living on the business equivalent of the famed Lunar South Pole.
Great, but now the boss wants us to colonise Mars, too!
This brave new IT landscape means we must constantly deliver better and faster solutions for the business. That’s because our colleagues are now dealing with an always-on, 24x7, app-based world that's demanding more, better, and cheaper.
As a result, the IT leader is constantly under pressure to absorb new working practices and adopt and produce new technologies that satisfy these demands. Basically, you now have to be an astronaut – always training for the next lift-off.
A spirit of innovation and avoidance of settling
It’s no good pointing to the metaphorical Sea of Tranquility outside the dome and saying, ‘Isn’t that good enough for you?!’ Yes, we have come far, and you’re doing great—but there really is no end to this journey of digital transformation and exploration.
Seeking innovation and constantly pushing the envelope is now BAU. To be successful, you need to work with partners who agree there is no ‘finish line’ for modern business IT.
An occasional pause for breath is fine, as it gives us time to collect our thoughts, audit where we are and what we’ve learned, and course-correct if required. But such analysis should really just be a springboard towards further innovation. The constant goal now must be delivering excellence to the business and our customers.
On a personal note, like the story, my career has been a series of astronaut missions! From early multi-processor computers through relational databases to massively parallel data warehouse appliances, then from Big Data to enterprise-scaled Agile with microservices and containers/Kubernetes, to my current gig with distributed PostgreSQL and YugabyteDB.
Time to slow down? Absolutely not.
See you on the launchpad!