RadRails IDE speeds Web app development
Open-source IDE incorporates Ruby on Rails command-line functions, automates testing
The principal purpose of RadRails is to integrate Rails development, and at that it succeeds. Within RadRails in the Rails perspective, one can generate a new Rails application and Web server; configure its databases; generate controllers and models; edit models, controllers, and views; and browse the application site.
The Rails Navigator and the wrappers for the many Rails generators and Rake facilities help to manage the project effectively. (Rake is a Ruby-based make-like utility.) The RadRails editors can do syntax highlighting and some primitive code generation; for more substantial code generation, you’ll want to run Rails generators.
In the Data perspective, one can view the project databases and execute SQL queries. RadRails lacks a SQL query builder; you can either write your own SQL scripts or use another query builder tool.
Monitoring the Rails log files is the recommended way to debug Rails applications. RadRails can run the tail utility on specified log files and route the output into console windows that it manages. RadRails cannot, however, set break points in Ruby code for debugging.
Ruby on Rails supports unit, functional, and integration testing, all automated using Rake scripts. RadRails can use those tests directly or drive them from its own testing interface, which constructs a nice results display tree. RadRails 0.7 introduces a new AutoTest facility, which can automatically run the tests associated with a file every time it is saved. My only issue with the RadRails test facility is that it feels slow to launch on my 3.2GHz Pentium 4 workstation with 1GB of RAM, perhaps because it uses the Ruby remote test runner instead of the Rake test harness.
One of the mantras of test-first development is “red, green, refactor.” RadRails supports the red (write a test that fails) and green (write code to make the test pass) steps quite well, but forces the developer to refactor manually. Fortunately, the structure of Rails applications usually helps to keep the code well factored.
RadRails, as do Komodo and SlickEdit, has its own regular-expression test bed. Unlike Komodo and SlickEdit, it cannot word wrap its display. For example, I had to scroll far to the right to read the end of the second comment (as highlighted in the image at left) and ask the programmer of this controller, a TextMate user, to avoid long comments in the future.
RadRails integrates with CVS and Subversion version control systems. It does not integrate with Perforce, or with version control systems that use the Windows SCC interface convention.
Room for growth
The most glaring weakness of RadRails 0.7 is the sparse documentation, which is scheduled for completion for the 1.0 release. Two short demo videos found at RadRails’ site may help developers get started, but you’re largely on your own after that. I’d also love to see RadRails improve, in order of degree of difficulty, word wrap, automatic code formatting, source code control integration, debugging, and refactoring.
Overall, RadRails 0.7 is well on its chosen path “to provide Rails developers with everything they need to develop, manage, test and deploy their applications.” Given that it’s free for the downloading, all serious Rails developers should consider it for their toolkits.