Einar's blog

The advantages of Linux seen from a Mac user's perspective

Figure 1: Welcome to Ubuntu

Lately, many Mac users have been disappointed in the hardware and to a lesser degree also the software that Apple makes. It seems like Apple is focused mainly on iOS since their earnings mainly stem from it. Some of the core Mac users in creative industries that have used Macs since the 80s are now leaving or thinking about leaving since it seems like Apple no longer makes the best hardware for these use-cases. For video editors that need the ultimate in processing power, graphics processors, RAM and storage space, there hasn't been a good Mac since 2013. Therefore, some companies like Pixar that traditionally used Macs have been using System76 machines with Ubuntu for some years now.

For long time Mac users, Windows 10 doesn't necessarily look like a good alternative to macOS. Linux is the lesser known alternative, but it is in many ways more similar to macOS than Windows, although there are of course a lot of differences as well. Since I have gradually switched from Macs to Linux over the last few years, I thought it would make sense for me to share some of my thoughts about the main advantages of Linux seen from a Mac user's perspective.

Choose the hardware that best fits your needs

The main advantage of Linux is freedom of choice. Since Linux runs on a vast range of hardware from embedded devices to supercomputers, you can choose whatever hardware suits your needs when using Linux. With Macs, you have to live with the machines Apple make, or you can hack together a useable, but often not upgradable hackintosh solution that will usually be a hassle to maintain. Windows is also installable on lots of different computers, but Windows limits your choices in other ways. Read about desktop environments, the influence you have over software projects, the Unixy goodness and the choice of Linux distribution to understand what Windows lacks that Linux has.

With Linux, the easiest way to get good hardware support is to buy hardware with Linux preinstalled. However, building a desktop computer yourself from parts may give you more freedom of choice as to what to prioritise, and buying new or second-hand computers that originally came with Windows will give you many more models to choose from, but no customer support from the vendor. On most hardware, Linux just works, especially if you use one of the more newbie-friendly distributions (distros) like Ubuntu and derivatives (Mint, Ubuntu MATE, Lubuntu, Xubuntu, KDE Neon, Elementary OS…), PCLinuxOS or Manjaro. To avoid buying hardware that is less than ideal on Linux, if you do not buy hardware with Linux preinstalled, you should do some research before buying. So, when it comes to hardware, you have more choice with Linux than with macOS.

Choose the core technologies you prefer

Unlike on macOS, where you have a couple of supported versions of the same operating system, on Linux, you have hundreds of Linux distributions (distros) to choose from. Some are tailored to special use cases like media production, security audits, servers without a GUI, education… while others are more general-purpose desktop distributions. Some come with long term support and stay on the same version numbers of software while delivering security updates for five (Ubuntu LTS) or ten years (CentOS, Red Hat, Ubuntu LTS if you pay for extended support), while others churn out new versions every 6 months (Ubuntu non-LTS, Fedora) or at other regular intervals. Some distros only have new releases when they are absolutely certain the next version is stable and ready for use (Debian, Makulu) and yet again others are continually rolling out updates after a short period of testing so that you never have to reinstall (Arch, PCLinuxOS, Solus, Manjaro). Some distros focus on a particular technology, while others focus on designing a pleasant user interface with tailor-made apps to suit the desktop environment.

The abundance of choice is sometimes portrayed as a problem by non-Linux users, but in reality, it means that no matter what sort of user you are, you will find a distro that suits your needs and wants. The many distro projects also contribute free and open source code to the wider free and open source software ecosystem which means that even if an app, a library, a command line tool or a desktop environment was made for one particular distro, it will often find its way to other distros if it becomes popular among users. With the GPL licences giving people the freedom to use and change the software at will, every good idea that comes along can be furthered by everyone else to fit their needs or tastes. This sharing is one of the core philosophies of free software and the GNU/Linux world.

