I'm trying to understand why so much Rails development happens on Macs? Or is this just a myth? Is there any hard evidence to back this up?
This is minor, but Leopard comes with Rails installed. I'm not sure if I had to install the developer tools to get that or not.
That may contribute, but I doubt it has much effect.
In general, Mac OS X and Linux support for most open source software is significantly better. Both platforms are much more friendly to developing without proprietary software like Visual Studio (well, actually, you probably need Apple's developer tools to do any real compiling, but those are just a modified version of GCC).
Having Linux compatibility is good because most Rails servers run some type of Linux. As to why people don't use Linux as much for development... well, the Mac interface is nicer.
Personally I don't think there is any real advantage that a Mac (or specifically developing in OSX) would provide for Rails development.
If I were to be more mean-spirited, I would say that people who use Macs are the kind that like to jump on the "new and shiny" bandwagon and Rails is definitely one of the more popular and "cool" things out there.
Note: I don't really believe that, but people love to hate on Mac users.
I think it's because many Ruby/Rails developers love working with the Textmate editor, which is only available for Macs. Just about every Rails tutorial video I've seen, the coder is using TextMate.
The Rails Core team all use Macs and DHH has advocated Mac usage in the past. Many tutorials or instructions are written assuming that the reader is using a Mac or at least a UNIX-like OS.
One of the biggest in my opinion is that OSX (and any desktop linux) supports SSH out of the box. Using Putty is a huge PITA and utilities like Capistrano do not get along well with Windows. Plus Macs rarely crash.
I agree that the primary reason to use a Mac for Rails development is TextMate. TextMate offers you numerous shortcuts for common Rails code, e.g. typing bf + tab to get a before_filter. Also, much of the work you do in Mac Terminal is easily translated to the Linux command line, which will definitely be an asset as you expand your architecture credentials. In addition, Rails utilizes many open-source technologies and Macs help expedite the install process by making compiling and building these applications fairly straightforward.
It's probably because of textmate, but there's a textmate for windows too (google for e-texteditor).
Although I'm a mac and linux enthusiast, I think that a different OS shouldn't stop you from programming whatever language/framework. Use whatever you like and feel confortable. That is the biggest advantage you can have.
Macs give you confidence that when things go wrong developing a rails application that it is your fault because almost all the library developers are using them so they test using them and windows testing comes second if at all.
On a windows machine there are always two possibilities - you screwed up or there is something broken for windows. It is a PITA to deal with library dependencies where one of the chain is broken for windows and you don't find until after installing other things and screwing up your whole setup.
Eliminating the second possibility every time is worth spending some money on because it will save you time.
For the most part rails applications are developed on OSX and deployed on to linux. So those are the two platforms where all the libraries tend to just work. If you go off of that to, what for rails are, non-standard OS's like Solaris or Windows, things might not work as expected.
I would say there are good arguments for choosing a Mac over Windows in terms of ruby on rails development. But there is no real advantage of using a OSX vs Linux. Apple hardware works well, it's OS works well, it's enough like unix that things mostly work. Installing libraries work, you've got the commandline always, etc...
Lots of people point to textmate, but the reality is among many in the rails cabal the move has been to abandoning textmate and moving to either emacs or vim.
Rails development on windows in a painful hackish task. And i've never even heard of somebody attempting to deploy production rails using windows. It's not that windows couldn't be made to be a first class ruby / rails OS, it's just that there are not enough developers using the platform to keep pace.
It could be that the Mac-based Rails developers are more visible on the web than windows-based ones, but I do believe that the Mac has an unusually large presence in the Rails world. (And I like that :) )
Why? I'd say that Textmate is certainly a factor, but likely not the biggest.
I use both windows and mac everyday. In windows there's always something bugging me... something crashed, or there's an update to the anti-virus, or some other notice popping up in the tray. The OS is always needing my attention, needing me to do something.
On the mac that doesn't happen. I just do what I want to do, without having to do stuff for the OS. I use the computer to work, rather than having to work for the OS. The result is that my productivity is consistently higher on the mac.
Take that, give it all the power of a UNIX/Linux system, and interoperability with UNIX/Linux, and you get a pretty darn great platform for programming.
If you have an editor that people like as much as TextMate then there will be no major reason really that OS X will be better than any other *NIX, but the main reason I love my Mac is like most other Mac Developers. The interface is nice, it's a very stable platform to work on, ie I spend more time working rather than getting it to work, and also TextMate. For all development that I have done there has been no better editor to use that it, and when you feel comfortable with your tools then you will be at your most productive. I think that this is the reason why people love to develop on the Mac.