3 ms·
Comments like yours are a great example of why Linux has a hard time being user friendly. You take something that's deeply technical but easy to understand for
by hsn915 5y ago
Comments like yours are a great example of why Linux has a hard time being user friendly. You take something that's deeply technical but easy to understand for yourself, and somehow generalize it to everyone. "If it's easy for me, it is easy for everyone", without noticing that perhaps your expertise plays a big role in making it easy.
The better question is why should a layperson ever need to know about systemd in the first place.
I'm a technical person and I don't know about systemd, nor have I ever needed it.
When designing products for end users who are not technical, the overriding design goal should be easiness and reliability.
Easy: does not require special knowledge or expertise to operate.
For someone who just wants to self host, having to learn about systemd, by definition makes the product/system not easy.
Reliability: does the system implode in unexpected way based on the slight variations in the environment? If it implodes as such then it is fragile. If it does not, then it is robust and reliable.
For the end user, what matters is that the system is easy and reliable.
If the system is easy but not reliable, the user is effectively forced to become an expert in order to fix the system when it breaks. Thus, if a system is not reliable, then it doesn't matter that it's "easy".
Simple/Complicated only concerns the developers. It's important to keep systems as simple as possible under the hood, because a system that is simple is easier to make reliable than a system that is complicated. But for the end user it does not matter directly. Simplicity is about how many parts the system is composed of and how these parts interact. If there are many many parts that all have to interact with each other, then the system is complex.
Maybe once someone learns about systemd they can find it conceptually simple. But that's a moot point. The point is: they should not even have to learn about its existence.
A system where editing text files can make or break the system, is not a reliable system. It's easy to make mistakes in text files. Specially for users without expertise.
Imagine yourself a windows user. You edit a text file. Restart the machine, and now it doesn't boot, or boots in a special text-only mode. (This is not unheard of on linux based systems).
- klodolph 5y agoSystemd is easy compared to init scripts. Maybe that’s the comparison point. I know that’s my comparison point, since I wrangled init scripts for a couple decades before systemd, and when systemd came out, suddenly it felt a million times easier to run services. > A system where editing text files can make or break the system, is not a reliable system. It's easy to make mistakes in text files. Specially for users without expertise. I don’t think that’s a salvageable notion of “reliability”. I could bork Mac OS or Windows easily enough by editing text files, if I really wanted to.
- hsn915 5y agoHere's why this matters: some systems require you to edit text files in order to work at all. But at the same time, they are extremely sensitive to the content of the text file. Editing text file to make advanced configuration may be acceptable if the casual end user never needs to do it. When I say never, I mean never ever ever. If you need to edit it once every few months, you better have really really good "linting" facilities to tell the user right away whether their edits are going to be accepted or going to cause the system to break. Now granted, systemd is a system utility, not an end user application. If the system overall is built such that the end user never ever ever needs to know about systemd, then it's sort of ok. Now, when it comes to self-hosted, the line between "system utility" vs "end user application" may be blurred. If you think a web server is a system utility, then by all means, go ahead and make it fragile and complicated. That's how everyone is doing it. But if you think - and at least I do - that it's important for casual users to be able to self-host their own websites with ease and reliability and without having any system level expertise, then the points I mentioned about the system not imploding due to the content of text files is extremely important.
- klodolph 5y agoAh, I thought you had a complaint about systemd & text files. It sounds like you are okay with it, unless I misunderstand your comment.
- hsn915 5y agoI don't know anything about systemd, nor do I want to. I absolutely have problems with configuration via text files. A lot of things on linux desktops that a typical user wants to do require editing text files to work. For example, try searching for information about how to enable Japanese input in Gnome or XFCE desktops. Invariably, the steps involve installing and configuring some specific packages, and editing several text files to let the system know about the fact that you want to use an IME for text input. This is unacceptable.
- 5y ago
- aulin 5y ago> For someone who just wants to self host, having to learn about systemd, by definition makes the product/system not easy. Sometimes HN threads seem to self-sustain forever starting from a pointless argument and discussing it like it was the truth. Learning systemd is not necessary for anything in day to day life, not in desktop use, not in self hosting, default configuration from package managers work fine out of the box. At most you need to learn how to start, stop, disable and query service status. I've been using linux since decades, way before systemd, never had to learn systemd until I needed to ship my own custom services on my own custom devices. But at the point you're way far from being a layperson.
- Hendrikto 5y agoDid you even read my comment? You are attacking a strawman. > You take something that's […] easy to understand for yourself, and somehow generalize it to everyone. "If it's easy for me, it is easy for everyone" No. I am taking something that‘s easy for me, and suggest making it easy for everybody. > The better question is why should a layperson ever need to know about systemd in the first place. They shouldn‘t, and I did not say so. That‘s the strawman. Does an average Windows user know about the NT kernel? No, and he does not need to. > When designing products for end users who are not technical, the overriding design goal should be easiness and reliability. I agree. > having to learn about systemd, by definition makes the product/system not easy. You would not have to learn it though. You could just flip a switch in the GUI. > they should not even have to learn about its existence. And they would not have to. I don‘t know how my car works, and I don‘t need to. I can use the simple interface (steering wheel, pedals, shift) which is exposed to me. > A system where editing text files can make or break the system > You edit a text file. Again, complete strawman. You would not edit text files.