Although the many possible choices may be intimidating for a new user, starting out with a user friendly distribution with good hardware support and a pleasant desktop environment will give you all of the benefits of the wider Linux ecosystem, while keeping things easy to manage. If you or your company then over time learn that there are particular tools available in another distro, or maybe you prefer another desktop environment or other core technologies, then it is usually easy to change from on distro to another. The hardest part is to switch from Mac OS X to Linux. Once on a Linux distro, there are very few lock-ins, so it is usually easy to change distro. Some do this so often that they are considered "distro hoppers".

Choose the desktop environment you like

On macOS and Windows, you either have to use the graphical user interface your operating system (OS) delivers or use another OS. On Linux, most distributions (distros) have lots of desktop environments and window managers (lower weight and simpler desktop environments) to choose from. If you like the core technologies of a distro, but dislike its desktop environment (DE), then you can install another DE instead. Some distros come with only one desktop environment by default (elementaryOS with the Pantheon DE). Other distros ship more than one desktop environment that the user can choose at install time (Antergos, Debian, Arch…) while others have different editions with different DEs (Manjaro, Linux Mint). Yet again other distros come with one official desktop environment, such as Ubuntu (with Unity), but with official and/or unofficial community projects, flavours or respins that deliver other desktop environments like Lubuntu (with LXDE), Xubuntu (with XFCE), Ubuntu MATE (with MATE), Ubuntu Gnome (with Gnome), Kubuntu (With KDE), Ubuntu Budgie (with Budgie).

Figure 2: elementaryOS

Even where only one desktop environment is available in a distro, other desktop environments and window managers are usually available in the software repositories, and it is trivial to install your favourite. This also means that if a family shares a desktop computer, the mother might like to use KDE, the father might prefer Unity, the oldest daughter might like LXQt while the youngest son enjoys Joe's Window Manager. These different desktop environments and window managers will happily live on the same system and with multiple users logging into their favourite. It is also possible to use Gnu/Linux without a user interface at all and just log into the command line interface. Most servers (whether on real hardware or in virtual machines) are setup this way.

Use familiar Unix command line tools

Just like macOS and the BSDs, Linux has its roots in Unix. Unix had multi-user environments, networkability and stability as some of its strengths. The Linux kernel itself was originally made by Linus Torvalds to make a usable Unix system out of a desktop PC, even if it is now used on a vast range of devices and hardware architectures. Many of the command line tools used in Mac OS X are the same or have the same name as the GNU utilities used in Linux. That is why Linux distros are also called GNU/Linux or GNU+Linux. This means that if you used Unix back in the day, or if you have become familiar with the Mac OS X terminal, most of that knowledge is usable on Linux as well. So, for macOS power users, the Linux terminal will be a cosy and familiar place.

Linux is the natural choice when operating system does not matter

Sometimes, the operating system does not matter at all, and the choice is more down to economics and practicalities. In these cases Linux is a natural choice as it runs well on lots of different hardware, can be used cheaply, gives you better security than Windows during the supported lifespan of your distro while giving you maximum flexibility. This is the case when you use software that is running in "the cloud", such as Microsoft's Office 365, Google Docs, Visma Enterprise… The trend is that many programs that used to be native to Windows or macOS, but did not ship a Linux version is now available in the cloud through any browser. This means that some software that in the past was unavailable to Linux users (or at least only available through the use of Wine or a virtual machine that ran Windows) is now available. If you prefer to continue to use MS Office even after trying LibreOffice, Calligra and WPS Office, then you can use Office 365 in the cloud. Or you could continue using Office 365 while gradually checking out and getting used to the alternatives. For some users, this takes care of their "I would use Linux if only X was available" problem.

You could argue that when using web based software, then ChromeOS might be the natural choice, but the advantage of using a better Linux distro than ChromeOS (ChromeOS is actually based on Gentoo Linux with a custom made desktop environment and Chrome) is that in addition to the cloud services and web apps, you can also run desktop software and if you are a developer or sysadmin, you have access to the terminal. A Linux distro gives you everything ChromeOS does and runs just as great on the same type of low end hardware that ChromeOS runs on, but gives you a lot more flexibility and freedom of choice. ChromeOS also has the disadvantage of being tied into the Google ecosystem, which means that you have no privacy, as Google's business model is to learn as much about you as possible and use this information to give you targeted ads. You can run the same webapps on any Linux distro as on ChromeOS, but block ads and spyware if you like.

