Ok... this seems pretty much out of place but I dont suppose I can get a better answer anywhere else, so here it goes.
I'm a student in India and in a dilemma about buying a Mac or buying a windows machine (dual booting with Ubuntu 11.04 ). At about 3/4th the price of a Mac I can purchase a more powerful windows laptop and boot up Ubuntu ( and thus avoid windows altogether ).
I need a workstation for Ruby on Rails/ Node development. Since my parents will be the one paying, I want to be sure if Mac is worth it. I've never worked on a Mac before but since I've read that most startups that are hiring offer Mac to developers, I'm guessing owning a Mac would really make development more enjoyable. Would love to hear your guys' thoughts on this.
There is no easy way to answer this question. You can definitely get a more powerful PC for the price. With the Mac, you are buying some brand, some better construction, and a lot of better customer service. You are also buying OS X, which may or may not be attractive.
I used Linux for many years as a primary development machine, and it was great. Ubuntu is doing a good job solving the "there is no good desktop for Linux" that was pretty true five years ago.
That said, I prefer my Mac because I get almost the same ability to play at the command line (I spend most of my day in Emacs right now, including running my shells there), but I also get a refined experience when I'm interacting with applications outside of development (e.g. Garage Band, Pages, Keynote, etc).
In the end, I didn't switch for development, I switched for all the time I use my laptop when I'm not developing. For me, it was worth it, but YMMV.
If you use Emacs all day on a Mac, what do you use for the Meta key? I find I'm not really happy no matter what I do. If I make Option into Meta, I have to bend my thumb way under my palm to hit Meta. If I make Command into Meta, then I lose access to lots of global Mac UI shortcuts. I guess I could experiment with swapping Option and Command and then using Option as Meta, although I'll have to retrain a lot of muscle memory.
And then there's the fact that one Emacs window in a terminal is still not as productive as five Emacs windows under X11, and X11.app still sucks, and the various native Mac Emacs ports still don't feel right to me.
Overall I find using Emacs on Linux X11 still provides the best Emacs experience. This alone will probably keep me on Linux as my primary work environment for the foreseeable future.
* Meta is mapped to the Command key (and the option key).
* Control is mapped to control.
* I suppose I should try to remap the Fn key to be Control to really make it work right instead of the weird curve that currently has to happen.
When I really am interested in getting typing done I hook up a MS Natural 4K. It's a much more pleasant experience. My keybindings are customized for maximum ease there (and believe me, my hands/wrists do not hurt after a long-term coding session there). Laptops are fine for messing around for a while, but after a period of typing my hands hurt.
Unless you intend to do development for iOS, buy a PC and dual boot into Ubuntu. Even if you really need Photoshop of Office, you can run them on the Windows side. You'll feel dirty, but you'll be fine.
With a Linux machine, you'll have an environment closer to whatever server your application will run (nobody deploys on OSX and nobody sane deploys on Windows), which is a bonus. Plus, package management will save you lots of time. If you want to partition your machine on several environments, you can use Linux containers to do that and have many little Linux "servers" running without interfering with your desktop and taking up very little resources (much less than full blown VMs would).
Disclaimer: I am writing this on a Mac. I love Macs, but I work on Linux.
Having a linux desktop and mac laptop, I prefer my linux box, and probably will not get a mac again in the future. I do Java and Ruby dev. Apple basically won't commit to java in the future. Apple updates do cost money ( not incremental updates) as well as most of their software. Now I'm not saying there are not free ones, but I want utility not eyecandy in most aspects ( and I understand people will probably not agree with that point) and the repository pretty much I can find what I want. In order to use a lot of the tools I want, I need to use macports or fink. Paths to hardware upgrades are going to be some what easier on hardware thats not mac, probably along with price of hardware. I use mainly cloud/web utilities for things like google apps, calendar, and email.. I don't care for a lot of the native mac apps, I really can't think of a single mac app that I use that isn't available on ubuntu.. but the good examples are things like iMovie and garage band. I really don't understand the point of development being more enjoyable, you're going to be living in a text editor and hopefully you understand commands to run things without a gui ( example would be code repository ). Also part idealism as well for me, I like be a supporter and advocate, and when if I have a chance to educate people and be interested in alternatives, I'm all for it.
As others have stated I think its what you do outside of development. Also you can look at the osx86 project if you're adventurous.
Get a Macbook Pro, dual install Ubuntu via Bootcamp, then run Windows in a VM in either OS (fine for testing, at least). That lets you learn OSX and build iPhone apps while still being able to use Linux as your primary OS if you desire.
I've been researching this setup the past few weeks, and it appears the only issue was that the linux gfx drivers for the HD3000 gpu (embedded in the i5/i7 Macbook Pro Sandy Bridge cpu's) were still alpha/beta quality, but apparently that's fixed in Ubuntu 11.04.
I'm still see-sawing though. My other option is to get a tricked out custom Sager with the latest Nvidia GTX 485 gpu and use it to start farming bitcoins (and perhaps learning CUDA). The embedded HD3000 gpu in Intel i5/i7 gets very good performance for an on-chip gpu (google for it), but is not in the same league as the 485 GTX.
I own a Mac(Book Pro), and I dual boot Mac OSX and Ubuntu 11.04 on it.
I spend 90% of my time in Ubuntu (mainly developing).
I honestly think that if you're tight on cash and you just need a machine for development, get as much CPU-cycles and stability for your money as you can, and run a linux distro.
Most all laptops are equal for development, regarding processing speed at least. As long as the CPU and video card are not budget types, and there is enough RAM.
What makes a big difference to me is the display quality and the battery. Apple tends to have very good batteries. That's why I personally would buy an used Unibody Macbook or Macbook Pro, one of the recent types with the long-life high-capacity batteries.
I do mainly Linux development work, on Ubuntu, using an older Macbook Pro, and everything just works great and is super smooth to use - in fact this is the best Linux machine I have used!
I use a macbook pro and it truly is a better laptop than anything else, but if you're looking at a desktop then the argument becomes a lot murkier if you're not doing iOS development. If cost is an issue, I'd build a windows desktop from parts that are OSx86 (Hackintosh) compliant so if you need the osx experience you can get it. That gives you the best of most worlds' I'd say without having to pay the mac premium - though if you're getting a laptop, then the mac premium is almost certainly worth it IMNSHO.
It's not that it's not worth it, it's more if he's constrained by price he could get a perfectly functional self-built pc for a fraction of the price of a mac.
This is not the right place for your question. Anyway, you shouldn't buy a Mac. Ubuntu with gvim can be the most enjoyable environment for rails/node development.
Your question is fine. If a thread raises a question in your mind, then that can be the entirely appropriate place to ask your question. Keep asking questions.
I'm a student in India and in a dilemma about buying a Mac or buying a windows machine (dual booting with Ubuntu 11.04 ). At about 3/4th the price of a Mac I can purchase a more powerful windows laptop and boot up Ubuntu ( and thus avoid windows altogether ).
I need a workstation for Ruby on Rails/ Node development. Since my parents will be the one paying, I want to be sure if Mac is worth it. I've never worked on a Mac before but since I've read that most startups that are hiring offer Mac to developers, I'm guessing owning a Mac would really make development more enjoyable. Would love to hear your guys' thoughts on this.
Thanks a lot.