The Rails IDE and .NET Developers (aka Where is the Build icon?)

If you’re like me and you are a .NET developer crossing the tracks, one of the first questions you might ask is “What’s a good setup? Do I need to throw away Windows and use Linux or OS X? Do I need to throw away Visual Studio that I’ve grown to love to hate? How will I live without Intellisense?”.

Well this post is the skinny on those questions.

First off, let’s attack it from the top down. At the very top is your operating system. The OS you use will limit your toolset. Which do you need?

That’s an easy one because, well, Rails can run on Windows XP, Linux, and OS X. I’m going to focus primarily on Windows XP and OS X because that’s what I have experience with. Personally I bought a 20 inch iMac and use OS X for my RoR development and Parallels / Boot camp for .NET development and gaming.

Windows XP versus OS X

Just kidding, I’m not even going there. What I will say is that most screencasts / books you’ll find on RoR will be using OS X. Why? I don’t know. I think it’s just a mentality / cultural thing. I’ve used both XP and OS X and the only difference is the toolsets you can use. So if it doesn’t really matter, OS wise, whether you use XP or OS X, then we can get down to toolsets.

Which IDE do I use?

None. That’s which one you use. Okay, perhaps that is a little harsh. The fact is RoR development isn’t like .NET development. Oh you can do .NET development in notepad or some other text editor, but doing so will invoke irreversible insanity. You really *need* to use an IDE with .NET. And you should because Visual Studio is a decent IDE when it comes to WinForm development and what’s more, you can get slimmed down versions of VS for free now.

However, Visual Studio won’t help you with RoR development. There are some IDEs out there though – such as RadRails that will help you to some degree, but nothing will compare to what you’re used to in VS. There is a commercial product out there that integrates with VS called SapphireSteel and it is not bad. It’s not very good either right now; it has some maturing to do. It certainly has promise but right now it is expensive (there is a free, watered down version) and to me, just gets in the way.

As a matter of fact, I’ve found using IDEs like RadRails hinders my ability to really learn what is going on in the background with Rails. Perhaps when I get a little better I’ll revisit RadRails and see how useful it is for me. I think in the beginning it is important to see how you generate the models and controllers (not that it’s hard, but sometimes my novice brain forgets which to do first, or what the syntax is if I want to create a scaffold skeleton). So really, the console (or terminal) is your friend in the beginning. The idea isn’t to hide everything from the programmer, but to let the programmer have the control to gain an understanding of the Rails framework.

I’ll be honest – it is hard at first. We .NET folks live in Visual Studio. We come to depend on it, love it, hate it, curse it, applaud it. You have to believe me though that once you get used to not using that big bloated IDE, you will feel liberated.

So if we aren’t going to use Visual Studio, what do we write our code in? For Windows, I recommend InType as it is very similar to TextMate for OS X. You might be thinking “with all the hundreds of text editors out there, why on earth would I recommend InType being that it’s still only alpha?”. Pay attention! I’ve answered that one already – it’s very similar to TextMate. TextMate is the Ferrari of text editors and it is, hands down, the best non-IDE editor out there for Ruby coding. It doesn’t get in your way but stands at attention when you need a helping hand.

Pimp My Web Server

Forget about IIS as your web server, okay? Trash it and be happy about it. I’ve always hated IIS. There are others out there that work nicely (or even specifically) with Rails. Depending on the version of Rails you use, you will be using Mongrel or WEBrick for development. There are no application directories to fool with – I like that. Oh and you could also use Apache…you know, that ultra stable, scalable web server software those open source geeks use. One thing I was worried about in the beginning though is how the hell do I set up these “other” web server apps. I’ve tinkered with Apache in Linux and you have to go in and play around with all these blasted config settings and whatnot. I’m happy to report that for development, there are some really nice folks out there that have made this ultra, ultra easy.

For Windows there is InstantRails. This little beauty is a self contained box of goodness giving you MySQL, Apache, and Rails all in one package. All you have to do is drop it in a directory and boom, you’re ready to Rail.

If you want to use OS X you aren’t left out. There’s a very similar kind of sexy software called Locomotive. Like InstantRails you just drop it in a directory and fire it up! Beautiful.

So you have your editor for coding, you have a database, you have a web server. What’s missing? Oh, your application. That’s right pal, you have no more excuses for not heading right on over to RubyOnRails.org and getting started!

Hey, are you still here? Get moving!

Explore posts in the same categories: Tressel

Comment: