« DeRailed ActiveResource Presentation | Back to Main | ID Watchdog Project Goes Live »

NationwideSpeakers.com Site Upgrade

Most of the projects I work on involve creating something from nothing with the help of Rails. Every so often though, I get a project that involves a different type of work.

NationwideSpeakers.com contacted me about maintenance for their existing site. It had been developed using Rails way back when Rails was in version 0.9 or so. My immediate task was to add some new features, but not long after getting access to the code, I realized the site needed a major upgrade.

With Rails 2.0 just around the corner, it was time to upgrade the application from pre-1.0 Rails coding standards.

After talking with Nationwide and explaining that an upgrade was badly needed, I brought another developer to the team and we started digging through the Rails application line-by-line looking for old, broken, or deprecated code. It took us about a week to get everything converted.

One major issue we discovered during the upgrade was that the older Rails code was using file-based storage for session data. That had caused over 3 million files to build up on the server, and needless to say, it was starting to impact performance. We moved session storage to the database and added some housekeeping scripts to cleanup old sessions.

During the conversion, while prepping the server for deployment with Capistrano, I realized that Nationwidespeakers.com was not running any backups on the production data or source code. I used the upgrade opportunity to ensure that production databases are backed up nightly to a secure off-site server. I also moved the Subversion source code repository to a secure hosted service, separate from the main application server. When it comes to backups, my rule is not to put all the important data on one server.

After a few weeks of work, the upgraded NationwideSpeakers.com site was deployed successfully.

So while most of what I do involves creating new applications, I will occasionally take on projects that are more maintenance-related. NationwideSpeakers.com is a perfect example of what my team and I can do for your existing Rails application.

Give me a call at 719.966.4313 if you would like to talk about your existing Rails application.