On Systemd and DevOps
Join the DZone community and get the full member experience.Join For Free
If it's not broken, don't fix it.
Those who don't understand Unix are doomed to reinvent it, poorly.
Complexity is the enemy of reliability.
Are some of the more frequently heard arguments in the systemd discussion. Indeed I see and hear a lot of senior Linux people react openly and probably way to late against the introduction of systemd in a lot of our favorite Linux distributions.
To me this is a typical example of the devops gap. The gap between developers writing code and operations needing to manage that code on production platforms at scale.
Often developers writing code that they think is useful and relevant while they are not listening to their target audience, in this case not the end users of the systems but the people that are maintaining the platforms. The people that work on a daily base with these tools.
I have had numerous conversations with people in favor and against systemd, till today I have not found a single general purpose use case that could convince me of the relevance of this large change in our platforms. I've found edge cases where it might be relevant. but not mainstream ones. I've also seen much more people against it than in favor. I've invited speakers to conference to come and teach me. I've probably spoken to the wrong people,
But this is not supposed to be yet another systemd rant.. I want to tackle a bigger problem. The problem that this change and some others have been forced upon us by distributions that should be open, and listen to their users, apparently both Debian and Fedora/RHEL failed largely but somehow fail to listen to their respective communities. Yes we know that e.g Fedora is the development platform and acts as a preview of what might come up in RHEL and thus CentOS later, but not everything eventually ends up in RHEL. So it's not like we didn't have an 'acceptance' platform where we could play with the new technology. The main problem here is that we had no simple way to stop the pipeline, it really feels like that long ago Friday evening rush deploy. Not like a good conversation between developers and actual ops on the benefits and problems of implementing these changes. This feels like the developers of the distributions deciding what goes in from their own little silo and voting in 'private' committee.
It also feels like the ops people being to busy to react, "Someone else will respond to this change, it's trivial this change is wrong, someone else will block this for sure."
And the fact that indeed Operating System developers, like Fedora and Debian friends kinda live in their own silo. (specifically not listing CentOS here..)
So my bigger question is.. how do we prevent this from happening again.. how do we make sure that distributions actually listen to their core users and not just the distribution developers.
Rest assured, Systemd is not the only case with this problem.. there's plenty of cases where features that were used by people, sometimes even the something people considered the core feature of a project got changed or even got ripped out by the developers because they didn't realize they were being used, sometimes almost killing that Open Source project by accident.
And I don't want that to happen to some of my favourite open source projects..
Published at DZone with permission of Kris Buytaert, DZone MVB. See the original article here.
Opinions expressed by DZone contributors are their own.