John_Uskglass
@Croepha As you seem to be one of the more experienced OS X users here, could you say any more about how you find OS X these days? How is it development wise? Is it reasonably easy to break free of Xcode/Cocoa etc. and follow a handmade style of development? Why do you keep your Windows and Linux systems running all the time? What is it you prefer to use them for rather than your OS X machine?
This next bit is about general casual user experience, if you only care about coding skip down:
I think the thing I like most, is that while I do enjoy hacking on code, when I'm done, I like to be able to turn it all off and have a pretty decent/stable user experience. Most of the other things that I like about OS X are purely associative, they aren't really impressive by themselves but when paired with enough other Apple products you really start feeling it :)
Apple, usually doesn't change their products very much. They do add things with every release, but these things are minor. You don't have to learn a new UI after upgrading. Most of their updates are pretty much just maintaining what they have and fixing bugs.
I like the fact that Apple tends to steer away from cloud services, for example, every "Messages" client maintains their own history database, and messages aren't stored in some database in the cloud (They do get cached(per device) for when you are offline). "Photos" is an application for managing your photos that provides features similar to Google's cloud photos service, but works entirely offline. When you buy things like tv shows on iTunes, you can download them to your laptop, and stream them to your Apple TV offline...
Hardware vendors make good drivers for OS X. The OS basically ships with almost every printer driver already installed, so hooking up a printer is basically just connecting it via USB or Wifi and hitting print. You never have to edit your Xorg.conf file or re-compile your kernel to get some peripheral to work...
File-sharing and remote access are very easy, as easy as they used to be on windows XP, you can also share files via bluetooth. OS X ships with an SSH server, VNC Server and Samba server.
Airplay is awesome, I can stream anything from my laptop or phone to my home entertainment system, and play music when I'm in the living room, with one click or get an extra display on the TV, with surprisingly ok latency.
Whole system encryption, on by default
Automatic, every hour, whole system incremental backups are done when you are in range of your time-machine target, so that if your laptop gets stolen or run over, you can buy a new one, attach it to the home Wifi and the OS X installer will find and restore your backups, and you are right where you left off when you did your last backup.
I could go on and on about Apple hardware, but thats probably out of scope...
For development:
I don't think that Xcode is really any better than Visual Studio, (except that I don't think Xcode has ever crashed on me) I just use Aquamacs and use a build script similar to what Casey uses.
Homebrew provides a package set almost as good as you would find on Linux, but way better than Cygwin on windows.
I run Linux and Windows, because most of the time, I am shipping applications that run only on those OSes, I prefer to ship applications for Linux, because I think that most of the APIs are better on Linux (better than OS X or way better than Windows)
If you are developing a GUI app for OS X, there is no practical way to avoid Cocoa all together. You can however, make a minimal layer to just get you some input, a window and an OpenGL context...
For fairness: Things I don't like about OS X:
OS X is really bad at customization. Don't even think about themes. You have to install a bunch of little programs that do customizations if you want to do things like make the system not sleep when you close the lid, or if you want to globally remap keys, or if you even want to change resolution to all the resolutions that the Macbook hardware can do. Apple in their infinite wisdom decided that those weren't things that they wanted to support. Over all, Apple really only focuses on a narrow set of use cases, whatever they think is most common...
Apple is very stubborn, and are slow to adopt things that other OSes do first.
While most of the Apple UI follows a consistent pattern, I find that keyboard only navigation is impossible in most applications.
Game vendors don't support OS X as well as they do Windows, also Apple hardware isn't very cost effective for gaming.
Going Apple is very expensive, often their hardware is much more expensive then what you would get by building equivalent hardware yourself, but whether or not it is "overpriced" depends on hard to measure qualities such as build quality, misc features, and their support and integration into their ecosystem
Also, not necessarily a negative for OS X, but OS X is very different from Windows, so a typical Windows user will need some adjustment time to get used to the way that OS X does things. Most things will click in a couple weeks, some things might take a few months. This usually includes trying to install things to make OS X do things the way that they were done in Windows, but eventually just learning how to do it the OS X way...