This is me talking about why I use OSX. If people like it, or want to know why I also have an iPad, and other apple stuff that I'm happy to talk about, I'll be happy to write more. If people couldn't care less, then I'll just use this to link to next time someone asks why I use OSX.
Please excuse me if I wax lyrical on this topic. I am trying very hard to remain objective but this piece is by nature biased, it's why I believe OSX is a better operating system to be running than Windows. My background here is a fierce apple hater from about the age of 7 when we were forced to use macs in primary school and they were absolutely horrible. I would classify myself as having been a 'power user' of XP/Windows Vista like many of you would yourselves, I can't classify myself as such with windows 7, but I have used it more than the average person. Only 3 years ago did I finally have cause to question this, and didn't get a mac till 1.5 years ago when I got my current macbook pro.
I will also preface this entire piece by saying that as a gaming operating system, at the current time, OSX loses to Windows. Not so horribly as it used to with Steam recently coming to Mac and Blizzard has always supported the platform. Even games like HoN have native clients. I am hopeful that this will expand in the future, but it will be years down the track if it ever happens. If you're after a gaming machine that you want to keep up to date with the latest specs (You replace parts on a year-two yearly basis), then sure, get a PC. If, like me, you find that you don't buy new parts for 3~ years, then boot camping a mac will suffice. Macs have a great resale market if you keep them in great condition, it's entirely feasible to resell and buy a new mac every 3 years, keeping up with the general specs race. You'll never have absolutely state of the art, but I find that this is rarely necessary. You will have the capability to run just about anything though. Enough disclaimers, onto some specifics about OSX.
Final thing, i'm not trying to convince you to get OSX. I'm explaining why I choose to use it.
The first thing to mention is the window manager OSX uses, and how it is fundamentally different to the way Windows works. In Windows, typically you run an exe file and a window will pop up. E.g. word, you run word and you get a Word window. This window is also the Word process. You close the window, you close both. The window holds the document you're working on, and the program itself. In OSX, you open a program and an icon will appear in the dock. This is the program itself. Now if you open a file, make a new file, do anything with that program, you open windows, which are tied only to the document being opened. So I open word, and open a document, close the document, word is still open. There are no windows open, but the program is still running. Where this becomes useful is when you would typically alt tab to change windows on a Windows machine, if you have 4 copies of word open, then you'll see 4 word icons. On OSX you'll only see 1, and then if you want to go between your open Word documents, you'll use command + ~ to swap between open windows of the current program. A lot of people miss this, and it causes a lot of the confusion that I encounter in new mac users, expecting things to work like they do in windows.
What is happening there is 2 different metaphors to deal with the same problem. In this case, I'm not going to say that one is definitively better than the other. I will say that I prefer the OSX way of doing things after having used it and windows, but it took me about 2 weeks of using it to actually understand what was going on after being frustrated with it not acting like Windows. This brings me to the point that a lot of concerns Windows users typically have with OSX is that the metaphors they're used to aren't present or are subtly different. Having your habits forcibly changed to work with the new system causes confusion and usually resentment, usually without spending the time to understand the metaphor and trying to use it the way its intended, rather than forcing it to work the way you're expecting, only because of what you're used to with another operating system.
Going back to the whole alt tabbing thing, Exposé. Exposé for those who don't know it is OSX's primary way of finding your window amongst the clutter. It has 3 functions.
1) Arrange every open window so that they're all showing (shrink them down so they all fit on the screen) and let the user pick which window they want to have focus.
2) The same thing, but only windows of the current program.
3) Shove every window off the screen so you have uninterrupted view of the desktop.
It is infinitely easier to find the window you're looking for than alt tab, making it faster. I spend less time looking for my window, making me more productive.
Spaces will be familiar to a lot of linux users, basically spaces are multiple desktops, in the sense that each desktop is a receptacle for program windows to reside in. This comes in very handy when I'm working between programs, with multiple windows for each program. I generally have my browser in 1 or 2 spaces, finder windows for each of the folder locations I'm working with in 1 space, next to a terminal for ssh or whatever commands I'll need to run on the files I'm making. I'll then have my editor taking up it's own 3rd space, and I haven't really had a need for any others. It's probably very likely that something like this exists as a 3rd party windows program. In my experience it's also likely that this 3rd party program will experience 1 or more of these problems:
1) Abandoned project
2) Will crash
3) Functionality is slow
4) Has user experience problems (10 million unnecessary settings, complicated system to change desktops, etc)
I'm not even making these up. In 10 years of working with windows, every time I have tried to add this kind of functionality to the system, be it expose replacement, a launchbar, multiple desktops, one or more of these problems will crop up.
Spaces on OSX is nearly unnoticeable once you work out how to use it in your workflow. Command 1 2 3 4 5 or 6 (Can set up to 9 spaces, I have 6, only use 3. Very much personal preference) for whatever space I want to be working in at the time, and if I click on the dock icon of a program that doesn't have any windows open in the space I'm working in, it'll immediately move me to the space that it is working in.
Almost all software utilises the cocoa framework and benefits from shared UI components, creating a user experience that is unsurpassed in consistency. Elaborating on this, it's very easy to learn how to use new software on OSX. They have shared ui components, the current trend is to have programs that look like this:
Now I'm not going to try and argue why that's the best way for the ui to be (though as someone who is professionally invested in the field I definitely agree with a lot of what they do even if there could be improvements) but what I will say is that the consistency across almost all 3rd party and 1st party software is so, so helpful. Each program has its own little twists on the paradigm, but they keep to the guidelines. Just a little example of how this consistency is nice, every program has the options/settings/preferences window in the same location of the menu, and is almost always accessible by command + comma. No matter where I'm in in what program, I know that if I hit command + comma I'm going to get the settings window, or command + i to get the information window for what I've selected. This doesn't happen with windows software, and I honestly can't explain why other than that they don't have the same ubiquitous development framework for all applications (I realise that it's just a choice of everyone using the same thing, but it's not happening in Windows land. Would be a very interesting world if it was).
On the topic of OSX software, the level of integration between programs is a step above what you experience in windows. In windows your programs exist in silos. This is my Word silo, this is my Browser silo, this is my Calendar silo. To interoperate, you almost always have to save a file, and then open that file in another program. Sometimes you can drag and drop between programs. OSX dragging and dropping between program windows is commonplace, also you have situations where one program, for example calendar, will sync its stuff with mail automatically. And if you want to disable/enable/modify this functionality there will be a preferences section to control the behaviour.
If you're familiar with unix you're familiar with the concept of piping input and output between programs. OSX achieves a similar effect with GUI programs though the use of what they call Services. When you run an application it signs itself up for a set of services. Services can be run on a set amount of types of content, be it files, text, images etc. But basically I'll have my todo list manager called Things (one of the previous screenshots I showed) which has signed up for the a text service. OSX then puts into the context menu for when you right click highlighted text an option to make a new todo with highlighted text as an attached note. This is one example, but you can imagine the types of uses this can, and is put to.
To summarise the last few points, 3rd party software on OSX is simply put, better quality and better integrated into the OS than 3rd party software on Windows. There is an argument that this is independent of the platform, but I would argue that it's the case because OSX does more to enable it. I wish Windows software was more like this, but it isn't.
On top of the OS features, there are some 'killer' applications for me that make it worthwhile:
- Launchbar / Quicksilver Application launcher(s) on steroids. Launching an application comes in 3 parts. Application, File, Action. Most of the time I only use Application, but if I know what I'm doing to what I'm doing, in what I'm doing I'll ctrl + space and type it in. Then it happens.
- Textmate The best text editor I've ever used. Closest thing I can think of on windows is Notepad++. Some people might prefer vi, emacs or some variant of those two, but lo and behold, you've got them on OSX. Not on Windows (without serious hassle)
- Things Changed my life. Todo list manager with a deep level of integration into the OS and other programs. Best todo list manager GUI that enabled a Getting Things Done approach that I've been able to find. I realise this is anecdotal but I do know 1 person who uses a mac purely for this application.
- Growl Notification unifier. All programs can send growl content to put in notification form, you can customise how these notifications appear with growl preferences. Has become de facto standard for popup notifications (a la your MSN notifications for those that use MSN) across OSX.
There are more to be honest, but I am trying to cut down to the absolutely must have applications that I really, really miss when I'm working in Windows. One that I'll add that I know will cause contention is iTunes. I realise that it's available on Windows, and that a *lot* of people hate it. I think it's shit on windows, the UI is clunky and it's missing functionality, on OSX it runs beautifully smooth and other media organisation programs I've tried don't match it.
Something I see from a lot of posters is that you can't customise OSX. Back when I actually cared (When I realised how good OSX is) this used to piss me off. Anyway, any menu item of any application can be configured to have a hotkey. I have hotkeys for bookmarks in safari because bookmarks show up in the menu (via a bunch of submenus but they're accessible through the central hotkey registry). Doesn't exist in windows, kills me when I go back there and find menu items in programs that I can't get a hotkey for.
There's one more major feature of OSX for me, Unix. As a developer, specifically a web developer, if all the rest of the features I've talked about didn't exist, I would still use OSX for this reason. It also puts to bed anyone who says that OSX limits you. Just open up a terminal and start typing. There has been absolutely nothing I wanted to do that I can't do on this machine. This point deserves more, but I suspect it's not relevant to half the people who would read this, so I'll leave it at that.
Final feature I'd like to talk about is Quick Look. While navigating through files/folders in Finder, press space on any file and it will open the file in a temporary lightbox-like popup and show the file in that. Media will play, images can be viewed, html will be rendered, programs can also register how their associated files should be quick-viewed. You can then press up/down/left/right to navigate through folders/files with quickview open still.
To wrap it all up, some small things which I can't be bothered explaining but will explain if you want to know about them in replies:
- Ctrl + scroll for zooming in/out of the screen
- AppleScript / Automator / Shell Scripts
- Finder vs Explorer
That's a rundown of a lot of the features that I can't replicate in Windows to a degree of quality that I would expect, that I very much miss when I go back to working on a Windows machine.