Choosing Your OS for Coding

A laptop in a dark room.

The Operating System, or OS, is an important factor in your coding journey. Each one of the major OSs have pretty significant advantages and drawbacks.

Many times the OS on the computer that you own and have learned on is the OS that you will feel most comfortable with, in which case you should continue to use that unless there’s a reason not to. But if you’re deciding on an OS either by buying a new computer or are looking for a change and have the know-how to install it on your computer, then maybe you’re looking for some information on which OS is going to be most worth your time.

There’s 3 Major OS systems and I’ll try and cover the pros and cons of them in terms of a budding programmer.

macOS

Mac OS logo
Mac OS logo

This is Apple’s Operating System. You might’ve seen it under names like El Capitan, Yosemite, Sierra, etc. Those names are just a fun way of branding their macOS versions.

macOS is native to any Apple computer you buy like Macbook or iMac.

Pros:

  1. Simplicity: The System’s User Interface has always come across as clean and simple to me. It’s very pretty to look at and it’s genuinely so easy to flip between a variety of tasks even if you’re just on one screen.
  2. Security: I’m not really sure of the reason exactly (I’m sure other, security focused, blogs could explain better), but macOS seems to be pretty resistant to viruses and hackers.
  3. Popularity: Right now it is an incredibly popular OS for coding. Lots of people already have MacBooks so they’re more comfortable with using that when beginning and a lot of jobs I’ve personally seen have macOS workstations.

Cons:

  1. Limited Options: Unfortunately, macOS is a very insular system and as such the options for applications can be quite limited. Obviously the most popular professional applications have support for macOS, but since Apple only allows vetted apps on its store, which can also be a good thing, many programmers don’t bother supporting it.
  2. Expensive: All Apple products are ridiculously expensive for what they are. Don’t get me wrong, they’re high quality, but the price tag just doesn’t line up. They’ll last you awhile if you take care of them, but that leads me to my second point.
  3. Upgrade/Replacement: If your Macbook/iMac has any issues like something internal fries or breaks down, you better hope you’re within warranty because they purposefully make their products’ parts difficult to access and replace yourself. Same idea obviously extends to upgrading to more storage/ram or a new CPU or something. Seriously good luck with that.

Windows

Windows 10 Logo
Windows 10 Logo

Windows is Microsoft’s Operating System. At the time of writing, they are on Windows 10, so anything following will be about that one.

It is the longest standing operating system with a lot of history and support behind it.

Pros:

  1. Support: Unlike macOS, most, nearly all, applications are supported. The OS has been around for a long time and isn’t very restrictive about what programs are allowed to run on it, providing a veritable playground for applications.
  2. Popularity: Sure, it was a pro of macOS as well, but who says you can’t have two things share the same pros? It is the longest standing operating system with a lot of history and support behind it. Seriously, this thing has been around for a long time. While macOS and super popular at the moment (and may well continue to be), Windows always seems to be consistently popular for its existence and there’s a whole lot of people and employers that just aren’t willing to change.
  3. Cheap(ish): Wether you’re buying a prebuilt computer or building your own, getting your hands on a computer with Windows is a lot cheaper than Apple’s products.

Cons:

  1. Security: Maybe a consequence of having been around for so long, Windows is very vunerable to viruses and hackers. You need to be careful if browsing any poorly secured sites. Luckily this can be curbed if you invest in some good security software. So make sure you do that.
  2. Compatibility: If any hardware fails or needs upgrading on your computer, you have loads of options and it’s not too difficult to actually put the parts in. But! You need to do your research. With so many parts spread over time by many different companies, you need to check to see that those parts you’re buying are compatible. The site pcpartpicker can help with that.

Linux

Linux is a group of related open-source operating systems ,called distributions or distros, which are free. Popular Distros include: Mint, Ubuntu, Debian, Manjaro, etc.

Pros:

  1. Free: I know you saw that buzzword! Most (if not all) Linux distros are completely free of charge, edging out both macOS and Windows easily on that front.
  2. Customization: Because of its open-source nature you have a great swath of customization ability. Either from the tons of other users who have added things that they wanted or needed or YOU can add to the OS too.
  3. Alternative Software: While Linux is poorly supported by professional software (which we’ll cover later in the Cons sections), they have great, also open-source, alternatives to said software. A lot of people swear by these alternatives and love the ability to have options.

Cons:

  1. Complicated: Unfortunately, even though it’s free. Linux can be very complicated to get installed and get everything you need working. It can be a bit finicky because of the compex nature of allowing so much customization. While people love the “plug and play” nature of Windows and macOS, a lot of people enjoy the feeling of making Linux their own.
  2. Support: Linux is very poorly supported by professional companies. This has forced users to come up with alternatives to the software that is not supported by Linux. Some people like this alt software, but most people, including me, want access to the tried and true professional software
The Windows, Linux, and Apple logo side by side
The Windows, Linux, and Apple logo side by side

And that’s that for the Operating Systems. Hope I’ve given you a good lowdown on the advantages and disadvantages that certain Operating Systems provide and made your choice a bit easier.