Ruby on Rails and the real world
30 Oct 2005 - DaveMany programmers, and I.T. type for that matter, dream of escaping the ties and dependencies of legacy systems…even systems of their own making. And starting over fresh.
RoR’s is nearly a complete framework in itself. Starting from the data design philosophy there is a Rails way to do it. The MVC model keeps the different parts of the application organized. Rails is well integrated and all the pieces work well together. You can create a complete web/database app in a matter of minutes…BUT…
When you start with a platform (OS) other than the BSD/OSX used by the Rails creators the real world creeps in. There are Rails dependencies that need to be tracked down and installed for your environment. The WebBrick Ruby webserver fits best with rapid Rails development. But WebBrick scales poorly as more folks start using your new Rails web application.
CGI is not a good option for scaling a web application. FastCgi has better performance but configuring it with the popular Apache webserver is a nightmare. When/if it is configured the stability is not what you would commit a critical business application to. The Rails folks say Lighttpd is a better option than Apache…BUT…
If Windows is your platform then Lighttpd is not recommended. Installing and running Lighttpd on the number of Linux flavors that I tried had quirks for each. I am no newbie sysadmin for either Linux or Windows. At a few points I thought fiendishly how these problems would play in the popular Ruby on Rails — Five Minutes webapp videos. There is a good bit of work to be done beyond the eye-candy Mac demos. And with the popularity of Rails at this point this stuff may get done if Rails can maintain its momentum.
Few companies will rip out existing systems in favor of Rails no matter how easy and rapid new apps can be developed. Having a good set of patterns for interfacing a new Rails web application with various legacy systems would go a long way to bringing Rails into the real world…