About a decade ago we saw the beginnings of a transformation in the software industry - the two bastions of development and operations, sworn enemies for the longest time, began to embrace the idea of DevOps. I don't have a career in software development, and I'm certainly not a historian, but it's hard to be a "hobbyist tech junky" like myself and not come across the buzz words of the day, and DevOps is certainly one that is trending (and now we have GitOps, DevSecOps, etc.).
As I watch this industry evolve, and I see the major improvements that have been a direct outcome of it, I wonder what it would be like to see the same sort of transformation within the industrial automation world. Anyone who has worked in the field for a few years knows that most automation systems are woefully dated when it comes to software. The same divide that seemed to exist between development and operations in 2011 also seems to be present between operations and IT in a modern industrial plant context today. What would it look like for this wall to come down? For automation technicians to be encouraged to learn IT and be responsible for operating this side of the system? Many of us have had to learn some IT out of necessity, but it's often very little, and typically not encouraged by the companies we work for. Networking? Don't touch, the IT team owns that.
Pushing the envelope further, what would it look like for operations to embrace software design principles in general? One of the crowning achievements of DevOps is the CI/CD pipeline - a way to seamlessly spit out new versions of software with a huge reduction in effort as compared to the model of the early 2000s. What would it look like for a modern plant to implement something similar? What if our PLC and HMI code was revision controlled through git, unit tested by simple scripts, underwent integration test with emulation, and then was canary deployed to operator workstations and PLC racks? Let's say a site has six cooling skids - the automation system deploys the code to an offline one, asks the operator to turn it up, performs a bunch of canary testing, and then validates the change is working before committing it to the master branch. All of the wonderful benefits of modern DevOps principles being applied to the industrial realm, and this is only one very small example.
While I often am agitated at the speed the industrial automation scene evolves at, one of the pro's of our slow speed is we get to let others test and learn for us. Well, we've arrived, and there's a whole industry waiting to teach us how we can drastically improve reliability, redundancy, operability, visibility, and so many other "ility's" through these modern principles. While this has been my personal mission for some time, I'm only one person, and we're going to need a lot more than that to move an industry as big as this. So, think about it. Do some research of your own, test what I'm saying, and then ask, is this worth it? I think so, and this is one of the primary philosophies behind this blog, so if you answered yes, keep reading, and if you're really excited, reach out and let's chat! I'm always interested in meeting and brainstorming with those from the industry.