4 ms·
> Because there are some extremely different ways of editing text out there. Key word here being _different_. Different should not be the default. That does no
by smarkov 4y ago
> Because there are some extremely different ways of editing text out there.
Key word here being _different_. Different should not be the default. That does not mean we should all be forced to edit text the same way, it just means that the most widely used way of editing text should be the default.
For the most part we have agreed on what the standard way of editing text is in GUI's. nano has its quirks but at least it follows the most widely accepted standard - if you're inside a text editor and start typing text, the text gets appended and magical things happen to your text only after you press a combination of keys.
- palata 4y ago> it just means that the most widely used way of editing text should be the default. Yeah, maybe. Not entirely convinced though :-). There is a tendency to reinforce the most widely used ways everywhere. As an artist, you can choose to make the kind of music most people want to hear in a night club, or make the kind of music you, as a musician, like. And accept that maybe that's not for the majority. The majority is using Windows/macOS/Android/iOS. Linux distros are mostly used for servers (where I would hope that a sysadmin can learn a handful of vim bindings (ESC, "i", ":wq" is enough to start)), and some people (me included) are using a Linux Desktop. Of course, the more popular Linux Desktop gets, the more people will want it to look like Windows/iOS (because those are by far the most popular). Does that mean all Linux Desktop distros should try to get adopted by those people? I don't think so. Fine if Ubuntu wants to make a "FOSS alternative to macOS", but I would find it sad if it did force others to follow. And it does: most devs don't really know Linux and want the macOS experience, end up using Ubuntu, and write code that works only on Ubuntu. So now many apps rely on e.g. systemd just because Ubuntu chose it. I find it a bit sad.
- throw10920 4y ago> Yeah, maybe. Not entirely convinced though :-) You didn't actually provide an argument against having a sane set of defaults with the option to configure them later. > As an artist, you can choose to make the kind of music most people want to hear in a night club, or make the kind of music you, as a musician, like. And accept that maybe that's not for the majority. "For art" is a non-answer when it comes to UX - being "artsy" is almost always terrible UX, including in this particular manner of keyboard shortcuts - very, very few people want "artsy" shortcuts, almost everyone wants familiar defaults, and some people want to then configure the bindings after they've gotten used to the tool a bit. Art is, by definition, about creativity and originality, which is almost the polar opposite of good UX, which is standardization and conformity. Making a video game with some esoteric control scheme? Fine, go crazy with your input design, people may love it - that is an artistic matter, less so a UX matter. Making an actual tool that people need to use to get work done? That's a UX problem, and your job is to design the tool to be as painless to use as possible, not to be creative, because your creative desire will, unless controlled very carefully, directly lead to pain and frustration of your users.
- palata 4y ago> You didn't actually provide an argument against having a sane set of defaults with the option to configure them later. I am not convinced that it is possible to come up with a generic sane set of defaults for all apps in a way that would solve the problem of VIM being fundamentally different. Everybody wants sane defaults, I don't see the debate there. > "For art" is a non-answer when it comes to UX Not my point at all (but that's on me). My point was that "for the majority" is not necessarily the right answer when your system (Linux) is used by a minority. Especially because the easiest example (text editors) has huge, obvious counter-examples showing that there is no universal set of defaults to edit text on Linux (nano vs emacs vs vim).
- throw10920 4y ago> I am not convinced that it is possible to come up with a generic sane set of defaults for all apps in a way that would solve the problem of VIM being fundamentally different. That's not a problem that needs to be solved. "Generic sane set of defaults" excludes vim as an editor by definition. In terms of which editor should be used by default, vim should not be the default[1]. In terms of keybinding defaults for vim, because vim's modal editing model is so unique, it's totally fine for a universal keybinding system to not trivially integrate with it - just like it's totally fine for libc to not contain every single variant of a memory allocation or string copy function. No abstraction is universal. > for all apps Again, a red herring - there's no reason why any programming system has to work "for all the things". > My point was that "for the majority" is not necessarily the right answer when your system (Linux) is used by a minority. This is such a vague statement as to be meaningless. How, specifically, are you claiming that Linux users are different from Windows/MacOS users that a different system is needed? Moreover, given how obviously the design strategy of "sane consistent (but configurable) defaults" fits in to human cognition, I'm very curious as to why you think it somehow doesn't apply to Linux users. If your answer is "they're more technical" - that's irrelevant. Power users and programmers also want user interfaces for new tools to be maximally sane and consistent during their initial learning period, and the configurable afterward. This isn't a Windows/MacOS/Linux thing, this is a human thing. > Especially because the easiest example (text editors) has huge, obvious counter-examples showing that there is no universal set of defaults to edit text on Linux (nano vs emacs vs vim). That's because they're obviously not counter-examples. vim and emacs are not the default editor on the majority of user-facing Linux boxes (graphical Ubuntu) - they have to be picked and learned, and most non-technical users that try quit very fast. Those are not even candidates for a set of defaults - those are highly user-hostile specialized programming tools. You know what the default text editor is in Ubuntu? Gedit. Not vim or emacs, not nano or even pico. Gedit. That's the default, and its behavior very closely matches the behavior of the default text editors on Windows and macOS. Moreover, there is a set of defaults, without a name, that corresponds roughly to what you get in a text field in Firefox. Left-click to place cursor, right-click for context menu, drag-left-click to select region, ctrl-c to copy, etc. You get this behavior in Libreoffice, Gedit, Firefox, Blender, GIMP, various file explorers, random GTK+Qt widgets, and basically everything else except vim, emacs, nano, and the terminal. That is the standard. As further evidence: the number of people who know how to use ctrl+z/x/c/v (and other standard text-editing shortcuts) outnumbers the combined amount of people who know how to use vim and emacs, by orders of magnitude. So, yes, there is a set of defaults on Linux. Vim, Emacs, and Nano are not it. [1] https://news.ycombinator.com/item?id=34161694 https://news.ycombinator.com/item?id=34161694