this post was submitted on 12 Nov 2024
119 points (85.2% liked)

Linuxsucks

172 readers
147 users here now

Shit on Desktop Linux and its evangelists here

No evangelizing for Linux

founded 1 month ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 4 points 3 days ago (3 children)

Yes, and that's the FUNNY part about it! Lennart went against the UNIX philosophy and is hated for it, but so did Linus Torvalds with the monolithic kernel, and Richard Stallman with Emacs.

[–] JackbyDev 7 points 3 days ago

The "do one thing and do it well" mantra is such bullshit. You can slice up the things stuff does differently however best suits your argument. Oh, wc? I don't use it because it violates the unix philosophy. It can count words and lines. That's two things.

[–] [email protected] 1 points 2 days ago

And systemd don't violate it, systemd is the name of the project with a bunch of binary inside each onde doing their job, it's like complaining that Mesa don't follow Unix philosophy just because it has multiple drives inside the project

[–] [email protected] 1 points 3 days ago (1 children)

The Unix philosophy never made sense.
All parts of a program should do one thing well and communicate with other modules over a simple, common interface.
But software that offers all the features a user will need under a big umbrella with unified UI and UX is much better than "this program uses different syntax because it came from Unix and not GNU"

[–] [email protected] 4 points 3 days ago

But software that offers all the features a user will need under a big umbrella with unified UI and UX is much better than "this program uses different syntax because it came from Unix and not GNU"

Yes and no.

A consistent UX is definitely a major bonus, but not if it comes at the cost of oversimplification. If the program gives me an experience gift-wrapped and with a nice little bow on top, but only gives me that kids' gloves experience, it becomes a much worse experience when you need to do anything outside the happy path.

Imagine trying to script git workflows without access to any of the plumbing commands like rev-parse, rev-list, and format strings. You would have to parse the output of git log and git show, hoping that they don't introduce a new change to the output—a much worse experience.

All parts of a program should do one thing well and communicate with other modules over a simple, common interface.

Fun fact: you basically described dbus.