Why Use Linux Rather Than Windows?


A lot of rumors and talk have been swirling about bringing serious, high-end gaming to desktop Linux (Ubuntu, RedHat, etc). This is amazing.

For many developers and tech users, Linux is such a dramatically better workstation OS than Windows. Here’s why:

The Command Line (or shell)

For leisure, tablet style touch interfaces are fantastic, but for workstation use, when you are creating content, writing code, working with servers, managing lots of files, etc, command shells really cater to serious power users and are frequently superior to mouse-heavy GUIs.

For example, how do you convert an image between formats (say .png to .jpg)? The typical GUI user has to find some freeware tool and do a ton of time-intensive point-and-clicking. A good command line user can do this with a simple one-line command that easy to run on a batch of files. Same thing goes for extracting a clip from a video file or resizing an image or many other common workstation tasks.

Windows is really designed for point-and-click. The cme.exe command shell is extremely basic and primitive next to the stuff you find on Linux or even Mac OS X. Windows has weaker support for I/O piping and weaker support for soft-links (aliases). You can get an add-on shell for Windows, and Microsoft tried to build their own power user friendly tool with Microsoft PowerShell, but they just aren’t as good as using Linux.

Linux is really designed with serious command line operation in mind. It defaults with the decent Bash shell, but you can easily use nicer shells like Z shell (zsh) which offers useful features like integration with Git source control. Speaking of Git, the major Windows port of Git, msysgit, comes with its own Bash shell, since there are some tasks you can’t do through regular Windows command shell.

Central Software Repository

Windows users get a lot of their software via finding it on the web, and manually installing and managing. Sometimes this is adequate, but other times it’s problematic. Some apps have cross product dependencies, like you can download a Python app or tool that on Windows needs to be semi-manually configured with the correct Python installation. Linux, makes this kind of thing much easier. Also, Windows manual installs run the risk of install/uninstall bugs, compatibility issues, unnecessary background tasks, ad-ware, mal-ware, and crap-ware. For example, once I installed a game on my Windows system, forgot about it, and months later realized that it had an auto update process running at all times, even when I never played the game, that was hogging CPU.

The Linux software repo system protects you from most of these types of issues.

Less bloat-ware and crap-ware

The typical Windows system comes with a ton of bloat/crap ware. Even if you reinstall Windows and are aggressive about minimizing crap-ware, Linux makes this easier. For example, many VPN clients, SSH tools, and even some printer/scanner drivers have annoying GUIs on Windows, while Linux has cleaner, crap-ware free support for these things.

Negative: Games

This is the one thing Linux is currently really poor at. PC gaming is mostly synonymous with Windows gaming. Web browser games, Flash games, Java games (Minecraft/Wakfu), and some Google Chrome NaCl games work natively on Linux, and the occasional rare C-based game has a Linux port, but everything else requires some type of emulation layer to run, which sometimes works well, but can also be troublesome and hinder performance.

Currently, if you are a serious gamer, Linux is a poor choice, but this may actually start to turn around.

Microsoft Only Productivity Tools

A lot of people are dependent on Microsoft office (Word/Excel/PowerPoint) or Microsoft dev tools. If you are a die hard Microsoft fan, you really should stick to a Microsoft OS. However, I’d argue that there are much superior products:

  • Microsoft Word: If you can get passed the initial learning curve, markup-based tools are far superior. WYSIWYG products like Word and LibreOffice are clumsy and sloppy in comparison. Think about this: serious web designers universally scoff at point-and-click web page creation tools and insist on hand-coding HTML for precise control and beautiful output. It’s the same thing with documents. If you want your documents to look better than everyone else’s or you have a technical mindset and want a more logical (and completely free) document writing tool, this is really worth trying out. Personally, I am a fan of LaTeX. Try googling for LaTeX output if you want proof that these tools produce better looking output. To get started, I’d recommend installing TeX Live (expect this install to a few hours! really!) and using a light weight editor like Texmaker or something similar. Another great alternative is Sphinx which is excellent for writing for both web and print. Sphinx was originally designed to create the Python documentation.
  • Microsoft Excel: Google Docs does everything most people use Excel for in a much better fashion. If you really need an offline tool, LibreOffice is completely adequate for most purposes.
  • Microsoft PowerPoint: HTML like reveal.js are very simple and look beautiful. LaTeX is also an excellent choice for making .pdf slides.
  • C# and Visual Studio: Scala is a far more elegant and advanced programming language than C#.
    For a simpler, easier language with the most vibrant community, Java is a great choice. I was recently comparing various NoSQL distributed data stores for work, and glance at Wikipedia to see which implementation language is popular. For IDEs, use a command line build tool like SBT (for Scala) or Gradle (for Java) along with a full IDE like IntelliJ (community edition is full featured and free) or maybe Eclipse.

