There's growing awareness in the design community about the importance of design ethics and the way proprietary technology subjugates users. As a user experience designer, I believe technology should be designed to respect the earth as well as creators and users. Using and contributing to Linux is one way to align my design ethics with my practice.

This is why I bought a ThinkPad and installed the Linux distribution Elementary OS, even though macOS is, by far, the most popular operating system among designers. Linux doesn't have a great reputation for ease of use, and switching operating systems can be disorienting and frustrating. When I told people I was making the switch, many (especially designers!) thought I was foolish. However, after making the switch, I am happy to report that I have a design workflow that I really love and an operating system that aligns with my values.

If you'd like to see what it's like to switch from macOS to Elementary OS, read on to learn from my experience.

elementary_os_5.1_hera.png Elementary OS strong user experience makes it a great operating system for designers,

Plan for the applications you will use

First, make a list of the tools you use regularly. For me, they are:

Sketch: designing

Marvel: prototyping

Firefox: web browser

Tomighty: Pomodoro timer

Skitch: taking and annotating screenshots

Standard Notes: notetaking

Adium, Signal, Slack, Telegram (Does anyone else feel my pain here?): messaging

iTunes and Spotify: music

Sublime Text: writing HTML and CSS, coding

Thunderbird: email

Next, check if those programs are available on Linux. AlternativetTo is a good resource to find software alternatives.

Luckily, I was already using a lot of free and open source software. However, the most important application for me is Sketch, which is not available on Linux.

I was hoping I could switch to an open source software tool for designing and prototyping. I tried out Glimpse (a fork of GIMP), Krita, and a few other tools, but none were stable or had the feature set and workflow I wanted. I am keeping an eye on these projects and hope to switch to one of them if the functionality meets my needs.

Instead, I chose Figma. Although it is proprietary, I appreciate its relative openness, its mission to make design accessible, and its ease of use. Because it's web-based, I can replace both Sketch and Marvel with Figma. There is also a native app that I really like.

Skitch is only available on macOS. So, after some research, I landed on KSnip, which is a fantastic screenshot tool. Because I like it so much, I wrote Annotate screenshots on Linux with Ksnip.

Install and set up ElementaryOS

After ensuring that you have Linux-compatible apps for all your needs, the next step is deciding on your hardware. You could install Elementary alongside macOS, which would be a great way to try things out before fully committing.

Instead, I started fresh with a new ThinkPad. I followed Elementary's installation instructions and donated $20 to support the project.

The beauty of free software is its emphasis on customization. Many settings in Elementary are configurable, and you can customize Elementary to match the workflows you know and love.

The Elementary experience mirrors macOS in many ways, so you might be pleased with how little you need to configure.

Keyboard shortcuts

The first thing I customized was the keyboard shortcuts. There are only a few shortcuts that differ between macOS and Elementary. If you don't want to work against your muscle memory, configure all shortcuts to your liking at System Settings > Keyboard > Shortcuts.

Apps

Elementary comes installed with a few really helpful apps, such as Calendar, Epiphany (a web browser), Mail, and Music. It's worth trying them out. If one works for you, then that's one less application you need to worry about installing.

Transfer your data

After switching to Elementary, I realized just how little data I save locally. Most of my work is saved to a Nextcloud file share hosted by my tech co-op May First. I transferred all the other files I needed using a USB stick.

Learn Elementary's design patterns

While it's similar to macOS, Elementary has a few important differences. You could still try and override them, but you might want to just get used to them.

Tabbing between applications

On macOS, I perpetually switch between applications with Alt+Tab and the Alt+Arrow keys. On Elementary, you also use Alt+Tab to switch between apps, but the Alt+Arrow keys are not supported. If anyone knows how to customize Elementary to do this, please leave a comment because I'd love to have that feature back.

In macOS, you can switch between different windows in the same application with Alt+~. This is not supported in Elementary. Instead, Alt+Tab cycles through all windows, regardless of the application it belongs to. You can, however, switch between different windows by hovering over the application icon and scrolling. You can read a full list of methods for switching between windows and workspaces on StackExchange.

shortcut-overlay.jpg Most of Elementary's shortcuts are the same as OSX, but you can configure any of them to your personal preference.

Get familiar with support

Linux, unlike Apple, is built and maintained by communities. Elementary is supported by Elementary, Inc., but it thrives because of its larger community. It has done a great job of fostering a community that helps one another out.

It's inevitable that you will get stuck or have a question. When you do, you can turn to:

Elementary's GitHub repository: Report a bug, request a feature

Elementary on Stack Exchange: Ask a question or search for an answer to a question someone has already asked

When you seek out help, remember to do it from a place of compassion. We're used to having transactional—even antagonistic—dynamics with the tech tools we rely on. With Elementary, you're not talking with a faceless corporation but a community of people, many of them volunteers, who genuinely want to help.

Get comfortable with the command line

The reality is that there will probably be times when doing something in Linux requires you to use the command line. If your work keeps you away from the technical side of things, the commands you need will probably be minimal and straightforward. Still, it's good to get comfortable with the basics—once you have, you may very well find you prefer the command line over a GUI approach. Codecademy is one place you can learn command-line basics.

Learn to install apps

A great feature of Elementary is its curated AppCenter. Curated apps are designed with Elementary in mind, so they may work smoother than other apps. It uses a pay-what-you-want model that strikes a balance between supporting app developers and maintaining its free and open spirit. Plus, Elementary just successfully fundraised for a week sprint to improve security and the user experience even more.

elementary-appcenter-pay-want.png App developers name a suggested price, which users see but then have the option to pay what they want.

However, there may come a time when you'll need to install apps not found in the official store. One mistake I made was to start installing apps in a variety of ways (e.g., the apt-get command, Snaptastic, and Flatpak), rather than picking one method and using it as much as possible. The more ways you install apps, the harder it is to keep track of how you installed what and which method is the proper way to run updates.

My recommendation is to stick with AppCenter as much as possible. If you must venture out, I recommend Flathub because Elementary adopted Flatpak for its AppCenter.

Contribute back

Elementary is free to download, and so are most of the apps. You can donate to Elementary (or buy a tee shirt or mug from the store) and the creators of the apps you use. You can also promote those projects by telling your friends and colleagues about them. You could even offer your skills to the projects you admire the most.

Since I made the switch, I feel great about being further involved in the free and open source software movement and appreciate the speed and efficiency with which I can work in Elementary. If you use Elementary (or try it out), please share your experience in the comments.