I'm pretty sure that a VM gets abstrations of the underlying hardware. And these abstractions are fully documented and as such the generic drivers bundled with any linux distro will work perfectly with it. Running on actual hardware requires hardware specific drivers. Generic drivers exist for many types of devices, but they might not be able to fully use the hardware (or at all), which can lead to some features/the os to not work out of the box on linux distros.
And I assume that he refers to that emacs is the default $EDITOR var on ubuntu? I don't know if that's true, but i think emacs is one of these editors which is seen as having very bad usability. I can't imagine that emacs is the default $EDITOR on a recent ubuntu version, but I agree with the sentiment that those kind of editors should never be the defualt.
I thought it was a rather clear and obvious analogy how opinionated nerds hinder mass adoption of good FOSS products because user experience is dogshit.
„Running Linux in VM“ as you have put it, is miles better because it works all the time with 0 friction, driver issues, random freezes, reboots, etc.
I understand the analogy, it's just ridiculous. You are conflating entirely unrelated things based on your personal feelings about them with no regard to historical or technical context.
Hardware support issues are certainly understandable, but blaming "opinionated nerds" for them is asinine. It cannot be understated how difficult it is to deal with certain OEMs.
Although I totally get where you're coming from, and certainly agree that user-experience could improve by not setting unintuitive defaults like emacs or vi or whatever. But 'opinionated nerds' is a strawman. FOSS and Linux ecosystem isn't a big mass of like-minded people all deciding that user-experience isn't worth spending time on.
Let's not forget that computer science and programming initially has been a field for and by expert and academics. A lot of tools are written by experts, people that were used to writing and reading long documents with instructions, are intimately familiar with their systems, and often write similar software themselves too. Nowadays that have changed of course, but the field still has a lot of these experts.
And experts in any field often forget how it feels to not be an expert, and as such assume a lot of things to be obvious and often forget to mention or explain crucial things. But you can't expect every expert in some field to also be an expert in educational psychology, that is a whole field in itself. And even then, you might not have the creativity or writing prowess to write clear and intuitive documentation and pick variable and function names.
On top of that people are free to do what they want. That they work on this stuff publicly and make it available in itself is something worth of praise. They don't suddenly have the responsibility to make stuff easy to use for people who aren't at the same level like that.
A distribution like Ubuntu is in part basically a specific collection of all these free tools and software and presets. And maybe there doesn't exist a super user-friendly alternative for every one, and there is basically no incentive for people to spend free time making these.
Even if Ubuntu specifically states to be user-friendly (i don't know if they do), there are numerous valid reasons might exist for that. It could be that the rather spend their time refining and improving a often used part of the system. Or that they see the terminal in itself as an expert tool, and they rather have non-experts use the configuration that's available through the UI.
Although it's beside the point I think it's also important to realize that it's basically inevitable that there's going to be at least some difference between the quality of software that's free and open source, versus a company that has the ability to spend, and stands to profit from it. In my opinion the free part means infinite value and trumps any gap in quality or functionality.
Still agree that nano or something similar should be the default and vi or emacs should be an option.