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”
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.
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”
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 likerev-parse
,rev-list
, and format strings. You would have to parse the output ofgit log
andgit show
, hoping that they don’t introduce a new change to the output—a much worse experience.Fun fact: you basically described dbus.