Pages

May 24, 2014

Thoughts on OS X

I've recently just started on a new job as a web developer doing Python/Django type of stuff. I'm very new to this web development industry, as I previously worked with SAP ABAP, so it is rather exciting. The companies I've worked for doing ABAP work all used Microsoft Windows; and that's not surprising because Windows is ubiquitous in enterprise work environments. Personally, I use Linux, primarily because I can't afford a legit copy of Windows nor can I afford the high premium of Apple computers. But my current employer has given me the opportunity to work with an Apple Mac mini in the office. I've been using it for close to a month now and here are some of my thoughts about it.

Graphical User Interface

I can now see why a lot of the stuff I read on the Internet seem to point out that some Linux desktop environments (DE) are trying their best to imitate the OS X look-and-feel. A lot of distros come to mind, like elementary OS and Ubuntu. I'm not very absolute in my choices with regard to DEs as I like to experiment and try out different ones.

Search-and-Run

What I do like to have as a minimum is a search functionality wherein I just type a portion of the application name I want to use and the DE gives a me a list to choose which to run. In Gnome 3, my current DE, you just need to press the Super key (the key with the Windows logo) and start typing on the search box that appears. It will then give a list of apps that possibly match the query string. It's then just a matter of choosing the app to run. In OS X, pressing the ⌘+Space key combination brings down Spotlight which does pretty much the same thing.

Surprisingly, I can tolerate the global menu on OS X while it was one of the reasons it drove me away for Ubuntu's Unity DE. But maybe it's because OS X doesn't offer me any alternatives to use a different DE so I have learned to deal with it. (And perhaps trying out Ubuntu 14.04 with Unity will be a little bit welcoming?).

Docks

I am impartial to using docks. I still prefer the taskbar/panel that's used in more traditional DEs like XFCE, KDE and Windows' DWM. One thing I really miss from using Windows 7 is the mini preview I get of the open windows from an application when hovering over the application's icon. I think I pulled this off on KDE (I forgot what widget I used); I haven't had any luck with other Linux DEs. In OS X, there is a need to install HyperDock but I didn't install it because it costs $10! Hypothetically, I'd get it if I owned the machine, but since it's a work Mac, then I didn't bother. It would be nice-to-have built in though, both in Linux DEs and OS X.

Window Management

Of the 3 desktop OSes I've used, OS X is probably the poorest in window management. Even in Windows (> XP), pressing the Window+Left or Right will snap the active window to the left (or right) edge of the screen. This is handy if you need to see 2 windows open side-by-side. In Gnome 3, the same behavior happens when pressing the same keystroke. But on OS X, I need to again (buy and) install HyperDock as mentioned above. I chose to use SizeUp which has a free unlimited trial (where a pop-up window comes out every now and then asking if you want to license it) because it costs $13! Other Linux DEs like Cinnamon has most of the SizeUp functionalities built-in, and it's free!

Applications

Package Management

Being used to Linux's way of installing packages, package management is one thing I feel lacking in OS X. Yes, there's Homebrew but our project manager forbids us to use it because it has the potential to mess up with the machine's normal operations (and, yes, I noticed that it does some funky stuff to /usr/local/bin so I removed it immediately). And so, in OS X I am left with installing apps the "Windows" ways -- download binary, install. There are 3 ways of getting packages/applications (that I know of): (1) .dmg files which is similar to a disk image (ISO), (2) .pkg files which I liken to Window's .msi files and (3) .app files which are stand-alone executables, yes, like Window's .exe files. I can see a lot of people would probably choose OS X over Linux when transitioning from Windows because of this ease of installation which is somewhat similar to Windows. Any user, myself included, will be confused with instructions like ./configure, make and make install for packages/applications not available in the distribution's repos.

Which brings me to my next point...

Premium Application Availability

For lack of a better word (or my poor capacity for English synonyms), what I call premium apps are apps that are well known to any computer users worldwide. Examples are Adobe Photoshop and Microsoft Office Suite. In the Linux world, there are alternatives to these premium apps. Most often than not, in Linux you are forced to use these alternatives because said premium apps are non-existent. But based on my usage, the alternatives are good enough (which I can't say for all people).

At work, we use the awesome GUI front-end SourceTree app for managing Git repos. Said app has an installer for Windows and OS X, but none for Linux. I'm forced to either use the command line or look for an alternative. Other apps like Adobe Photoshop and MS Office are also in OS X but not on Linux. Of course, alternatives like GIMP and LibreOffice are there but these apps are not as used as their premium counterparts. Again, this is probably another point on why Windows users will most likely transition to OS X better than Linux; because apps they are familiar with in Windows are also in OS X.

We could argue that most Linux apps are free, but that's just one side of the story.

Conclusion

What I'm trying to say is that there is a tool for everyone. I'm not into the "OS hating" sort of thing that's prevalent in the Internet. I've used Windows probably most of my computing life as of this post. It's just 5 years ago I switched to Linux. And now, I get to work on OS X. I currently stick with Linux for my personal system, because I already get what I need and it is mostly cost-free. I would live to try Windows 8.1 but I don't have the resources to get a machine that has one on it (and no, I don't like using pirated Windows).

If I were looking for a new laptop and had the money to burn, then I'd probably go for a Macbook. OS X is what I would consider to be a good balance of Windows' premium apps availability and Linux's powerful command-line interface. I guess Matthew Garrett sums it up pretty well in his post:

[...] The overwhelming majority of OpenStack deployments are Linux-based, yet the most popular laptop vendor (by a long way) at the conference was Apple. People are writing code with the intention of deploying it on Linux, but they're doing so under an entirely different OS.

But what's really interesting is the tools they're using to do so. When I looked over people's shoulders, I saw terminals and a web browser. They're not using Macs because their development tools require them, they're using Macs because of what else they get - an aesthetically pleasing OS, iTunes and what's easily the best trackpad hardware/driver combination on the market. These are people who work on the same laptop that they use at home. They'll use it when they're commuting, either for playing videos or for getting a head start so they can leave early. They use an Apple because they don't want to use different hardware for work and pleasure.

For now, I'm sticking with Linux. But who knows, maybe in the future I'd be back to Windows or using OS X. It really doesn't matter. What does matter is to keep an open mind with regard to the OSes we use. They are just tools so no need for the fanboy bullshit hating on any OS. As always, what works for one may not work for another. If the shoes fit, wear it! If not, get a new pair.

Thanks for reading. And happy Linux-ing.

No comments:

Post a Comment