vendredi 27 juillet 2012

Why I quit Apple OS X

Hi all folks, in this post I'm talking about my progressive stop using Apple OS X.

Remarks: The content below talks about my personal experience. A software developer spends time to develop, write Bash script. I'm not a gamer (except games like Zork or MSX games), not a designer. Now, I program in JVM languages (Groovy, Clojure) and make Web development (PHP, Grails, CSS3, HTML). 

EDIT: I edit my text to be accurate about my memory management problem. It seems it wonders some people, I met the problem with my iMac with 3GB. The problem was less obvious with my laptop has 4GB.

The Happy Days

First, there a summary of my "Apple" life. All began like a dreams for me, I was a Linux user (since the end of my studies in 1998). I'm a developer and my favorite tools are the command-line, emacs and more and more good IDE like IntelliJ (before Eclipse and Netbeans).  
But I was bored by a lot of configuration problems. The biggest problem was to be able to use a DSL modem. I spent a too many times to configure module, kernel, edit configuration files. I'm not a system hacker system, only a good developer and I like programming, not configuration for programming.
So, in 2003 I saw an ad about OS X Panther and I said "Yes!". It seems a simple OS with bash shell (very important for me), with a lot of open source products inside.
Thus, I bought my first iBook G4 laptop with OS X Panther. I was very happy, the printer worked directly, no problem with DSL modem and I could spend all my time to program. The happiness. The sole exception was Java, on a Power PC architecture, the Java implementation was very slow. But, at this moment, I developed in Python, C and I discovered Objective-C and Cocoa (an excellent framework).
Later, in 2006, I ordered my iMac and a white MacBook laptop (currently, I'm writing with this iMac and I use regularly the same laptop :)). Both was on Tiger, again the OS was fine, responsive and this time the Java implementation was good enough (thanks the Intel choice).

The Disillusion

When Leopard was out, I bought it and it didn't seem so great. I felt my computers made heavy. And I noticed the memory of my computers started being limited. So, I upgraded my iMac with 3Gb (the max memory capacity for it) and 4Gb for my laptop. But I continued boasting OS X to my friends and some of them bought Apple computers.
I bought an iPhone and an iPad and I was happy by the simplicity of their interactions with OS X. 
But Apple started "forcing" user to adopt frequently updates. I know the term "forcing" is a little strong because you don't have knife against your neck. But, I was developer, more and more in Java for my job and I wanted to have the last release, I had to update my OS. 
When I installed Snow Leopard on my iMac, I was really disappointed. My hard disk frequently swapped and I spent more time to look at the color wheel and wait for my computer. With whatever IDE, I had these issues and I had no more pleasure to code with OS X. I talked about the problems on forums, bringing up the memory manager problem and each time, people respond me "The memory manger of Apple is the best. Upgrade your memory. You can't, so change your computer with the latest". But I was at max on my computers! And since when, I need 8Gb to develop programs ? And if I wrote again the Apple's memory manager was bad, I was shutdown in flames. No criticizing the master! 
I told to myself: "God, why with 3Gb or 4Gb on an Intel core 2 duo computer, I can't continue developing like before". Even my friends, who bought Apple computers thanks to me, was became full Apple compliant in their computers, phones and thoughts too. They didn't understand why I wouldn't to buy new computers. How can I say ? ... They cost some money and my current computer works pretty well. Ah, it's not enough?! 

Back Home

I forgot Linux for my personal use (I used and using again it for my job inside a virtual machine on Windows). I don't know why, may be I wouldn't spend time again for configuration. But I was happy no more with OS X (and sorry, but I can't use Windows. I'm too Unix lover for that). 
And one day (last year, 2011), I was watching the Big Bang Theory TV show and Sheldon talked about Ubuntu. It was like a hammer hit on my head. "Yeah, why don't try install Ubuntu on my macs?".
I downloaded the ISO file, burn the CD and .... go! No problem with the installation, the WiFi works well. Some adjustments was needed on my laptop (only configure settings for the touch pad, but I found quickly and easily it). My printer (a WiFi Epson PX720WD) works perfectly after downloading and installing the drivers. 
And the most important, for me, my computers are fast, responsive and I develop with intelliJ in Clojure, Groovy, C with pleasure. I can have the latest JVM version without change OS or computer :)
Futhermore, I can use my iPhone and iPad easily. I put my video and podcast on them directly from Ubuntu. 


I rarely return on OS X with my computers. The last time was to update the OS of my iPhone and iPad.
And I'm not in a hurry to use the last version of OS X when I read to use iCloud, you must update to Lion (and if you computer can't, then change it), by default (now, by what in the future?), you must install application from the MacAppStore, the application auto-termination, the new file system with Mountain Lion, the SSD use masks the memory management problem. Apple wants to transform your computer into a big iPad. I can't be happy, me a simple developer, with this logic. 

Now, I feel fine again :) Free, quiet, making development, discover new languages, new programming and software architecture concepts with old computers that work pretty well :). And when your computer isn't the fastest, you optimize and you are surprised when you see your program run on a server with the latest technologies.

I don't say Linux (or Ubuntu) is better than OS X. All operating system have pros and cons. It's a way-of-life choice, I don't want to buy new things just to have new things. And, the most important, I don't want my choices are controlled by a company.