Skip Navigation

Should I Install Linux? Pros & Cons for Gaming & Coding

I'm considering installing Linux on my laptop but I'm unsure if I should start with a virtual machine first. My main use cases are gaming and coding, so I want to make sure it's the right fit.

What are the pros and cons of using Linux for someone like me? Would starting with VirtualBox be a good idea before going all in?

61 comments
  • For gaming I've had zero issues on bazzite, comes ready out of the box.

    Its worth it to check https://www.protondb.com/ to see if the game you like works.

    Personally for coding, I think Fedora Atomic is pretty up there because they make it easy to containerize everything. Universal blue has an atomic spin called Bluefin specifically designed for devs https://projectbluefin.io/

    • Bluefin-dx is the more dev oriented version, and I think Bazzite has a -dx version as well. But I agree, I'm using Bluefin and love it for the containerization.

  • What are you coding? Despite what everyone is saying, if it's .NET you'll be better off in Windows. You can do C# development in Linux, but C# and .NET are Microsoft products, and Linux is the ugly stepchild.

    For all other coding purposes, Linux is vastly and measurably superior. You have a nearly endless array of tooling options and a wide variety approaches to nearly any language. VSCode is popular, but so is EMACS and EMACS is useful for so much else - it's practically an OS, and there exist people who essentially boot directly into EMACS and never leave it. You have a half dozen different implementations of vi, NeoVIM being among the most popular and having an ecosystem of plugins that would make a sex toy store blush. You have The New Kids like Helix and Kakoune, which explore new modalities and change the way you edit text. You have vertical solutions - most programming languages have an IDE written in the language and optimized for coding in that language.

    You can run most of these on Windows, but now Windows is the ugly stepchild: nearly all of this tooling was written on Linux, and works best on Linux, and doesn't require fussing and working in a modality that is just different enough from idiomatic Windows use to feel jarring.

    Linux simply has more software, and while there's a bunch of rough programs, many tools are - IMHO - better than their commercial counterparts on Windows. And by and large, you won't have to pay for them.

    I also believe (and this is more my opinion than anything demonstrable) that for software developers, Linux gives you a better understanding of how computers work. This is a valuable thing for developers, understanding how things function. Windows hides, obfuscates, and conflates so much of how the system functions; and there's often only one way of doing something so that you don't even consider, "what if?" What if we used a different init system? What if we did scheduled jobs differently? What if my window manager were different, my boot loader was different, I stored attributes for my program somewhere other than the Registry? While you could use KDE your whole life and never consider that things, you don't have to step down very far and suddenly be in a domain where you see all of what goes into a modern OS. Windows locks that door to the basement, and sure, people do jimmy it and get in there, but it's much harder; and Windows integrates so much of the OS that no matter how much ditzing you do, you're never going to replace the Windows window manager with a different one.

    I can't emphasize enough just how important I feel understanding the fundamentals of how computers function is for software developers, even if you aren't doing systems programming. Windows obfuscates and hinders that grokking process.

  • The question is mostly about what kind of gaming.

    Most single player experiences are no longer a problem because of steam proton, but multiplayer anti cheat and other AAA DRM is sometimes a windows only thing.

    Coding is just superior on linux. It's the platform built by coders to make their own life easier for 30 years.

    You should dual boot, try it out for a few games and see how the dev process translates and get your feet wet.

    Setting up a VM is probably a lot more effort than just installing it.

    • You mean getting a dual boot is easier and less time consuming than setting up a VM?

      IDK much about these. Probably I'll binge linux vids on YT for a while to get more info. After reading this comment section, i feel like i should try it because coding is just better in linux and i usually play single player offline games so even gaming would be fine there

      • Dual booting is problematic, as mentioned you're messing with your partitions and could mess up your windows partition, but also windows can, unprompted, mess up your Linux bootloader. As long as you're careful with partitions and know how to fix your bootloader from a live image, there's no real issue, but it's worth keeping in mind.

        By the way, I recommend rEFInd for the bootloader when dual booting, it doesn't require configuration and will detect bootable systems automatically.

        A VM sounds like a good idea to try a few things out, but do keep in mind performance can suffer, and you might especially run into issues with things like GPU virtualization. If you want to properly verify if things work and work well enough, you'll want to test them from a live system.

        As a final note, you can give your VM access to your SSD/HDD - if you set that up properly, you can install and boot your Linux install inside a VM, and later switch to booting it natively. You still have the risk of messing up your partitions in that case, but it can be nice so you can look things up on your host system while setting up Linux in a VM.

      • You'll find a little RTFM (read the friendly manual) much more time/result effective than watching videos. Want to go backward and forward to find an exact piece of information? Get precisely what the original developer meant? Ask for help on a forum? RTFM. RTFM. RTFM.

        It may seem slower initially. It's a skill to develop. For me, it typically means 5 things (in order, where applicable).

        tldr

        <command>

        . This you need to install. IIRC on Arch it's tealdeer. This gives you common examples of the command. Common commands will have an entry, but it's hit or miss for more obscure ones. It's crowd sourced so contribute when you can!

        -h or --help This gives you usage, subcommands, flags, and options. It is exhaustive for common commands, but less common ones will not always give you the usage for everything or you need to do

        <command>

        -h or --help

        <subcommand>

        And sometimes a command only has -h or --help. If one doesn't work, try the other

        man

        <command>

        If a command has a man page, it is tue "single source of truth" (quotes because that not what ssot actually is but it is a good descriptor) man pages are exhaustive. They have everything a program can do. If you want a deep dive for fun or need to find something very specific, it is almost always there. I suggest if you want to get good at Linux RTFM often

        Arch Wiki. It's the wikipedia of Arch. User maintained and to the point. Again, reading is a skill. Learning to use the Arch Wiki effectively takes time, but it is well worth it. It is most useful if you run Arch (I can't think of a time it references a package manager other than pacman). Following the pages in the wiki is almost exclusively why I use Arch Linux, btw. And don't let people scare you away from it. They are arrogant pricks. Most aren't. If you don't want to do a custom install of Arch, it's as easy as using the arch install TUI. And if you have issues, because you run into problems use the wiki!

        Web search. You probably have this one down, but a few suggestions. Don't ask a question. (Unless you know you are specifically searching for that question) your query should only contain the words for what it is you are searching for. And make things singular not plural. Singular is inclusive of plural. The other way around isn't true. When you want to search a particular site, include that in your query string. Last. Don't use google. They want to show you ads, and I've recently seen they don't care about quality (anymore or potentially ever) The first result, which is typically what people go to, is almost always the one with the most ads. I suggest Duck Duck Go (opinions will vary) for the specific reason you can use what they call bangs to search on a particular site and go directly to the first (non ad optimized...yet) search result as am example !w cats takes you directly to the cats page on wikipedia. !aw virtual box. Arch wiki virtual box.

        I would suggest (and typically do) use those in order repeating websearch (I've probably done this for up to an hour at least a few times this week) before I do the next 2. Write a forum post. Now you are getting to the point that if you can't find the answer, it probably doesn't exist. Again their are strategies and in this case, ettiquette you need to follow. You'll annoy or even piss people off if you don't. READ THE RULES OF THE FORUM. When you explain the problem, not what you are doing to do to solve it. There might be another way to solve it. Then explain what you have tried in terms of what you have read and tried so far.

        Then and only then watch a video.

      • Dual booting is easy to do if you have a spare hard drive. Even just installing linux to a flash drive can at least give you a good idea of how it will run though it might be a bit slow. I wouldn't recommend partitioning your hard drive to dual boot off of it for beginners though. You'll risk data loss.

  • For gaming as long as it's doesn't shipped with malware AC you can play it just fine, idk for coding I never written a single line of code ever since I switched to Linux 2 years ago but I heard from most professional coder said Linux is perfect for coding (maybe not if you code softwares for windows).

  • If your gaming consists of popular multiplayer games you might have a bad time. Many games with intrusive anti cheat don't work. Check https://areweanticheatyet.com/ for compatibility.

    Almost every other game should work without any issues, especially when you have them on Steam.

    • So, I used to play valorant and pubg when I was still a windows user. It was around the time of my switch to Linux that I learned about intrusive kernel level anti cheat.

      Honestly, I don’t miss them, and refuse to play a game that compromises the safety and security of my operating system, just as much as I refuse to use an operating system that even allows kernel level access to something as trivial as a game.

      My latest run in with this issue was the Marathon pre-alpha. I was granted access only to find that Bungie was Linux hostile, and after making a few speeches about it in the discord I uninstalled it and left.

      I’m fine with this scenario. If I want competitive multiplayer I have CS2, Apex legends, and others. If games refuse to support Linux, fuck em.

      Just another lens to view this through. There’s a certain rebellious spirit that can come along with embracing FOSS, and that should be part of the appeal.

    • Even this can depend a lot. I’ve some friends that play that Marvel game (Rivals?) and it works great on Linux. I myself have played Monhan and Warframe a lot on Linux. I’m not much of a competitive player, and I think where you might run into problems is competitive live-service titles.

      Guild Wars and Final Fantasy XIV are both multiplayer games and work flawlessly for me.

      Some games might require some fiddling you might not have on Windows, but it’s not that bad.

      Even VR is pretty plug and play, though I’ve not bothered with FBT yet, and I think it differs a lot depending on what headset you have.

      OpenSUSE Tumbleweed. AMD CPU with NVidia graphics.

  • Dual booting is silly. I've set it up but basically never used it. If you've never used it before set up a VM and do your coding there and see how you like it. Then maybe install it on a secondary computer and see.

    Gaming is worlds better than it used to be, but can still be a bit troublesome depending on what you play. I have had zero problems but I don't play competitive online multiplayer games, which seem to be the biggest problem. Though Marvel Rivals works on Linux which is cool.

61 comments