Written by: Darrin - Contributing Editor


  1. #1 by fangyuansnake on January 15th, 2013 [ 1795 Points ]

    learning

  2. #2 by The_Nmac on January 15th, 2013 [ 46928 Points ]

    Doesn’t sound super gaming related. If it was why Windows is good might be a better fit.

  3. #3 by Kane112 on January 15th, 2013 [ 34177 Points ]

    as you said for developers and tech users it is great but for the common person i would recommend them sticking to windows since its a more user friendly

  4. #4 by Darrin on January 15th, 2013 [ 17143 Points ]

    The “common person” should probably use an iOS/Android tablet for strictly consumer activities. Ubuntu Linux is at least as easy as Windows for web browsing, instant messaging, playing music, and basic log in, restart, wifi setup tasks. Linux is only harder when you start doing something managing files with a command shell or using something like LaTeX, and that’s a small learning curve that is well worth it. Any other task, besides gaming, where Windows is easier?

  5. #5 by hobbes on January 16th, 2013 [ 30476 Points ]

    i love ubuntu, Pear OS is another ubuntu distro that’s quite nice.

  6. #6 by pedrolabate on January 16th, 2013 [ 39949 Points ]

    I’ve never tried a computer with Linux so I couldn’t really say, but being a Mac owner I have to say: every system that is not compatible with most games suck if you’re a gamer.

  7. #7 by Emrah on January 16th, 2013 [ 7319 Points ]

    Linux is a bit confusing for the average user. I used to do a lot with Amiga Shell but I got behind the times and lazy and now I’m a point and click person. However, linux may be coming big for gaming: Valve is all over linux now. I think it will be a good idea to ditch Windows for gaming for the whole industry, as windows require paid upgrades for new DirectX versions, if you are not going down the pirate avenue of course!

    That said, linux gaming may come in custom distros, which should not really be hard for developers, the distros can be as small as a few hundred megabytes and run on flash disks or CD. These distros will remove any bloatware and unnecessary OS elements for the ultimate performance, here’s a developer perspective on Linux advantages for game programming:
    http://timothylottes.blogspot.com/2013/01/kotaku-report-valves-steam-pc-getting.html

  8. #8 by wolfkin on January 16th, 2013 [ 6633 Points ]

    it’s adorable that you think the gamer is concerned with any of that.

    I mean that’s some interesting things and I’d love to debate the usefulness or lack there of regarding a central software repository (because honestly it just doesn’t make any sort of sense to me) but honestly it’s all moot to us from the outside. We the gaming community (mostly) don’t care about the developer’s working environment. We don’t care what language the games are programmed in, We don’t care how easy or hard it is on one OS vs another. We are like a web browser. It’s all about the end resulting presentation. I’d wager 90% of the hardcore community doesn’t care about the design aspects except to predict and prehate/prelove games based on the likelihood of their delivering a ‘flawless’ experience. That is to say they only care that the Xbox is easier to develop for because it means less clipping and not that say the OS has better memory allocation.

    LaTeX? I really do need to look into LaTeX more because while I’ve heard of it used for things like publishing markup or unique situations like writing in science and math I would never use it for word processing. At least I wouldn’t think to use it for a Word replacement. Btw Google Docs is nice and all but it’s always extremely presumptuous to suggest an online tool. I work with a lot of people who go offline for various reasons. I am one of those people. We are the forgotten, and that frustrates the snot out of me.

    You seem to imply LaTeX’s usefulness for web page creation. While I agree the WYSIWYG editors are terrible for web creation. I actually prefer to do mine (what little I do) in a simple text editor environment. Notepad++ on Windows, TextWrangler on Mac and I would search for something similar on Linux and I’ve always gotten the impression that LaTeX is something more complex, when I’m writing html I generally don’t need that.

    I am interested in trying Linux one day but I’ll need a second computer. There’s a lot I use, that I can only use on Windows as is. Even more importantly when someone asks me to do something I need to be able to run various windows programs. Like for instance when someone gives me a phone to “get the photos off” I normally have software for at last count 5 major phone companies just for such an occasion. I’m not sure how I could do any of that on Linux when these are not the new hotness phones.. these are old busted phones. We buy phones out right in my circles. So no $500 iPhones, or $600 Samsung Galaxy *Numeral* more like my $95 Nokia Neuron or my sisters $120 Samsung Gravity 2. I may get a knock off Chinese device like a phone or a KIRF iPod and the only official software is windows based, and sometimes old tech does that extremely annoying that where it has the software built in and mounts like mass storage but partitioned so you can only see the software and not the target data. How is Linux for working with old tech?

    I remember the one time I tried a Knoppix Live CD (and same with Ubuntu) it wouldn’t connect to the internet wirelessly. The fact that I couldn’t get online to find out what was wrong or how to fix it kinda just killed it for me. That was somewhere 2003-2007 though.

    One major thing you’ve neglected in your article is Humble Bundle. Humble Indie Bundle by Wolfire, who got (in my opinion) WAY WAY WAY too much hate for their Humble THQ Bundle (I mean seriously people were going nuts over ONE bundle you’d have thought Torvalds took a CEO position at Microsoft in the Windows Phone dept), has otherwise delivered substantial quality games for the Linux platform in a consistent manner that I think hasn’t really been seen before.

  9. #9 by Darrin on January 17th, 2013 [ 17143 Points ]

    @wolfkin, people typically choose their laptops & tablets for productivity reasons first and then use them for games as an afterthought. This post focused on non-gaming workstation type advantages of Linux over the defacto Windows. I hope this was written in language that interests a PS3 gamer audience even though the content isn’t precisely about video games. This isn’t just for programmers; LaTeX is great for anyone who has to write school papers and the command shell is great for anyone who has to manage lots of files (photos, for example).

    You misunderstood my analogy from HTML editing to LaTeX: I was not implying that LaTeX is good at making web pages; LaTeX doesn’t really do that at all and is only good for creating .pdf documents and slide show presentations. I was pointing out that the distinction between editing HTML with a raw text editor or IDE (as you prefer) vs using a WYSIWYG graphical web-page-builder tool is a very similar difference to usign a markup-driven document editor (LaTeX or Sphinx) over a graphical WYSIWYG document creation tool (Word or LibreOffice).

    I didn’t mention the Humble Bundle, but I don’t think that was critical to mention. It’s great for what it is, and they are helping push Linux game development.

  10. #10 by wolfkin on January 17th, 2013 [ 6633 Points ]

    interesting.. one of the things I really do miss the most from OS X was the terminal. Sometimes it’s really easy to move files around though I’ve never really had positive outcomes when I’ve tried to do things more complex like actually changing formats.

    “I was pointing out that the distinction between editing HTML with a raw text editor or IDE (as you prefer) vs using a WYSIWYG graphical web-page-builder tool is a very similar difference”

    ohhh I get it. Yeah that makes more sense than what I thought you were saying.


You must be logged in to post a comment.

Like trophies? Like giveaways? Want to speak your mind? Register here!