LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - General (https://www.linuxquestions.org/questions/linux-general-1/)
-   -   Why is everything so complicated now? (https://www.linuxquestions.org/questions/linux-general-1/why-is-everything-so-complicated-now-4175736001/)

business_kid 04-19-2024 03:59 AM

In a way I think you're both right.

I hate to say it, but I am persuaded given that both LVM and Systemd have their place. I think Wayland in development is a separate case, and let's see where it goes.

The trouble is, LVM and Systemd belong in enterprise - that's their place. Now I would understand them on an enterprise distro, but I find them a bit much on a distro for home users. LVM I can leave off, but Systemd is in danger of assimilating things.

Then, of course, the Government hackers of many countries will start on it and it could well end up being seen as a cancer. If some governments have guys in Systemd like they had in xz, watch out.

BTW, I also feel if a larger percentage of the community could be persuaded by reasonable arguments, the linux community might be a better & more progressive place.

sundialsvcs 04-19-2024 07:14 AM

I don't know if you'd be "grateful" for systemd – but I've been grateful for LVM many times. ("Cloud" installations seem to always need to have more storage added, and this way you can do it without downtime.)

Other than that – "your Linux system works." It does things for you, however it does it. You usually don't care "exactly how." And that is really the point. If you do care, "respond as you see fit." This world is chock-full of "distros" to choose from, including: "Linux From Scratch (LFS)." You can get your hands as dirty as you care to.

business_kid 04-19-2024 09:05 AM

Quote:

Originally Posted by sundialsvcs (Post 6497072)
I don't know if you'd be "grateful" for systemd – but I've been grateful for LVM many times. ("Cloud" installations seem to always need to have more storage added, and this way you can do it without downtime.)

Other than that – "your Linux system works." It does things for you, however it does it. You usually don't care "exactly how." And that is really the point. If you do care, "respond as you see fit." This world is chock-full of "distros" to choose from, including: "Linux From Scratch (LFS)." You can get your hands as dirty as you care to.

Heck, I came through windows to get where I am. Systemd has to succeed where selinux (remember that?) failed. I have a natural dislike & distrust of any program that wants to take over my pc or it's apps.

Besides rpm based distros, I did LFS, & ran it for a year or two. It's a good exercise for newbies, but a PITA in need of a package manager. I did HLFS (= Hardened LFS, R.I.P. 2005) & Kevux before I promoted myself to Slackware. Now I want a .deb based distro as a spare, purely for the repository. I'm about to install Devuan where Debian was on this box. I can install things like Kicad, Freecad, or FPGA suites, etc. with more dependencies than you can shake a stick at rather painlessly there.

rclark 04-19-2024 10:26 AM

Quote:

"Cloud" installations
None of my 'installations' are in the cloud.... I'd never ever do that here at home and certainly don't see a use case for it, -- even at work. I will not run applications located in the cloud (like editors/spreadsheets/etc.), or put personal stuff in cloud storage. That just complicates things and encourages lock in too (which Google/M$/Apple/etc. really like and encourage in name of convenience).... Back to KISS and all things local and bare-metal as far as one can be without dockers, sandboxes, etc.

wpeckham 04-19-2024 11:31 AM

Well, the original question was due to the OP recreating a partition that then had a new UUID. Since the UUID had changed it was not recognized by anything that had the old UUID. I see that as a sysadmin issue, not a complication, but I understand his viewpoint.

The UUID became the identifier because of UDEV which could (and often would) change the device path on every boot (so today your first physical hard drive is /dev/sda, while yesterday it was /dev/sdb and the second disk was sda). UDEV made dynamic device detection easier and faster, making things appear less complicated for the end user. I like using labels better, but UUID was an attempt to make things more dependable and easier for the end user.

So, things are so complicated because we keep trying to make things WORK as if simple for people who want to not deal with the complexity.

I can get that. That is okay, as long as it really does make it simpler or easier to use. So to me UDEV makes sense. UUIDs make sense, although I prefer a different solution. LVM makes sense as soon as you assume that you might have to make storage changes that it makes easier, just as it makes sense to avoid it if you do not. (I know of no distribution that forces LVM on the user on installation, but I do not use ALL of them only a bunch.)

SystemD does not make anything easier, or more simple: I do not understand how it is justified. What problem does it solve that is not more elegantly solved by something less complex? I am willing to consider any argument justifying it, but I have yet to encounter one that makes sense.

-------------------
I am reminded of code refining in the old days.
STAGE 1: analyzing the problem, data flow, and desired solution characteristics. No real code.
STAGE 2: design a code outline that would provide the solution. No real code.
STAGE 3: code or pseudocode the solution in the most simple, clear way. Most likely not elegant, not efficient, but it works. Kinda. Bad solution. (Bubble sort?)
STAGE 4: add error checking, data verification, cross checking, event management and complicates things MASSIVELY. Solution is totally inelegant, but works and avoids major problems. (COMPLEXITY and bad solution!)
STAGE 5: refines the solution, combines code elements (generalizes objects and both generalizes and optimizes methods?) and returns a simple, smaller, more consistent, and more easily maintained solution. (This is the first case of verified good code that should ever be in production: alas if you show stage 4 to management it will go into production and you are doomed!)
STAGE 6: maintenance and modifications for changing environment (data, features, changed requirements) Done well it loops between fix and refine coming back to stage five again. Done poorly it returns to stage four and creates such a hot mess that it is cheaper and easier to just rewrite the whole thing. (Looking at YOU X.Org)

We have a lot that has become very simple and elegant and looks to be in STAGE 5 - optimal. It is simple, dependable, easy to maintain, easy to use, and elegant.

Alas, we have some things that have changed and not yet been refined to an elegant, simple, correct, and trouble-free solution. Those need attention, and team attention is FAR better than one motivated individual because refining to elegant is HARD WORK and benefits by extra eyes and brains on the code.

And we have a VERY few things that were never intended to be refined, where complexity IS the point, and elegant would be at cross purposes to the goals. I HATE those. Those violate the UNIX philosophy, and not in a way that makes sense to me. I fear SystemD might be one. Feel free to nominate others, perhaps we can get them refined and improved or eliminated from environments where that complexity is unjustified.

sundialsvcs 04-19-2024 11:55 AM

As an aside: "LFS" probably taught me more about Linux than any other experience could have. (And note: before this, I had decades of "operating-system level" experience, doing IBM assembler language in a mainframe world ...) I then jumped into the "Gentoo" distro, which still works "from source" but has a sensible package system. With this, I took an "old and slow" computer that had been sold to me with "Windows 95" and discovered just how fast the thing could actually be. :) From power-on to ready-to-go with-GUI in seven seconds flat. ("Old Dobbin. RIP." The video finally gave out. *Sigh...* But I still have the disk drive ...)

In these "days of VirtualBox®," I heartily recommend that you go through "the Linux-From-Scratch experience." And then, check out Gentoo. It is not for the faint of heart. Today, you can "have that experience" painlessly – (well, so to speak ... :banghead: ) – "while risking nothing." If you want an entirely-custom Linux that is absolutely optimized for your hardware and your personal preferences, then, by Gawd, you can have it. And, along the way, you'll learn a bunch of things that you never even suspected. Your respect for "distro distributors" will greatly increase.

business_kid 04-19-2024 01:29 PM

Quote:

Originally Posted by sundialsvcs
...doing IBM assembler language in a mainframe world ...

You're sure right about Assembler. It teaches nothing, partly because the job spec you're given prevents it. Then it's you versus the cpu & hardware. Software/OS doesn't get a look-in.

Years after I finished with Assembler, my son got his CS Assembler project after an Assembler module that had failed to teach anything to the entire class. He came to me as a last resort, because nobody in the class had a clue. It was in Dos, using edlin or notepad, something awful. I worked something out; the entire class bought him pints and the lecturer politely ignored that my program was copied by all. That son earns a six figure salary today as CTO in some well funded Spanish mobile startup, more than I ever earned.


All times are GMT -5. The time now is 01:20 AM.