This week's editorial is a guest post from Phil Factor.
I was having a beer recently with a DBA from a large organisation. We were swapping stories about work. Business was good, he affirmed, despite the DevOps initiative within IT. I expressed surprise: 'Despite'? I, as a database developer, rather enjoyed the prospect of the new spirit of cooperation with Operations that the DevOps initiative engendered. He explained that their company had been experimenting with a flavour of DevOps that was, in reality, 'NoOps', or rather 'NoDBA'. Some development teams had launched into applications based on microservices on top of MongoDB, developing the entire stack themselves. I cringed: I could see what was coming. My friend was surprisingly cheerful as he related the story. The mood of the development teams had swung from the cocksure to panicky as the release date loomed and testing under workload conditions had come up with sporadic but devastating bugs. They weren't easy to replicate but turned out to be transactional.
A multi-user transaction-processing system is a mysterious place for most of us, which is why we love SQL Server and other RDBMSs so much: They protect us from the inherent complexity. Anyone who is unused to transactional server-based systems will find it bewildering too. Suddenly, the developers were smiling somewhat glassily at the DBAs and buying them drinks: Just a quick favour? The fix that the DBAs offered was painful but reasonably effective, and involved scanning logs to check on open business transactions. The processing overhead took the gloss off the performance advantage of MongoDB. Basking in the new bonhomie between devs and DBAs, the DBAs scanned the microservices architecture in wonderment and gently enquired about the disaster recovery system that all new corporate applications required. Suddenly, the DBA team was having to recruit new members to deal with the extra workload. In fact, business was so brisk that my friend who was relating the story offered me a job that I hurriedly but politely declined.
Long experience in IT brings as a by-product a tendency to grumpiness. The industry is quick to trumpet its successes and conceal failure, but we the die-hard foot-soldiers can remember the setbacks all too easily. Because we as an industry are particularly cursed with the habit of repeating our mistakes rather than learning from them, the voice of experience is mistaken for the whining of a technological dinosaur. Yes, I worked with a team that made the same mistake at a time when mullets, flares and disco music were fashionable. I just don't want to go there again.