Server Codex


Software, Hardware, Tutorials, News and Reviews

Rails, Platforms, and Tools

David Heinemeier Hansson (DHH), creator and one of the core developers of Ruby on Rails, recently posted an announcement that version 1.5 of the TextMate editor has been released. In closing, he says: “Oh, and if you haven’t switched yet, you can swing by Apple and pickup a Mac on the way to TextMate. It’s not now, nor ever, going Windows.” In the comments following the article, hilarity ensues.

Be they trolls or simply misguided folk, the FUD stops here. For those who like reading rants, I invite you to continue.

(Since all operating systems have their strengths and weaknesses, I use Mac OS X, Linux/BSD, and Windows on a daily basis. I say this to deflect inane “fanboy” accusations, the utter idiocy of which will be addressed below.)

The thread started out peacefully enough. Various people discussed their text editing experiences with Rails in a friendly manner, with TextMate, RadRails, vim, emacs, and jEdit proffered as favorites. It wasn’t until around comment #18 that the first FUD volley was fired.

[I] won’t be shelling out thousands of dollars for a Mac…

Ugh. What nonsense. The Mac Mini can be had for $500. But apparently this person wants a laptop, which can only be had for “thousands of dollars” from Apple, right? Nice try, Joe. Try $800 after rebate for a very capable iBook, which is currently being used by hundreds of developers to code advanced web applications. (These prices, current as of January 12, 2006, have been consistent for months and do not reflect any special sale pricing.)

Shortly thereafter, the real whiners started to join the fray, with claims that the Rails community is “starting to push out Windows users.” How? Because DHH recommends using Mac OS X instead of Windows for Rails development? The conclusion that DHH’s recommendation constitutes “pushing out” Windows users is patently absurd, as is the standard empty threat that follows: If you keep talking about how much you like Mac OS X, we Windows people are going to defect to other development frameworks.

Oh no! Please don’t take your ball and go home. Please?

Let’s look at this a bit more closely. The alleged Mac bias on the part of the Rails development team would mean that they offer an official Mac installer but no Windows installer, right? Oh, they don’t? Not for any platform? Why not? Because they have better things to do with their time. Like what, you ask? Oh, I don’t know… Improving Rails itself, perhaps? Working on their own businesses, from which the Rails framework is eventually extracted and improved upon?

When it comes to installers and other peripheral tools, the Rails community steps up to the plate so that the core Rails developers can focus on Rails. This is how most open source development operates, which it appears is not widely understood by those who have spent most of their time in the closed-source Windows world. Easy installer for the Mac? Done. Easy installer for Windows? Done. Installers are just an example — the same applies for deployment, database support, and many other areas. Nobody has yet produced evidence supporting the alleged Mac-bias effect on Rails development, probably because there is no significant effect to speak of.

Then we have this comedic argument: “It does seem contradictory that while Ruby and Rails are [free and open source], they’re showing so much preference for an editor and OS that aren’t.” Actually, it’s not contradictory at all. It’s called the right tool for the right job. If the core developers believed that there were a free, open-source operating system and editor that were as good or better than the Mac-and-TextMate combination, they would probably recommend them, don’t you think? And given that the author of the quote above uses Windows (not free) and yet is ostensibly interested in developing on Rails (free), the “contradictory” claim is more than a little hypocritical. Why isn’t he using Active Server Pages instead of Rails?

What’s next? Yes! Like any good heated thread, the poster of comment #47 has done us the favor of proving the validity of Godwin’s Law. Wow. Talk about bitterness. I understand that some people are upset about having to use Windows on a day-to-day basis, but crikey — go do some yoga or take an afternoon hike. Just because you are frustrated with shoddy software doesn’t mean you are allowed to completely distort reality. Mac users in this thread are “yelling and screaming and berating those who still use Windows machines?” Really? Where? Which of the Internets are you on? Because the one I am on does not include any such behavior in that thread. Man… that dude needs some Zoloft.

But I digress.

The real issue here is whether, as Elise claims in rant #56, the development team should (a) stop recommending tools such as Mac OS X and TextMate and (b) start paying more attention to cross-platform issues. To the first, I say no. Emphatically. If you don’t like the fact that the core developers may recommend certain tools from time to time, by all means please go use some other framework. While your absence will no doubt be a monumental blow to the Rails community, somehow we will endeavor to endure and press on. Any positive contributions to the Rails community you might have made will be sorely missed. The whining? Not so much.

As far as paying more attention to cross-platform issues… Um, what issues? Rails runs on any platform that Ruby runs on. The task of making life easier for Windows users should not be among the core developers’ responsibilities, as doing so would detract from working on Rails itself. Others in the community have stepped up and helped out, which is the way things should be.

Finally, using epithets such as “fanboy,” “zealots,” and the like — while highly amusing — really makes one look childish, bitter, and whiny. If you aren’t passionate about your preferred OS / editor choice, that’s your prerogative. People are allowed, however, to be passionate about the tools they use. If this offends you, then there is an easy way to prevent further offense: simply take steps to reduce or eliminate your exposure to the offending comments.

That’s what I would do, anyway. I believe that grown adults have two options when presented with a problem: solve it (e.g., make positive contributions, build your own tool, etc.) or avoid it (e.g., use another tool). Whining should not be among the options.

Leave a Comment