The Linux Argument

Linus Torvalds created the Linux kernel in 1991 using the C programming language. Since then it’s ballooned to nearly 20 million lines of source code with contributions from thousands upon thousands of developers averaging over 3,500 lines of fresh code per day. It’s backers include everyone you can imagine, from arch-rival Microsoft to phone-maker Samsung to chip-maker Intel. But why?

Linux is Awesome!

Or as Bryan Lunduke would put it, Linux sucks.

In Bryan’s video series, “Linux Sucks,” he describes the many pitfalls that plague the Linux operating system and some of it’s most painful drawbacks. His criticism, however, is actually what makes Linux awesome.

Linux isn’t perfect by any stretch of the imagination. What it does have is an undeniable ability to not only survive but prosper where other companies and operating systems have failed. The reason?

Because it’s Open-Source.

Linux is great because people think it sucks. If Google liked Linux, they wouldn’t have turned it into Android. If Microsoft liked Linux they would buy it instead of donating to it. If developers liked Linux they would stop developing it.

It’s the constant state of dissatisfaction that keeps Linux in motion. Anyone who is dissatisfied with Linux can make it better; and many people do. Your cable-box, wireless router, television, and probably even your car radio all run on Linux. I’m sure they’d all be running Windows, if only Microsoft would release the source code and allow people to change it to suit their needs. But Microsoft doesn’t do that, so if you want to make a complicated device work without spending billions on kernel development or licensing you’re gonna take a long look at that 20-million-line Linux kernel and see what you need to add to make it work. So you’ve written 200k lines of code to make your device work… but it’s better than writing 20m. The most generous developers will even share their code again, allowing their best changes to be peer-reviewed and merged back into Linux. It would be impossible to put enough companies out of business to stop Linux development.

With closed-source operating systems users and developers are mostly stuck with what the developers have cooked for them. The Linux operating system is always under pressure from it’s community, not shareholders, to make improvements and optimizations. If one organization developing a Linux platform can’t deliver a functionality another one will probably crop up that does deliver that functionality.

Linux Doesn’t Trust You,

Have you ever browsed the file-system on your Windows PC and stumbled across this…

This window pops up when you try to access a folder that you do not have permissions for. Rather than stopping you, Windows tries to make accessing the files easier by creating a mechanism to update the permissions at the click of a button.

Lets phrase that another way. Microsoft designed a complex system of permissions for their operating system to keep data safe……

And then they literally created a dialogue box that breaks those permissions.

Windows-savvy users will be quick to point out that with UAC enabled this action needs to be confirmed again, and on a workplace domain the domain administrator password is required. These are very valid points, but they are not a “saving-grace.” Windows just trusted the user with files it originally wasn’t going to trust the user with. Why have permissions if you’re giving the user the option to over-ride them?

Here’s another example…

This is Microsoft up-selling you, on your home computer, whenever it’s turned on. There was even a point in time when Microsoft thought it would be OK to assume that simply clicking the “X” on this dialogue meant they had consent to go ahead with the upgrade.

Back when Windows 98 came out we called this a pop-up ad, and if it was installing system tray icons it was probably malware. 15 years later Microsoft thought that installing software that solely solicits other software and then ignores the user’s intentions would be an acceptable use of their personal computing platform. A platform that millions of users worldwide use to manage their lives and businesses. This notion that “the user doesn’t know what they want” was the last straw for me, personally. Once the trust between developer and consumer is broken it’s impossible to get it back, especially with a closed-source product. If I can’t even trust the UI elements that are supposed to give me control over your product what differentiates your product from a virus? Sure, it didn’t steal or damage anything, but it didn’t do what it was supposed to either.

I have no use for software that doesn’t do what I tell it to do. There is no room for interpretation here.

With Linux, you can’t do anything outside of your user-space without having explicit permissions. Where Windows grants users full control by default and then black-lists certain actions, Linux denies any control and white-lists certain actions. This “secure by default” method of permission control makes for a much more secure environment for anyone using the machine. Where a hacker on a remote connection could assume complete control over a Windows machine, that same hacker would be stuck in user-space on a Linux machine, unable to modify files the user they’re impersonating does not own.

But Linux Loves You.

Linux is about making the best product for the community because it comes from the community. Windows and macOS are about making an easily digestible product for resale to please investors and satisfy corporate interests.

Linux is Capable,

For a long time the argument against Linux has revolved around it’s capabilities. The software support for Linux just hasn’t existed like it has for other commercial OS’s. That’s mostly changed now. Not only is there a Linux package to accomplish almost any goal, but it’s open-source just like the OS. That means instead of a dozen companies all making products for profit that do the same task we have half a dozen communities sharing and improving on code that already exists. Continued progress is inevitable, even if an organization goes under. The fact that the vast majority of Linux software is available for free isn’t too shabby either.

It’s Customizable,

This is Linux…..

And this is Linux…..

Windows 7? Nope! Linux…..

Ok, I think we get it now…..


And if that’s not enough you can edit the source code and tweak whatever you like. It’s not just a feature, it’s your right as a consumer of open-source software.

And It’s Fun!

There’s a certain satisfaction you get when you use a Linux computer. There’s a feeling of independence, defiance, and a sense of progress. Every device that boots Linux isn’t just helping the Linux Foundation; it’s helping Windows and macOS too.

In our modern capitalist society only the strongest survive. While Linux may not be widely considered to be the “strongest” OS, it doesn’t have to be. If it even manages to stay two steps behind other commercial OS’s it will force them to improve to keep their margin of superiority. How much progress do you think Microsoft would make if macOS and Linux disappeared tomorrow? Would they still improve their platform without incentive? Without Chevrolet and Dodge we would all be driving Ford Model T’s, because Ford could have done nothing for 100 years and still maintained market share. The mere fact that Linux exists means that Microsoft is incentivized to stay three steps ahead of it. This also helps Linux, who doesn’t need to make profit, develop it’s road-map and prioritize goals.

So try it already!

With so many distros competing for your clicks there’s no better time to give Linux a shot than right now. I often compare Linux to a car with a manual transmission. If you can drive a car with a manual transmission you can drive just about any vehicle with wheels. The same holds true for computers and Linux. If you can use Linux, you demonstrate the skills and ability to use any computer on Earth, regardless of it’s software stack.

Leave a Reply

Your email address will not be published. Required fields are marked *

* Consent To Store Information (GDPR Requirement)