|
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. thanks for your answer. i guess it depends on the person. i don't have the cash, sadly. If money is a problem then you can also consider getting a used Mac Mini, just make sure you don't get the PowerPC version. If you look hard enough you can probably get deals around the 15-20k range. 1
I'm somewhat sold. So it's like Linux minus the kernel rebuilding + CS 5 + Steam. Now if only they can make 'em cheaper. macmini is for those who can't afford the expensiveness. pretty decent hardware and software anyways. then there's the iMac which is 20-30k more expensive than an HP counterpart of monitor and desktop, but i guess as I mentioned, that is for the branding and for the software ecosystem you're buying into.
You could also run a Linux guest under Windows host (Cygwin be damned), much better for driver support. Anyone who has actually used Windows since XP would know that Windows is at least as stable as (and way more versatile than) Linux is for desktop usage. (If you like to experiment with beta drivers, you deserve the blue screen.) For those who want to save money, Windows + Virtualbox Linux gives you pretty much everything except the somewhat nicer Aqua UI and snob factor. ;-) +1 For MacPorts. :) 1
While Windows + Linux under Virtualbox can give you most of what you need (under OS X + Windows under VirtualBox), I still wouldn't consider them equal, and I would still pay the 'Apple tax' for OS X on an Intel Mac. First off, to dual-boot from Windows to Linux gives you all the same potential for driver hell. Bootcamp from OS X to Windows on any Intel Mac is pretty much headache free. Secondly, using Windows as a host OS means you're exposed to all the trojans and viruses out there, which means needing an anti-virus which means performance hit. Not so the other way around. Wow, a 6 month old discussion bought back from the grave :D Might as well clarify some things... Linux = driver hell? Have you tried Ubuntu 10.10 yet? I've never had serious driver problems for years in Ubuntu. Heck, if I want driver issues, I'd retry turning my "compatible" laptop into a Hackintosh. Windows = trojans and viruses, performance hit from AV? I'm surprised no one has mentioned the (surprisingly) awesome Microsoft Security Essentials in this thread, not to mention that modern security threats are OS independent. Firesheep, anyone? So, Bryan. Would you run a 'naked' Vista with only MSE? And, yes, I've tried Ubuntu, Fedora/CentOS, and AFAIK people are still running into issues with sound, video or wireless cards not working properly because of this or that obscure issue. When everything works well, that's great. It's when X11 crashes mysteriously or H264 decoding doesn't work because of poorly-written ATI drivers and you have to spend 2 days finding a fix (or, ditching ATI for nVidia) that I'm talking about... The point is, well, OS X (on a Mac, not 'hackintosh') is headache free in both those departments. Sure, why not? Vista may not be as good as Windows 7, but at least it's a lot less vulnerable than XP. I'd be comfortable with MSE + Windows Firewall + UAC even without SP2 and security patches. As for your driver issues, well, that's the thing with anecdotal evidence. AFAIK people are still running into obscure software and driver issues on OS X too. It's the support level I think you get on a Mac. Where else can you call a techsupport in the middle of the night and ask them all about your mac problems? Although they may just recommend you buy the latest mac thing, just kidding! :) I never got super problems w/ Ubuntu. There was a time in before 8.04 days that I had boot up problems, and had to go a terminal to downgrade kernel. I've upgraded again and again, and there are no problems anymore. Wifi? There's the excellent Wicd network manager. In Mac, upgrading means money. Ubuntu? Free. 3d desktops and compiz? just upgrade your GPU.
Hehe... first off, the need to dual-boot I consider the headache itself! I am currently running Snow Leopard under VMWare (awesome 1920x1080 resolution) and Linux on Virtualbox with Windows 7 as host OS. You get your icing, cake, cherry and eat it all up. Maybe (just) one day, OS X will end up being the host OS, hefty investment in Apple hardware notwithstanding, since Apple's EVIL, OPPRESSIVE LICENSE means that VMWare cannot make Unity work for OS X windows.
BAH, OS X security is an illusion. What scares me as a recent OS X (semi) convert is that Apple's OS is far less secure than Windows 7 and only reason you don't get as many viruses on it is because it is a far less juicy target than Windows machines. Evil hackers don't waste time targeting the niche product, but as OS X becomes more pouplar... Exploits on OS X and related software are the easiest to do in case you haven't read the many such stories on the 'Net lately.
showing 5 of 13
show all
|
|
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) 3
Purely in terms of ROI, then, you can also consider resale value. In that case, in my experience 1-2 year old Macs consistently resell for higher than non-Apple hardware. Sometimes, Macs even up to 3-5 years old sell for decent prices (compared to a generic, 3-5 year old PC which is almost a giveaway). And, yes—consider 3-5 years of no viruses, not having to reformat & reinstall the OS, or even just not having to reboot after installing a new piece of software—how much do you think that is worth? 2
On the flip side of the high resale value, that also means you can consistently get used PCs with comparable specs to the previous gen Macs for a far cheaper price. I don't buy the whole virus-reformat-BSOD FUD. Sure that's applicable to casual users (which are still equally vulnerable to social engineering), but for developers? Any decent developer would know how to properly take care of their computer. In short, it's negligible. What matters more is that you choose a platform that would suit your purpose. Sometimes a Mac is a great investment, other times it's a superfluous expense. for those who don't understand BSOD and FUD, it means BLACK SCREEN OF DEATH and Fear, Uncertainty and Doubt. Because I'm not against the mac, here are more things I feel makes the mac a worthy expense. -if I miss ubuntu, I can virtual box the ubuntu system. -Performance - Mac uses the very latest hardware - I have no worries about upgrading for at least 3 years because I know the hardware I'm running is pretty current. As for the price - there are two factors at work here 1) Mac DESIGNS the whole thing. we're paying for the pleasing design. 2) and the brand and os-ecosystem built around it. 2
When I was on Windows, I made it a point to reformat once every 12-18 months just to get rid of all the plaque that would inevitably build up as a developer installing and trying out all sorts of new stuff. On the Mac, I've gone without having to reformat or reinstall for years, unless I really wanted to. I've also used Macs without having to reboot for weeks. Yes, Linux can do that, but I've never had to worry about a sound card issue or wifi card issue, or having to recompile the kernel or search for obscure drivers. I just fire up Software Update periodically and pretty much done. btw the b in bsod can be black or blue. lolz. linux has black if you don't configure the xorg.conf thing properly. :) i'm not trying to bash mac or windows or ubuntu. it is really up to everyone how they customize their os the way (s)he wants to get the most work done. what i like about the mac is it gives me better joy to program in one because i'd look cooler and everything just works. as a php developer, to me any OS will do as long as I can (s)ftp/scp, has a text editor. and i can install apacheserver. On windows i also use portableapps to keep registry free from bloat.
showing 5 of 6
show all
|
|
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. Apples (no pun intended) to oranges :p The U450P is pathetically weak for development no thanks to its SU7300 procie; to compete with the 13.3" MBP's Intel P8600 procie, you'll go with a Lenovo G450 T4500... which sells for a low low price of 25K w/o OS. (Hey, Ubuntu is free!) With that 35K difference, it's kinda hard to convince a starving developer not to get that cheap Lenovo and spend a weekend trying to build a Hackintosh (Peace tayo Rad :D) 1
Apples to oranges indeed. I was actually giving the PC a bone by not specifically looking for a PC laptop that weights 2kg and has a 2.4GHz C2D CPU. If you add those constraints, you'd be hard-pressed to find a PC laptop that costs under 50k. For someone who has only 25k, Macs are indeed expensive. But for someone who as 60k, Macs are price-competitive to comparable PC laptops. My point is that for a comparison to be fair, you have to weigh in all the costs (low resale value of PC) and benfits (iOS development opportunity). Away tayo Bryan, I'm evil Rad >:D Compare a Macbook to an Acer rather than a Lenovo, and then you'll realize just how much cheaper a PC can be. |
|
Before buying a Mac, why not try out the OS X experience on VirtualBox or VMWare? http://www.taranfx.com/install-snow-leopard-virtualbox http://www.taranfx.com/how-to-install-snow-leopard-vmware-workstation-windows 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. I run Linux under VirtualBox under Windows and that's frankly all the Linux I need. The Linux desktop environment and driver support is considerably lacking compared to Windows 7, but you sometimes do need the command-line oriented goodies of Linux and thus this setup is just perfect. File sharing between the VBox instance and the host WIndows OS via Samba works well. |
|
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. 1
Wow apple deprecates java. http://www.infoq.com/news/2010/10/apple-deprecates-java 1
Yeah, bummer. I guess we'll just have to wait for Oracle to release a JDK for OS X, or turn to OpenJDK for our Java fix. Like we can turn to MacPorts for our Ruby, Python, or Erlang fix... |
okay, now will try to get a used but working slightly cheap one.