2020 has broken many rules about software development. Some perceived trends, however, remain myths
Some trends come and go, some trends stick. I remember when Docker launched and it was barely mature enough to run unit tests, and now containers are a common way for modern orgs to deploy applications. Weâve seen the rise of microservices but also the return to the monolith. Weâve seen âobservabilityâ take off in popularity, while serverless remains a buzzword with limited (but fast-growing!) adoption. Machine learning and artificial intelligence are still click-worthy headlines, but how much actual ML is being used within our applications?
The True State of Software Development
Letâs look at five common myths about the current state of software development and evaluate why theyâre not completely true:
Digital Transformation Initiatives Will Be Hindered by the Pandemic
We live in an online world where every business is already a software business (or rapidly becoming one). The impact of the pandemic further highlighted ISGâs research which stated that â2020 will still see the rapid scaling of digital initiatives across industries.â While some industries have been hit so hard that digital projects had no choice but to stop (e.g. the airline industry), in many circumstances this will be the catalyst to fully embrace digital transformation.
The Waterfall Method Still Works
Organizations that havenât adopted more agile and iterative approaches to building software are operating at a significant disadvantage. I know there are many big companies that still believe in doing all of the strategic planning upfront (I know this because I talk to these companies), but the truth is that it leaves very little room for flexibility and improvement in real-time. In todayâs world, the customers and the users are kingsâit is no longer possible to build great products without their input. If you take anything away from this article, itâs that the waterfall methodology needs to be abandoned once and for all.
Everyone Loves Kubernetes
K8s is not a one-size-fits-all solution. The fact of the matter is that a large chunk of the enterprise still hasnât fully embraced the cloud, let alone started containerizing their applications. So while we have to give credit where itâs due and acknowledge that K8s is the clear leader for orchestrating containers, we also have to acknowledge that the hype doesnât quite match the adoption. Itâs still a relatively young technology.
According to a report from Datadog last year, 45% of their customers that run containers use Kubernetes. That number is growing and is certainly impressive, but when you realize that only a chunk of their customers run containers in the first place and they are a modern monitoring solution where weâd expect to see a higher percentage than a random sampling, itâs clear that K8s is far from mainstream.
Everyone Is Doing Tracing
The rise of the digital age has put monitoring and observability in the forefront. As we rely more and more on online services for internal and external interactions, we better make sure they are working properly. But at the same time, regardless of industry headlines and conference talks focusing on tracing, the truth is that the industry at large has yet to adopt it.
For most organizations, thereâs so much room for improvement in getting logging and metrics right, that thereâs no need to opt for tracing (yet). After all, Google built most of its global platform relying on metrics. Unlike SREs, developers often find tracing alien and very cumbersome to deploy and wield. Instead, more and more companies are opting to empower their engineers to see what’s going on in remote environments through software understandability.
AI Will Solve Our IT Problems
Weâve been hearing about the promises of AI in IT for a long time now. One of the terms still actively promoted that I am very skeptical of is “AIOps.” What does that even mean, really? According to a recent report from OverOps, only a very small percentage of companies are even considering AIOps in their plans for the future.
That said, I do believe in making better, data-driven decisions. So the more data we can collect, contextualize and understand, the better. We see how this helps companies identify anomalies, alert on issues and even project out into the future. But none of this, really, is artificial intelligence.
Conclusion
Thereâs often a gap between hype and actual adoption. Thatâs the role of good marketing. And ultimately, hype helps drive adoption. But as technical practitioners, we need to stay rooted in reality in software development and beyond. So while I am convinced agile has proven to be the best way to build and deploy software, and that most organizations would benefit from letting go of old-fashioned waterfall processes; on the other end, I havenât been fully convinced of the benefits of tracing and AIOps for most companies.

