I’m pretty sure that the majority of web developers, and web designers, begin their journey on either Notepad++ or simple Notepad – although many programming tutorials now provide integrated, interactive web editors – just typing away the code that a tutor is presenting them with.
The majority of Ruby IDE’s are actually not strictly limited to Ruby alone, and come as a standalone plugins from companies who’ve invested their time in building something for the whole community to enjoy. I’m a huge Sublime fan, and for now I get all of my work done there, but I saw that there is a demand for strict Ruby IDE’s and I thought I’d put together a list of the best ones around. (or at least the ones that get updated frequently)
This post was inspired by my recent list of sites to help you find Ruby development jobs, and if you happen to have an idea for a blog post, or you are looking for a solution that needs solving, I’m all ears and I’ll gladly see what I can do, if you let me know in the comments.
I’ll be going over each of the Ruby IDE’s briefly, and if possible include a tutorial from someone who’s experienced with each platform more than I am. You can also submit your own, and I’ll consider adding it to the list.
Here are the 5 Great Ruby IDE Solutions for Web Developers
1. Aptana Studio 3
Aptana is an open-source development environment that has been around since the Universe initially formed, or close to it.. I’m not kidding, either.
It used to be called ‘RadRails’, but Aptana realized that it’s easier to just have the whole plugin integrated in their main development editor, and so it’s not available for single download anymore. You’ll get a few other great IDE’s that come in Aptana, such as:
• HTML & HTML5
• CSS & CSS3
• JavaScript
• PHP
It will support deployment to many of the major free hosting platforms for applications and frameworks, and make it really easy to develop and test your code on the go. I’m also impressed by the Git functionality, and full integration which allows you to deploy to Git in just a few clicks.
The above video doesn’t provide any voice over, but it’s one of the few that displays Ruby environment on Aptana, to help you better understand the interface. It’s can be highly customized to your own specifications and needs.
2. RubyMine 6
JetBrains provide some of the best IDE’s in the world, and you know it. RubyMine is no exception, and is one of the most sophisticated, modern, easy to use Ruby IDE’s you’ll ever find. It comes at a price, but you can try it for 30-days to get a feel of it, and if you like it – make a purchase. It offers free plans for non-profit’s and school teachers, educational institutions – all other plans start at a low cost of $20.
The video has a lot more info on the newest version.
3. NetBeans ⇄ Ruby Plugin
They discontinued the Ruby IDE support back in 2011, due to Oracle introducing a new Java Dev Kit, and the overall use of Ruby being too shallow, for anyone having serious interest in continuing the project, the plug was pulled. It didn’t take long for the community to come up with a solution: a ruby and rails plugin for NetBeans.
4. Komodo
We as developers should be able to afford things that can help us in the long-term, especially when it comes to making it easier to write, launch and debug code. Komodo is the perfect IDE for any experienced developer, who doesn’t work only with Ruby, but also several other languages. Notable languages that Komodo supports for editing,
• Node.js
• LESS
• CoffeeScript
• SCSS
• a lot more…
5. Arcadia
The last Ruby IDE on our list is ‘Arcadia’, the only IDE from all of the above which is written in Ruby, for Ruby. It does not provide any support for other languages, and is purely focused on Ruby’s development. It’s also not run by a huge corporation, so updates and fixes might take time to happen.
It has been in the beta status since the initial release, back in 2010, but it doesn’t mean there isn’t a community of users who’re using this IDE on daily basis. I’d actually love to hear some feedback on this, and whether or not it’s a good choice for beginners, and what type of applications are you managing through this IDE?
Ruby IDE’s
I was initially thinking to create this categorized, both for Linux, Mac and Windows, but it so happens that most either support all of the operating systems, or just one. I was not able to find anymore to add to the list, and I checked out a dozen of ‘simple’ editors which don’t really account for being a full-scale IDE.
I hope the content in this post helps you find a development environment that you’ll love to work with.
Isn’t most ruby on rails code developed using textmate, sublime, vim, emacs?
I use sublime
It sure is. I work on a team of 8 ruby/rails developers. Two of us use RubyMine, the rest Sublime.
Sublime is a nice editor, and well-integrated with ruby, and there’s no way anyone is going to convince someone to switch — too much muscle memory involved :-). Of course RubyMine has all the key bindings for any editor out there. But we all live with the patterns and habits we developed. That’s why most code is developed with the tools you mention.
An IDE is the editor, of course, and needs to be a truly great editor. But it should have or allow you to integrate all the other tools we use to build software.
A few weeks ago, one our our devs was refactoring some really bad code, and spent a little time writing a script that made sure the dead methods he was removing were not actually used. Three or four iterations later he had what seemed to do the right thing. A couple weeks later, he did a pull request for the refactor.
In RubyMine, I looked at old and new (seamless one-click branch compare with brilliant visual diff) and then was concerned about one removed method, and right-clicked to select “Find Usages” and found the several that his script had missed — some just simple pattern omissions, others because RubyMine has a compiled version of the code, so can resolve references that a simple script cannot.
We have developed code standards based on several popular style guides. RubyMine gently inspects your code in the background and points out issues. Our rules are a little different, so I just removed the “inspections” that we don’t use, or customized the the changes.
RubyMine compiles code on the fly so syntax errors are instantly pointed out. Jump from one method to its caller or callee(s) with one click — jump to the code of the gems that get called — all easily visible. Jump to the view associated with a controller method; or a model. Look up api docs.
Integrated visual debugger. Run the app, a test, all tests, the console from within. See your database structure, or use the built-in database tool to query. Find dead code. And it knows erb, slim, haml, less, sass, css, jquery, javascript, sql, rvm, rbenv, and on and on.
Use and extend templates for common patterns invoked with shortcuts (“ldb+tab” writes `logger.debug “@@@@@ called from by ` and places the cursor where I want to add my code — just one I made because I use it a lot).
You can do some or even a lot of this in the good editors out there today. But most of it is already done for me, and keeps getting done for me as language and environments evolve. I prefer to write code.
I do as much or more work on the command line, or within emacs than most. RubyMine does not hide what’s going on — it’s all right there — but it saves me time and helps me make my code better.
Most RoR coders use other tools because RubyMine costs a little more, it runs in Java (and yes, you’ll want extra RAM if you’re tight), and it’s not what all examples from all web screencasts and demos use.
Too bad, because I think I write better, less buggy code more quickly and with fewer silly issues than I would without it.
(But of course I use RubyMine because and the dark ages, when I wrote in Java, I used the same company’s java IDE — my muscle memory was formed in in the late 1990s and early 2000s :-)
Rubymine is hard to beat