I originally wrote this post in August 2010 as part of series concept: “Developing on iOS for the .Net developer.” If anything, the topic is even more relevant today and I plan on expanding the series so I’m including it here – with only slight modification - in the new site.
don't know what's gotten into me. Some creepy form of mid-life crisis I suppose, but yes. I can confirm the rumors are true:
I bought a Mac.
As I rationalized it to an associate, this doesn't mean for me what it may for others:
"When people say they decided to get a Mac, it often means they replaced their PC with a Macintosh. Fat chance. I've still got my main workstation (Win7), my test box (Vista), my general purpose server (Win Server 2008), my Tablet PC (Vista), my living room Media Center (Win7), my MAME-based arcade machine in the game room (XP), plus a slew of Windows laptops, net-books, and desktops used by my wife and kids or sitting in the garage waiting for the right project to come along.
"I haven't exactly thrown Microsoft away and moved over to the dark side."
Yes, cognitive dissonance and I are good friends.
So what events led to me committing the eighth deadly sin?
It was actually a progression. My wife gave me an iPhone for my birthday (much as Eve tempted Adam with an Apple, I believe) and I had the opportunity to experience firsthand the tactile interface and infrastructure Apple has put together for developers to sell their work. Shortly after, I picked up an iPad. Same touch interface, same application infrastructure, much bigger screen. I just couldn't help myself.
It took all of a minute for the developer in me to raise his head and begin eyeing it as a fresh, new platform with a prebuilt, thriving distribution network. Development for the iPad seems like something too big not to look into. And, of course, you can only do that on a Mac (or a Hackintosh, but I looked into that and it seemed less trouble to just buy the Mac mini).
So yes: I’m a life-long Windows junkie and a C# developer; I’m married to the Microsoft technology stack, yet have an iPhone, an iPad, and a Macintosh.
And it makes me feel kinda dirty.
You may say I'm a Judas, but I'm not the only one.
One thing is for certain: I'm not alone. Since the release of the iPhone, internet forums and newsgroups have be inundated by developers asking if there's a way to write apps for these devices from a Windows machine and while I've seen a little headway in this department with so-called "jail broken" devices, and promises of bigger things to come, for now Apple has taken steps to ensure that nearly all iPhone/iPad development is restricted to those machines running OSX. Because of this, I'm confident that right now there are quite a few Windows developers in the same boat I am, looking to find their way around the development offerings of Apple and hoping to realize their iOS solutions.
In Lennon's words: "Imagine all the people".
If recording my experiences along the way can help save trouble for others... well, that's one of the things that this blog is about.
Despite my affinity for Windows, I should confess up front that I haven't started this journey as a complete n00b to non-Microsoft offerings. I spent a decade or so paying hobbyist homage to Linux, so Apple's shift to Posix compliancy with OSX translates into a measure of fluency for me. Augmenting this is the mental osmosis accompanying a few years sharing my study with my wife's "Macintoy". So I'm not really jumping into waters uncharted. As such, when I record my explorations, I might paint the Apple landscape less critically than some fellow Windows fan-boys feel I ought. To those peers of mine, please accept my sincere apologies. That said, I've spent the last couple of decades with a decided aversion to Macs in general and Apple specifically. This too may influence my opinions against the Mac unfairly, so to the Apple aficionados out there, ditto.
In the next installment of this series, before I really delve into the act of developing, I'll cover the set up of my shiny new Apple system, how I integrated it into my workspace, and how I configured it to work satisfactorily under the standard of my Windows biased tastes.