So Linus Sebastian the famous tech Youtuber did a “Switching to Linux Challenge”, following how Valve made Linux Gaming look promising, in order to reflect on whether a completely newbie would be able to use Linux as daily driver without many frustrations. And he did the one thing that prompted distro and repo maintainers “fix bugs” after seeing the silly action he committed.
On one hand, as a Linux user who’s very happy about how flexible and user friendly Linux distros became over the years, I am super excited to see one of the biggest tech youtuber and influencer actually demonstrate how it would be for a life time Windows user to make the switch to Linux. I am positive that these videos would encourage people getting to know more about Linux, the motivations behind an Open Source ecosystem, and the reasons why many of us do not use macOS and Windows anymore.
On the other hand, these made me think, why these obstacles still seem prominent nowadays, now that Linux is made more user friendly?
The problem with dependencies is surely a headache to deal with, especially when you are not installing packages through package management tools, i.e. directly from a deb file. I had multiple instances encountered dependency problems when I was doing tutorials for my sys admin course, as well as on my own machines. Now you may say, just install the missing dependencies! I am afraid this is not as simple as it sounds my friend. Once you installed a package with missing dependency, apt goes fully locked down, every time you try to issue an update command through
sudo apt update, it will tell you there are unresolved dependency problems, but not telling which comes first, and which comes last. And you cannot use apt to install those packages either, it will return the same unresolved dependency error as well. Now an average user is not going to know what the hell they are supposed to do, then they will decide “Oh well, Linux is shit.” and install Windows; or complain on Reddit about how unusable Linux is.
It’s very true that focusing on pushing new features and new technological advancements made us overlook what an average Joe would not want to deal with, either because they don’t want to, or they do not possess the technical know-how. Mistaken me not, I take pride in being a member of this amazing community. But these oversights, while a nuance for seasoned users, are big no-nos for outsiders. Package management tools, while amazing at first, failed to provide a truly user-friendly way to solve dependency issues once and for all.
Besides, the fragmentation of package management tools is also a huge problem. Different package management tools were created along with the respective distros. But why? The packages, albeit in different formats, have exactly the same functions! Why do people create incompatible formats instead of creating a universal format where every distros can use, and still host their own repo? The community definitely overlooked this, and is now suffering from fragmenting efforts in maintaining packages.
Developers know this, and believe me this is not worth their effort to push an update to 3 to 4 formats for Linux. That’s where universal formats like AppImage, Snap, and Flatpak come into play. I am biased and dislike snaps, but these formats do present a vision of unifying and simplifying package management, developers can focus on writing code instead of worrying about having to compile their code for other formats. With these formats and tools, they simply need to compile 3 times in total, once for Windows, once for macOS, and once for Linux. Simple as that.
To sum it up, quoting a user from comment section of LTT Linux Challenge videos:
Yes, this is exactly what happened to the Linux community. We were so confident in ourselves forgot these trivial tasks aren’t at all easy for people.
Going forward I am sure this series of videos will help shaping Linux more suited for non-tech people, and get one step closer to the ultimate goal of being the operating system that everyone can enjoy.