In addition to cloud services, there are also more traditional scenarios where the operating system does not matter, like for instance when a developer uses her laptop just as a terminal to gain access to the server where all the code is hosted and the software is built or a system administrator just needs a machine with SSH to monitor all his virtual servers in the cloud or machines at different locations. Many of the more technical, newer Mac users that came to Mac OS X in the early 2000s was enticed by the Unix underpinnings and the Aqua interface on top and the shiny hardware, but have recently found macOS to be gradually more locked down and less Unixy while the hardware have become less good (for instance with keyboards that makes your fingers hurt like on the new MacBook and MacBook Pros). At the same time as Macs have become less enticing, Linux distributions have become more user friendly and Linux desktop environments have become more polished. Combined with great hardware now on offer, many of these users now embrace ultrabooks with Linux preinstalled. Dell has specifically targeted developers in its line of Developer Edition computers with Ubuntu and this bet seems to be paying off for them. System76 and Entroware also have a great offering of high end laptops and desktops for pro users and are selling even more Linux machines than Dell.

Open standards without lock-in

Most programs you run on a Linux system use open standards for organising and saving documents. This means that if you want to switch from one photo library program to another one, you probably do not need to spend a lot of time exporting pictures or rearranging folders or anything like that. Just install the new software and start using it. The same applies to other categories of software like music players, word processors, spreadsheet programs, presentation software… Some programs like the GIMP or OpenShot use their own document formats, but they usually also open and export all the open standard formats in addition to a few well known non-open standard formats.

The use of open formats give you more freedom of choice. If you dislike the direction a program is going in, then you may switch to another program without any hassle. This is much harder if you are using programs with proprietary document formats (like MS Office), or where the content is stored inside a database you have to import or export from (like iPhoto). Once you have transitioned from the lock-in of the non-open formats to the open formats, you can continue to use these documents with whatever software you like for years to come, but if you stay with the non-open formats, those have a tendency to change every now and then, not because there is a need for change, but because Microsoft, Apple and others like to make it impossible for people with an older version of their software to open documents made in newer versions, and thus force people to pay once more for the same programs in a new version.

With more and more countries and regions switching to open standard formats like Open Document Format on their official websites, the future of these formats are much more guaranteed than the proprietary, ever-changing, non-open formats of Microsoft Office and others. Even if you use MS Office, iWork or Google Docs, you probably have to exchange documents with people that do not use the same programs as you, and the use of open standard document formats guarantees a higher rate of success, since most programs imports and exports them.

Economic advantages

Depending on what you use your computer(s) for, the use of Linux instead of Windows or macOS may save you some money. Most distros include a lot of free and open source software both preinstalled or in their software repositories. Much of this software can handle tasks you might have had to buy software to do on a Mac or Windows PC just fine. Most free and open source software is initially free of cost, but if you use the software, you are encouraged to contribute back either monetarily or by helping develop the software further through coding, design, translations or documentation or by simply spreading the word about it. This means that you can evaluate software without buying it, and when you decide which software you will continue using, you are free to postpone contributing back until you have the money, knowledge or time to do so. You are also in a position where you can influence the direction of a project by taking part in it.

Even if you primarily use paid for software (whether open source or closed source) and are a decent person contributing to your distro of choice, you may end up saving some money by getting hardware that is more future-proof or suited to your needs than what a Mac might deliver. With Apple going in the direction of non-upgradable hardware with built in forced obsolesensce and a focus on thinness over functionality, especially users which need high-end GPUs, CPUs, lots of storage and RAM or writers depending on good keyboards, will probably be better off economically by buying more upgradable hardware from other vendors. And you can choose the hardware you want, not the hardware Apple thinks you should want.

