The Computer Weekly Developer Network (CWDN) talks to Viktor Farcic in his his role as senior consultant at CloudBees in line with a mini-series of posts related to the rise of what we have called the ‘holistic’ application.
Not perhaps a formally defined technology industry term, the holistic application is an app that has arisen in the age of cloud with containerisation, microservices and compartmentalisation of discrete components at its core.
CloudBees describes itself as the ‘hub’ of enterprise level Jenkins (the open source automation server) with a fairly meaty finger in the cloudy DevOps pie.
We asked CloudBees’ Farcic what he thought holistic software really means and he didn’t mince his words.
“It means nothing. It’s just an attempt to put all the words like Agile, lean, DevOps and all the other processes known to us into one umbrella because it sells well,” said Farcic.
CWDN: How should we refer to the new way of building applications then?
Farcic: I’m not sure what is meant by ‘the new way of building applications’. If that refers to how we build applications today using containers, microservices, the cloud, schedulers like Kubernetes, continuous deployment and so on – then there is no name for that. If I have to name it, it would be ‘living in 2018’. Some of us are up to date and are trying to leverage the latest and greatest, while most of the rest of us are far behind living somewhere around 1999. I don’t think we should come up with a new name whenever technology changes, because that would mean that we’d need new names every day.
On the other hand, we do have DevOps as a new way of working, but that is not related to technology. It’s about bringing down silos and allowing people to cooperate better by making self-sufficient teams fully in charge of their applications and with shared goals. Those teams often end up working with newer technologies due to having less constraints.
CWDN: How do we monitor applications and build software successfully in the always-on age?
Farcic: We tend to use monitoring tools just as we did before. The major difference is that today everything is more dynamic and the tools that were great yesterday might not be a good choice today. We are moving towards tools that can not only monitor but also discover changes in our cluster. We are trying to reduce the usage of dashboards and people staring at them and building intelligent alerting systems that will attempt to correct the issue and notify humans only if the fix cannot be applied automatically.
Today, most of the tools we are focusing on are members of Cloud Native Computing Foundation (CNCF). It’s the place where most of the new ideas are being gathered and developed. If we focus on monitoring, today that is mostly Prometheus and the tools around it.
CWDN: Is the ‘cloud developer’ a naturally holistic continuous developer?
Farcic: The cloud developer is just another invention meant to distinguish those that are using today’s technology and processes from the rest of the world. It’s a way to say that someone is a developer who recognised the need for fault-tolerance, high-availability, rapid releases, automation and a few other things that are today considered a norm.
It’s pointless to say ‘cloud developer’ just as it’s pointless to say that someone is a DevOps engineer. Cloud is here to stay and it brings undisputable value. That being said, it’s not something that appeared yesterday. Companies have been using cloud for a long time without renaming engineers into cloud developers.
CWDN: Is holistic software essentially a question of process-centric BPM technologies?
Farcic: It’s just another invention that tries to sell consulting hours to big companies. Soon it’ll fail because the change of the processes means nothing without culture change. Then it will be renamed to something else. It’s just another cycle of endless renaming of things so that they sound new and can be sold by consultants!