Using Visual Studio as a Ruby On Rails IDE

Microsoft Visual StudioThere are lots of good editors for Ruby development, such as Aptana (formerly known as RadRails) which is based on the Eclipse framework so it needs lots of resources to run (because is is based on Java). An other solution can be RoRED. RoRED seems to be OK, but I really miss lots of features from it.

If I say IDE, I mean a full featured environment with project management, useful editor and debugging features. And this is when Visual Studio comes in. Microsoft’s Visual Studio is one of the most famous IDEs, used by lots of programmers who have to focus on .Net, ASP, C, C++, C#. But what about Ruby developers? Since now it can be used as a Ruby On Rails IDE with a “small extension” built by SapphireSteel Software: Ruby In Steel.

Linking the power of Ruby with the power of Visual Studio

Ruby in Steel is plugging into Visual Studio to blend the benefits of Microsoft’s development environment with Ruby technologies.

A fast debugger is included in the professional edition of Ruby in Steel. IntelliSense functionality for code completion is also done, as it has support for Microsoft’s Solution Explorer project management tool. Ruby in Steel provides an editing environment for Ruby programs and comes with syntax coloring and the ability to run console applications with one single keystroke.

Among the other features planned for Ruby in Steel, wizards set up databases. Ruby In Steel supports the MySQL and SQL Server databases, with integrations planned for other databases such as Oracle. Ruby in Steel enables development of applications to be deployed primarily on Windows, Mac OS and Linux.

There are good news for the upcoming version of Visual Studio: Ruby in Steel is going to support Visual Studio 2008 as well as version 2005 (latest available yet).

Ruby In Steel comes with lots of features in different cases:

  • Code Coloring (Ruby and RHTML)
  • Code Folding (Ruby and RHTML)
  • Extended Syntax Coloring
  • Mark and Hide Selected Code
  • Tooltips show hidden (collapsed) code
  • Collapse To Definitions
  • Bracket matching (move cursor)
  • Bracket highlighting
  • Keyword..END matching (move cursor)
  • Block comment/uncomment
  • Multi-level undo/redo
  • Tabbed (multi-file) editing
  • Split-window editing
  • Auto Indent/outdent
  • Bookmarks
  • Line Numbers (optional)
  • User defined macros
  • Find/Replace with wildcards
  • Find/Replace with regular expressions
  • Find/Replace in files
  • Incremental Search
  • Rectangular block Selection
  • Drag and drop copy/move
  • Block Indenting
  • Smart Indenting
  • Format all code or selection

Debugging features

  • Ruby and Rails Debugging
  • Breakpoints with Breakpoint Manager (enable/disable)
  • Watch variables
  • Show Locals and/or Globals
  • Show Instance Variables
  • Show Object Methods
  • Show Singleton Methods
  • Call Stack
  • Step into / over
  • Run to cursor
  • Interactive Debugging Console
  • Drill-down (variable expansion)
  • Hovering Drill-down in Ruby Editor (or in Ruby Console)
  • Fast ‘Cylon’ Debugger

IntelliSense

  • Intelligent Type Inference
  • Optional type assertion of method return
  • Optional type assertion of arguments
  • Member, Keyword and Parameter completion lists
  • Globals completion
  • Variables completion
  • Auto-expand snippets
  • Auto-surround snippets
  • RDoc display in tooltips
  • tooltip HELP OVER COMPLETION LISTS
  • Navigation bars (drop-down Lists) In EDitor

Note: Using IntelliSense is a convenient way to access descriptions of functions, particularly their parameter lists. It speeds up software development by reducing the amount of keyboard input required. It also allows less reference to external documentation as documentation on many functions appears with the function name. Since now with the power of Ruby In Steel we have the opportunity to use Ruby and Ruby on Rails functions, attribute, etc. with IntelliSense.
More can be found on the relevant Wikipedia page.

Project Management

  • Ruby and Rails Project Wizard
  • Manage Projects in Solution Explorer
  • Add New Ruby and Rails files
  • Add Existing Ruby and Rails files
  • Optionally exclude hidden files/folders
  • Optionally exclude by file extension
  • Synchronize disk/project
  • Show All Files
  • Add project folders
  • Open command prompt in directory
  • Rename file/folder
  • Delete file/folder
  • Drag+drop copy/move file/folder
  • Exclude selected file/folder
  • Projects may include supported VS file types: HTML, text, CSS, XML etc.
  • File properties (args, flags etc.)
  • Import existing Ruby or Rails projects
  • Convert (in Place) Ruby or Rails projects

Productivity Tools

  • Rake Task Runner
  • Dockable/configurable Rake Window
  • Start server dialog
  • Generate controller/model/scaffold
  • Dockable Generate Script-Builder
  • Install Gems dialog
  • Ruby and Rails toolbar
  • Run in popup command window
  • Run in integrated interactive console
  • Tabbed/docked/floating windows
  • Build to find syntax errors
  • Click message to locate syntax error
  • Comprehensive PDF User Guide/Manual
  • PDF guides to macros, LightTPD, Snippets
  • Integrated Help
  • Go To Definition
  • Syntax error indicators (‘squigglies’)
  • Ruby/Rails Macro Library
  • Ruby Snippet Library
  • Ruby Snippet Editor
  • Ruby Explorer code navigator

Rails Development

  • Database setup wizard
  • Automated MySQL setup
  • Automated SQL Server setup
  • Option to use other DB servers
  • Auto-generate YAML
  • Integrated SQL Server DB definition
  • Integrated SQL Server Explorer
  • Integrated web browser
  • IntelliSense For Rails
  • RHTML/HTML Editor TOGGLE
  • One-click Rails Debugger

Different versions with different pricing

Ruby In Steel comes in two different versions: Personal and Developer edition. The first one is free but has a few restrictions - for example there is no IntelliSense support. The developer edition has all the features what a professional programmer needs. See the official website to compare the different versions an check out the movies.

I’ve been using the personal edition for a while and I can say it is very useful, it is very strong in productivity features and it is the best solution for Ruby On Rails development. I’m planning to buy the developer version which is now available only for $199 which doesn’t seem to be too expensive (more productivity means more money to earn ;))

I also have to mention that one of the features that web developers will really like with VS 2008 is its built-in support for JavaScript IntelliSense. This is enabled in both the free Visual Web Developer 2008 Express edition as well as in Visual Studio, and makes using JavaScript and building AJAX applications significantly easier. Microsoft also announced the next version of Visual Studio (right after VS 2008) which will have project management supports as well.

Related links:

2 Responses to “Using Visual Studio as a Ruby On Rails IDE”


  1. Gravatar Icon 1 oDesk

    wow, RoR developer mate!

  2. Gravatar Icon 2 liquid

    welcome, mate! :)

Leave a Reply