|
|
|
|
|
by pikaynu
1511 days ago
|
|
The inflow of new engineers which are not so familiar with traditional tools like a basic terminal and a text editor. That was all which was needed to write software. Most of the software stack was quite flat back then. Today, the way everyone starts is by installing a bunch of tools, frameworks and an IDE to navigate through those tools. Even a simple web page requires to install 100MBs of dependencies. Trying to learn those tools from scratch is not useful because it's all abstracted and is almost never dealt with. These terminals are making the use of those tools simpler using features like autocompletes, suggestions, metadata about the command etc. It's just like how an IDE became necessary for some languages like .NET or Java because it was no longer just the language. For terminals it's now good 'ol coreutils vs a bunch of npm crap. I personally don't like to use pimped up terminals because they are written in electron and are not portable. The whole point of using a minimal terminal is being snappy and portable. Just like engineers today can't write code without autocomplete, new engineers won't be able to navigate the cli without assistance. An analogy would be, vim purists with 0 config vs people who have elaborate configs. |
|
I find this pretty offensive. I have a vim config that automated my workflows, and integrated linters and build tools etc...and I am using Linux based systems for over 22 years now.
While I consent with the rest of your comment, I think that most people don't want to deal with shitty syntaxes that are less memorable than they should be. Computers and TTYs have moved far beyond 80 character screenlines these days.
Having a -s instead of "sync", for example, doesn't make sense from the UX perspective. Most of the reimplementations of common CLI tools of coreutils and others are mostly there because they were fed up with inconsistent parameters, options, and flags of those programs that have historically grown out of proportions.
On the other hand I can also understand why people use zsh, even when I don't like it because I'd consider myself a minimalist. Though I also have a lot of aliases for common tools I use, because I would go rogue when I would have to type all those parameters on a regular basis.
The issue most terminals try to solve is explainability and predictability, because they see terminals as a human interface, and not as a tool to write yourself one.
The clashes of those different philosophies are also found in shell implementations. I mean: off the top of your head, do you know all string manipulation syntaxes in bash? Probably not.