my friend has one and i am envious. what advantages to programming does a mac do? i think though i can survive with linux or kahel os. hope kahel works fine with my plans to buy a dell or ibm or maybe asus laptop.
I'm a long-time developer and Mac user, and have convinced many other people to make the switch—to the point that our entire company (software development shop) uses exclusively Macs. Yes, Macs are expensive and that may not sound very financially reasonable for a startup—but here're the main reasons why, at least today, I wouldn't consider any other platform for development.
1. Unix. That's right, OS X is a fully POSIX 1003.1 compliant operating system. Which, for one, means not having to switch 'mindsets' when developing on the local machine and deploying to staging/production servers that, well these days usually means some other Unix or Linux OS. This also leads to directly to #2 and #3...
2. bash and other OS tools.
3. Thousands of other open-source applications and tools. MySQL, PostgreSQL all run 'native' (again, which means having the same administration and configuration that you would do on a production RDBMS running on, say, Solaris). Thousands of other useful ports are readily available via MacPorts. If it's not on MacPorts, as long as it follows the
Now, obviously anyone familiar with or using Linux will say "Well, all the above applies to Linux, too." Which brings me to...
4. A mature, polished UI and freebies. Most applications you can download off the 'Net come in .DMG containers, which are just disk images. Once mounted, installing them is as easy as copying the app to your
5. Adobe, Microsoft, etc. CS 5 runs on OS X. There's Office 2008 for OS X. There's a ton of major commercial software that runs on OS X, for when you need them. If it's a Windows-only app well, then you have...
6. Virtualization & Bootcamp. Of course, there's lots of apps that are (sadly) still Windows only. But don't let that stop you. You can run DB2, Lotus Notes, Lotus Domino Server and other Windows-only apps easily in a VM using virtualization software (VirtualBox is Free!). When you need the performance or exclusive access to hardware, like when you want to play Crysis, you can boot newer Intel Macs directly into Windows. If you're just a casual gamer, then there's always...
7. Aspyr & Steam. Yes, Steam is coming to Linux. But it's out on OS X now, which means we can play WoW, Half Life, Portal, and a ton of other games in OS X natively. Don't let anyone say, "But Macs don't have any games." Yes, I know this is supposed to be developer focused—but hey, even developers need to unwind from time to time to get those creative juices flowing, right?
One final note: sure, you can get almost all the above by dual-booting Windows and Linux, or also by running a Windows guest under a Linux host. But does your OS also come from the same hardware vendor who tests all their releases against all their machines?
That is, if you install the latest release of Ubuntu or Fedora are you 100% guaranteed that it'll continue to run on your current net book with absolutely no hardware or driver conflicts? (Disclaimer: Apple has had some OS/hardware issues in the past, but you never feel like it's "hit & miss" when you upgrade to the latest OS X release.)
And yes—as of today there are no successful, widespread viruses or trojans for OS X. Which means a) not having to buy or suffer the performance hit from an anti-virus, and b) not having to worry about a virus trashing my drive or turning my machine into a zombie.
In the end—yes, a Mac will cost more than a generic Intel laptop. But, as a professional developer—how would you rather spend your time? Wrangling with rebuilding the kernel to support your wireless networking card, or having to install and configure Cygwin properly just so you can compile and run some obscure, but absolutely useful Unix program?
How much is a day or two of your time (which is around the amount of productive time lost dealing with such issues) worth? Is it worth less than the the price difference between a MacBook and, say, an HP with equal specs (less than $250 last I checked).
Personally, I'd rather get the hardware and software out of the way so I can do what it is I like to do best, and what I'm being paid to do. This is why I and my colleagues all use Macs.
In the end, it's all about ROI. Macs may be more reliable than PCs, but they are still computers: sometimes they break down and they become obsolete in 3 - 5 years.
Ask yourself: Will getting a Mac provide me with productivity benefits that would more than make up for the extra cost? Or will getting a cheaper (but still decent) PC be perfectly fine for the stuff I'm planning to do in the next few years? (Or am I just getting the Mac for the bling factor? :P)
answered Jun 18 '10 at 23:23
I don't buy the Mac is expensive argument. If you look at the laptops, and you buy early in the product cycle, new Mac models are almost always price-competitive compared to similarly configured PC laptops.
Consider these numbers: New MacBookPro 13.3: PHP 62k (http://store.apple.com/ph) New Lenovo U450P: PHP 43k (http://www.pcx.com.ph/index.php/others/laptops/lenovo-u450p.html) - but this one only has 2GB RAM - let's assume it's PHP 46k after the RAM upgrade
Sell the Mac after three years for, say, PHP 25k. That's a pretty good price. If you take good care of your laptop and drive a hard bargain, you can sell it for higher, but let's say you're lazy so you just sell it for PHP 25k. That puts your cost of ownership over 3 years at 62k-25k = 37k, or about 1027 per month.
Sell the Lenovo after three years for PHP 15k. That puts your cost of ownership over 3 years at 46k - 15k = 28k, or about 861 per month.
Over 3 years, the difference in the cost of ownership of a Mac and a Lenovo is just PHP 166 per month. That's just slightly a bit higher than one fancy Starbucks drink. If I skip 1-2 Starbucks trips a month, I can afford to upgrade my Lenovo to a MacBook Pro. Heck, I'll skip my Starbucks anytime over the headache costs of setting up a Hackintosh on a cheap Lenovo.
We did not even factor in:
So, to answer your question, why buy a Mac?
For all the these things, I'd happily skip 1-2 Starbucks trips a month.
Before buying a Mac, why not try out the OS X experience on VirtualBox or VMWare?
I do own a Mac (a Modbook), but the machine actually ended up running Windows 7 and I am familiarizing myself with OS X via VirtualBox under Windows 7 on the desktop. Why, you ask? Because I cannot give up all the power user stuff I'm used to under Windows, so learning to work under OS X (doing Cocoa programming tutorials) at my own pace in just a window is perfect.
At this stage, the VirtualBox experience works so well for developing iOS programs I am frankly not sure why anyone would need real Mac hardware, lol!
Power users under Windows are going to find the OS X experience very painful for a while because you will have to relearn a LOT of new shortcut keys. I really don't find that OS X offers anything that compelling over Windows 7 per se. The Unix environment is nice, but you can get that with Linux. The Aqua environment is a bit more polished and visually appealing, but not by much. It's just more my wish to explore Cocoa programming for the iPad (the future computing device of the masses, imo)/iPhone that led me to trying OS X.
However, Xcode itself I have grown a liking to, and is in fact the first IDE I actually don't hate using (and I have tried them all since the Borland C++ days!).
Now as for "envious", I believe you are slavering over the beautiful Mac casing... in that case you can't really justify getting a Mac on practical reasons, but if aesthetic reasons are fine for you, then why not go for it? Power users just be aware of the transition pains.
If you have no plans of programming for the iphone/ipad/itouch I've always found that macs were paying more for the design and the polish, there is nothing wrong with that, I just find that for certain types of people that's paying too much.
answered Oct 21 '10 at 14:34