Why I switched from OS X to GNU/Linux

2017-01-12T00:43:28Z

I'm not writing macOS because I switched before the new name came along. But let me start at the beginning.

History

My first computer was an Amiga, I got it when I was 12. At school the cool people had Amigas or Ataris, some had C64, the weird people had a PC with some Microsoft OS on it. I did some gaming on it but I also read the AMIGABasic programming book from back to back quite many times, that was the only source of information about programming for me back then. The book looked awfull after a while because the binding was really bad so in the end I had a couple of hundred pages loosly held together by a plastic bag.

But then puberty came along and I abondened computers compleatly. I had a moped, a car, went to techno clubs, organized underground parties (literally), and started playing bass in two bands. I had no need for a computer.

In the meantime the Internet happened. Therefor when I became 23 I decided that I also needed a computer to get on this Internet, I'd have a email address, so people could write me an email. I bought a used Fujitsu Simens/Nixdorf PC which came without an operating system. But back then there were those PC magazines you could buy and which came with a CD. On this CD, if you bought the right magazine, there was a Linux distribution, the one I got was Mandrake, I think it was some french distribution. I also bought a 56k modem.

I installed Mandrake and it worked ok, a bit different to the Amiga OS obviously but it also had a shell and it was more colorfull and came with more programs preinstalled. Sadly for the love of god I wasn't able to get the modem to do anything, I guess I didn't have a driver for this model and without Internet it wasn't possible to research it, oh and I was really bad in english, which didn't make things easier. So with a really bad feeling I installed this Microsoft OS, I think it was Windows 98, there the modem just worked. And because the hard drive was so small I wasn't able to dualboot.

It took me about 2 years to be in the position to install Linux, because the girl I was with also had her own computer which I could use for research during the installation, and I got ADSL and thus just got ethernet which just worked. I used a debian netinstall diskette to bootstrap the system. That was my first love affair with Linux which lasted for three years. I moved on to Gentoo and I also got a new used computer which Christian build from parts of other computers he had at home at that time. I was really happy about it and brought it by train from Dortmund in Germany to Varberg in Sweden, which is quite some ride.

Although Gentoo helped me to learn a lot about the system, it also had pain in the ass problems, the biggest was WiFI. Back then there was no NetworkManager and I didn't get how to set up wpa_supplicant during boot, yeah there was no SystemD either. I wasn't even able to automatically start X when the computer booted, it was a mess.

At the same time in the IRC channel I was, and actually still am since 2004, hanging out, people were getting PowerBooks and MacBooks and there was a magic around it. We even had a web-page which described who, when, got which Apple computer, It was always updated within hours after someone bought a new one.

I wanted one too, but I was poor, and those machines were expensive. I worked as a paperboy during the night and went to Swedish and Math school during the day. I was quite good in frontend webdevelopement, I knew a lot about semantic HTML and a great deal about CSS and all the browser quirks and how to fix them, so I was looking for a job.

I got one gig to translate some image files a media company did in Photoshop into HTML/CSS templates which they then would use in their CMS, and I got around 1000 EUR for that. This was my chanse, I wanted this MacBook computer so bad, it would be so awesome to have a good working computer. But I still didn't have enough money, so Christian offered to buy it because he had the possibility to get some discount, 10% or something, I don't quite remember.

Then he brought it, because he spent his vaccations visiting me and even recorded the unboxing, check this video out:

During the Mac years

I was really happy with what I bought, it also gave me more confidence that I would be able to work as a frontend web developer, because I did manage this one gig and they even send the money so I could buy something for it which I wouldn't be able had I just had the paperboy work which payed really shitty. With the new found confidence I got a real job at Infogate in Halmstad which was 80km away from Varberg but had a train connection, so I could commute every day.

At Infogate they asked me which computer I'd like to have and there was only one guy there who didn't have a Windows Dell, it was Mathias, who I later worked with at his company Odelay. Anyway, he had a MacBook because he was the design guy, so I thought if he can have one then they already somehow got everything working for him so it won't be too complicated for me. Therefor I told them I'd like a MacBook too, because that is what I'm used to work on.

The love affair with OS X

It was awesome, TextMate, Desktop Manager, iTerm2, CocoaMySQL, Lightroom, Photoshop, iTunes (which I basically only used to listen to music), Xcode which I used to work on iPhone OS apps as one of the first people in Sweden professionally. At Odelay we obviously got new MacBooks and iMacs, new iPhones every year, etc. I was full in in the whole eco system.

But after 5-6 years in, I started seeing cracks, first small, they introduced Spaces and Desktop Manager wasn't working anymore, thus I wasn't able to change the speed with which I would change between virtual desktops, which were a central peace in my workflow. Then they introduced iCloud into TextEditor and instead of starting it and you could instantly write, which I used often to take notes, you had to create a file first, so every time this one extra step which I hated. I hated it so much that I rewrote TextEditor myself, so it would work like it did before with plain text: TextEd. iTunes started to getting out of controll, was it a fish, or meat or a plane, or everything in between?

And it got worse and worse with time, I wanted my computer to work a certain way, and it often worked that way before, then came a OS X update and made it impossible to keep my workflow.

ThinkPad time

