Linux isn't for everyone... but maybe it's for you?
Linux, BSD, and other Unix-like systems have recently seen a resurgence in their popularity. This isn't too surprising, considering the fact that Unix-like systems, particularly Linux, have been receiving much more consideration and support from developers and companies. A good example includes the Proton initiative by Valve, which allows Linux users to now be able to play a plethora of games previously inaccessible to them. However, now that Linux (and by extension other Unix-like systems) is a viable OS for the average consumer, should you consider switching? This article should help you decide, and also serves as a brief introduction into the wonderful world of linux.
There's a common misconception that Linux is an OS. I can't tell you the number of times I've had new users try to find 'stock linux', only to find that it doesn't exist. Contrary to popular perspecitve, linux is a kernel. This means that it inherently cannot be an Operating System on its own, but other Operating Systems can be built off of the Linux kernel and packaged for the mainstream consumers. These OS are called distributions, or 'distros' for short. There are infinitely many distros, each with their own combination of backend and UI. The distinction here is not pertinent to the discussion, but will be covered in a future article. Regardless, it helps to know the difference.
I would recommend these distributions regardless of the UI you use on them. Know that many of these distributions come with various options for UI.
Hacky Hacky Time
There are a lot of things going for Linux. For one, you have what is essentially one of the most well-documented and open-source communities out there. If there's an issue on your system, you'll be able to find effective support relatively quickly, keeping your sysadmin troubles to a minimum. Furthermore, Linux is heavily favored by many packages that you may want to use as a developer. In fact, most packages that you will use as a developer were likely developed on a Linux distribution of some sort. This means that if you are a developer, you are sure to experience heightened compatibility compared to your peasant Windows days (not that Windows is bad). Futhermore, there's also the inclusion of an actual sh shell in Linux. This means that you are able to have a legitimate terminal experience, rather than the pathetic excuse for a term that Windows calls powershell.
However, those benefits only address the user experience. There is also a profound effect on how you interact with your hardware when using Linux. For starters, Linux is more lightweight than Windows... much more lightweight. I currently use an X1 Carbon Gen 7. On Windows, I would experience background RAM usage of anywhere from 3.5 to 4 gigabytes, but on my Arch Linux installation, I experience around a 10th of the usage, with only 300 to 400 MB of RAM being used. That's a significant improvement in process headroom, one that could be especially beneficial for those with older or lower specced computers. Note that depending on the distro and UI you use, you will experience varying degrees of resource usage, so be advised.
Despite all the great benefits to using Linux, that's not to say that there aren't cons too. The glaring one is the ubiquity of Windows. Although Linux is starting to gain traction, Windows has been the go-to OS for many over the last few decades. This has lead to a focus on Windows support from many applications and vendors, meaning that you may not be able to get the same seamless experience of software installation on Linux that you do on Windows. That's not even considering the battery disparity. Due to Windows' favor from hardware manufacturers, it generally receives significant battery management protocols, protocols that aren't shared to Linux distros. This results in significantly greater battery drain out of box, to the point that I have had my battery mileage plummet from 12 hours to 4 without configuring battery management.
Linux certainly isn't for everyone. It's a category of operating system that's hard for many to navigate, one that's easy to screw up if you don't know what you're doing, and one that if rife with compatibility issues. But consider the fact that, apart from the last one, the other two cons are preventable. You can learn how to navigate a new OS, and all systems are easy to frick up if you don't know what you're doing. But it's obvious that the benefits far outweight the risks of running a Linux system. So if you're a developer that wants a great new OS to use, and you're tired of Windows, look no further than a Linux distribution as your salvation.