Macs have traditionally been more expensive, but you used to get a longer life-span out of the machines than their PC counterparts, but now, they are more expensive, but with the same standard PC parts as other X86 PCs, but with less future-proof designs. A high end laptop from Entroware, System76 or Dell beats a MacBook Pro both on price, raw performance, customisability and longevity, and thus delivers lower cost of ownership per year. Apple is also notorious for charging a lot for built to order options, even if these options are the only way to future proof a machine that is not user upgradable. If you use Linux, you can choose whatever hardware you like, and many vendors cater for both high end, mid-range and low end use cases.

Figure 3: Ubuntu 14.04 on a MacBook2,1

If you do not need high-end hardware, the choice in low-end hardware for reasonable prices for Linux use is much greater than on macOS. Older Macs that no longer get security updates to their installed Mac OS X version and that are unable to be upgraded to later versions of Mac OS X can run many Linux distros just fine. (I used to run Ubuntu side by side with Snow Leopard on my late 2006 white MacBook.) For really low-end needs like thin clients, any used netbook, desktop or laptop from the last ten years will work fine. Just use a lightweight Linux distro like Lubuntu, Peppermint OS, Puppy Linux or AntiX. Even PowerPC Macs are still usable with Linux. And for digital signs, media centres, routers, firewalls, DNS servers and other low power needs, a Raspberry Pi or Intel Compute Stick works well. I use a Raspberry Pi3 with LibreElec for my entertainment system. It cost less than half of an Apple TV and does everything the Apple TV does and more.

Free and open source software gives you influence

With Apple, what you get is what you get. You can choose to postpone to upgrade, but at some point in time, you will no longer get security updates and you need to move on. Many long time Mac users have been bitten by Final Cut or Mac OS X updates that went against their wishes. Sometimes, Apple discontinue software either to replace it with something else that is worse (iPhoto) or not at all (ClarisWorks/AppleWorks, HyperCard, FrontRow). If these programs were open source projects, the code would be available and the users that relied on them could influence what features were implemented and what features were removed. In worst case scenario, they could fork the projects.

If you are dependent on a particular free and open source software, you might want to participate in the project. You can do this by donating money, report bugs and missing features, make translations or take part in the coding of the software. When you do that, you also get the power to influence the direction of the project together with other users. This means that if you need the software to work in a certain way, you can make that happen through participation. Often one user with good ideas can have tremendous influence on a project if she engages with the community in a friendly way. Most projects consists of users of the software, and more often than not, there are many people which want the software to fulfil the same needs. Most projects welcome constructive feedback that will help them towards being more useful for more people.

If the project nevertheless goes ahead in another direction than you wish, if the software is free and open source software, then you have the right to fork it. Forking software means that you make a new project based on the source code of the other project, and develop it further in the direction you and your like-minded would like it to go. It is a huge undertaking to fork a large project, but sometimes the fork becomes more popular than the parent project if enough people are onboard. A famous example of such a fork was when OpenOffice forked into LibreOffice and Apache OpenOffice. LibreOffice became the more popular fork and is now the standard office suite on many Linux distros as well as hugely popular on Mac and Windows as it has better compatibility with foreign file formats and many more features than OpenOffice.

This might all sound a bit theoretical. Most people are not programmers and do not have the knowledge or time to fork software projects. However, if you work for a firm that relies heavily on a particular software project, knowing that the source code for the program is available and that the licence allows you to fork means that you could put an in-house developer or an external contractor to work if you find that the project is moving in a direction that is bad for your business. This ability empowers users to make of the software what they want. It also ensures that open source projects do not become like the proprietary software makers that first and foremost think about how they can sell you more software as often as possible with new versions with change for the sake of change (often to the detriment of functionality) and new document formats that are incompatible with the old in an attempt to force people to update to be compatible with the rest of the world. Free and open source software is there for their users, not for the sake of a company, a project or a foundation.

All content is shared under the terms of the Creative Commons Attribution-ShareAlike license.