Thoughts on Linux

Written by Michael Cole - June 18th 2015


Before I go further into my BSD journey, I wanted to go back and talk about Linux. I don't want to come across as a Linux hater. My income is basically because of my Linux skills, and has been for most of my working life. And still at this moment 90% of my home systems run Linux. I also don't want any of these posts to become BSD vs Linux. That is not my purpose in writing any of these.

You can skip the systemd portion below if you like.

-=[ systemd part start ]=-

You've most likely noticed that my domain name is pid1.com and that on my main page it says init. And by this time you have put me in the systemd hater camp. You would be partly correct in that. But maybe not for the reasons you would think. And no matter what I say you will most likely either hate me as of this paragraph or be interested further.

I want to get all the systemd non-sense out of the way, so I will say what I'm going to say right here. I'm going to try to be as clear and to the point as possible and not waste much time on this. I think there are technical issues with systemd, I'm not fond of binary logs, I'm not fond of its fingers being in more and more places and I think that it was sad that Linus had to stop accepting patches until they started supplying fixes for issues. Those are the reasons you expect.

That being said, I think that more traditional systems don't handle moving from environment to environment as well, and systemd allows you to start processes in parallel so that boot may be faster. Also I can see advantages to having services/daemons linked to each other and clear dependencies. So those are a few good points, bet no one saw that coming.

But in my case, usually as an administrator of servers and not a desktop or mobile user (although I do use a laptop and mobile devices), I feel that I don't move my servers around or change the environment much, I don't reboot them often, and I like to fine tune my start up process by hand and have it stay that way.

What I don't like about systemd is not technical at all. It was what it did to the community. In both distributions and in the Linux community as a whole everyone started arguing and fighting. And it was sort of funny, even people who were pro or anti systemd were classified as the opposite because they posted something that even questioned the other people's view. And then many people didn't even care, they just wanted to live on with their happy experiences with Linux and enjoy life.

-=[ systemd part stop ]=-

Now that part is over and you have come up with an opinion about my opinion, lets move on to more about the community. So I had some other bad experiences in the community. I have always tried to help other people as much as possible, and I would go to forums answer questions partially or fully. Time has become a bit more of an issue now that I have a son, and watching him can take up a lot of time. Usually when you are trying to help someone with a problem you know very little about what they are actually trying to do, and the reason behind it. And truthfully that doesn't really matter. Now there are a few ways to answer them. You can answer their exact question as directly as possible, or put a lot of interpretation and presumption into it and guess at what they are trying to do. Usually I did a bit of both. I would try to answer the question directly as possible, and if I thought there was another way I would suggest that. Sometimes you even ask other questions to get more information. But I got sick of the forums and trying to help people because you would get many people who would simply state that people shouldn't do certain things, or telling them what they need to do. I used the word telling specifically.

Many of the mailing list have become glorified soap operas and very toxic as well. It is hard to watch that go on. And it used to feel great to have a need, setup a server, build a script, or website, or email server, etc and look through documentation and learn new things. But using Linux lost that spark for me. BSD has drawn me in with regard to that. I can read the documentation or a book and I'm riveted and it makes me want to play around with different options, both different versions of BSD and different packages within a single version.

It saddens me that for reasons beyond my control, I can go from having my first Debian install in 1995 and removing Windows and doing everything in Linux. I could see the Debian logo contest when they selected the swirl as their logo, and have fun looking over all the choices. I could run so many services at an ISP on Debian and CentOS. I even migrated a data center from BSD to Linux during my ISP days. That was mostly a lack of understanding on my part and a time crunch. When you don't have a lot of time you use what you know best.

I also see how Linux can make for a lazy System Administrator. For example, we type "ls *.txt" and we get a list, but we decide we want some details about the files, like size, or creation date, etc. In Linux with our laziness we hit up arrow and then we type space and add "-lh" at the end, so we get "ls *.txt -lh". And it actually returns what we want. I also use other operating systems at work, namely Solaris and HP-UX. If I do the same on those, they basically call me stupid and tell me to type the command properly or that a file names -lh doesn't exist. And honestly, it's better that way. It may be less convenient for me to do. But firstly it's not really safe. All of your options should come before your arguments. It can be dangerous the other way. And secondly you really should take the time to know what you are doing when working with something important. The ls command may not be an example of something critical, but it was simply an example anyone can try. And yes I am aware that you can use "--" to ensure that nothing after that gets treated as an option, which helps to mitigate some of the danger of being stupid.

Anyways, I mainly wanted to clear up some things, and try to avoid negativity about Linux in my posts. I may compare some things or show a this command is like this command. But I will not do a BSD vs Linux post without a really good reason (by that I mean a very specific difference that I have found). So don't expect that.