When I stopped working at Odelay I gave back my MacBook but bought out the iMac, but I needed a laptop for university. Goetz Buerkle always had a MacBook and a ThinkPad and was telling only good things about the ThinkPad as a work machine. I asked around and other people told me about it's great Linux support. Because I was a student without a job I didn't really have the money to buy a (used) MacBook anyway, so I thought I would give Linux a chance again. Especially because at the university almost all the computers were running Red Hat Linux so I wouldn't have any problems to do the assignments and stuff. Therefor I bought a used ThinkPad T410.

This machine was from 2010 I just replaced it half a year ago, it was like a tank, robust as hell and it made possible what I would not have dreamt of during my MacBook years, if something broke down, I myself was able to repair it! Repairing the fan, Fixing the overheating sound card, etc.

Oh and I don't have my iMac anymore either, which I used as a desktop computer at home if I wanted to have a bigger screen, for example for Lightroom when dealing with my pictures, or just listening to music. I don't have it because I got robbed, and they took it together with my Nikon D5000 and the podcasting equipment. I was much more upset that they took the camera, the iMac was kind of 'meh whatever', I didn't use it for much anyway because it was so inconvinient.

Second love affair with Linux

After I was done with my studies at the university I wanted to work for some company which worked with Open Source, I started at Pelagicore, where I still work. There we are creating custom Linux distributions for car manufacturers, we do UI work, we write Linux drivers, Linux middleware and so on. Because we work with Linux it is much more convinient to run Linux nativelly for developement too. At Pelagicore (almosc) all developers work on Linux desktops and laptops, I felt that I fit right in with my ThinkPad. And this was also why I used my iMac less and less, everybody around me was using Linux, it became cumbersome to do the overhead to get stuff running on the iMac which I already had running at work and on my laptop on Linux.

I started with Ubuntu, but quite fast switched to Debian testing with Gnome 3 because I learned about how Canonical treats everyone, their users (the [Amazon problem (http://www.zdnet.com/article/shuttleworth-defends-ubuntu-linux-integrating-amazon/) with Unity Dash search results, problems with their Intellectual Property Policy, etc.) It also helped that there was Jeremiah, who evangalizes debian day in day out at work.

In between I wanted to try out Arch Linux so I installed it on my ThinkPad, and man this was a performance boost, it felt like a new machine in comperison to Ubuntu. Nowadays I run Arch at work too. For stuff which doesn't work, like some specific version of Yocto, I wrap it into a docker container with a Ubuntu image for compatibility.

What I use

I was mostly using free software on OS X already like Firefox, LibreOffice, Emacs, but it still took some work to find out what would work for each and every use case I had working on OS X. Therefor here a list of what I used back then and what I use now:

Usecase | OS X | Linux | Comment
Listening to music | iTunes | GNOME Music | It has a simmular UI for the albums.
Cutting pictures | Photoshop | Gimp | It's not super nice but I do really basically only cut pictures.
Text editor | TextMate / Sublime Text | Emacs | The learning curve is steep but it's so much more powerfull.
Editing RAW pictures | Lightroom | Darktable | In my opinion the UI isn't as slick but it's so much more powerfull, and their blog where they explain how they implemented things is super awesome.
Audio processing | Ableton live | Ardour | It's really awesome but the whole jack vs. pulseaudio is not.
Writing iso to USB stick | dd | GNOME Disks | The UI is so much safer, I love it.
IRC Chat | Textual | HexChat | Much more stable.
Email | Mail.app | Thunderbird | This one is not as nice, but I haven't found anything better.
Calendar | iCal | GNOME Calendar | It's getting better but still lacks the day and week view, which is really bad.
Address book | Address Book | GNOME Contacts | Sadly really really shitty.
Terminal | iTerm2 | Terminator | It has better features which I use every day.
Reading RSS feeds | Reeder | FeedTheMonkey | This one I wrote myself, I actually wrote it myself partially on the iMac, but cross OS compatible with Qt.
Tweeting | Twitter for Mac | Website | I basically stopped using Twitter, so I'm not looking for a replacement.
Password manager | | KeePass2 X | I didn't use any before.
Letting the computer read an article for me | Speaker | TypeTalk | On OS X I had my own app I wrote, on Linux I found TypeTalk, which didn't quite work as I wanted, but I worked with the developer and he implemented my feature requests.

Ardour

GNOME Calendar

GNOME Contacts

Darktable

Disks

Emacs

HexChat

KeePassX 2

GNOME Music

Termitator

TypeTalk

So why did I switch?

I think it started with some dissatisfaction about OS X, and the disire to be, at least in theory, able to change things so they would work like I want them to. This translates directly to the GPL, which is the license most of those programs I use use. Add to that the feeling of membership, because everyone at work is using Linux and also pride and curiousity, I am able to, and am doing it sometimes too look behind the scenes, direcly at the code of everything. This was not possible on OS X at all. And top it off with the fact that I can use Linux on so many different hardware, my laptop, my desktop at work, the security cam I'm running in Poland, the Raspberry Pi, embeded devices in the car (selfdriving cars anyone?), on the phone, on my router, and so on.

All this together is right now so compelling that macOS doesn't stand a chance.