Software Newsletter      http://www.softwaremag.com/l.cfm?doc=1152-8/2008   Software Journal
   
Software Journal
  Search  
   
   
 
The Software 500
Application Development
Application Focus
Business Intelligence
Customer Relationship
Management
IT Infrastructure
Security
The Business of IT
TECH CENTER
   
  Software Journal  
 

 

Our Partners

Sign Up for Digital Software Magazine
 
eInquiry System
 
 
|   Login to SW500 Survey    |   SoftwareMag Login   |    Register   |
THOUGHT LEADERSHIP
Ruby on Rails
Everyone’s talking about it. Are you?

By Dietrich Kappe, CTO, Pathfinder
Ruby on Rails 2.0 is creating buzz among software developers; here is how Ruby can help you achieve business goals

Last month, the long awaited release of Ruby on Rails 2.0 was delivered, creating a lot of buzz in the software development community. It’s fast, it’s cool and all of your Java programmers are talking about it, but how can it help you achieve your business goals?

Ruby on Rails, often referred to as Rails, is an open source web project that couples the Ruby programming language with the Rails web application framework. It is ideally suited for creating customer-facing web applications and its growing popularity is due to its ability to speed development while enriching user experience.

By design, Rails promotes Agile development methods and programming best practices. Rails introduces radical productivity improvements and follows mantras like “Convention over Configuration,” “If It’s Not Tested; It’s Broken” and “Don’t Repeat Yourself.” These may sound like pithy quotes but they are at the heart of why Rails has been able to deliver such amazing results. These principals save an incredible amount of programming time and effort in initializing and maintaining all of the different objects and instances required in traditional development environments. As Noel Rappin, author of Professional Rails Development, states “Rails makes the things you ought to do easy, and the things you ought not to do, hard.” The productivity gains of Rails also translate into the following business benefits:

Accelerate Time to Market

With competition at an all time high, and the web changing the game for every industry, time to market, has become the paramount for competitive advantage. Ruby on Rails enables the development of powerful, rich internet applications in a fraction of the time it takes with .NET or J2EE. Developing a new product or service for the web no longer has to take 6 months. Speed to market combined with rich interface capability translates into better web applications and enhanced user experiences. Rails can be an opportunity for you to get ahead of your competitors and deliver better web applications, products or services, faster.

Reduce Costs

Time is money, especially in web development. Not only are you paying for development time, whether internal or outsourced, but there are other costly considerations which include: software, support, testing, installation, customization, etc. This is another area where Rails prevails because many of these concerns are already addressed by the framework itself, for instance, development, test and production run-time environments are provided out of the box. Rails dramatically reduces the time and effort necessary to develop, maintain or make changes to web applications, saving time, money and frustration. The Rails framework is open source software, meaning there are no licensing costs or upgrade fees. Together these lower the total cost of ownership and increase the potential return on investment.

Improve Software Quality

Rails supports test driven development and automation which greatly enhances software quality. Common mistakes are also avoided through continuous testing and iterations. Extensive unit testing support is provided, and changes can be tested instantaneously. These features help reduce complexity and enable developers to focus more on application logic. More importantly, it insures that quality is not sacrificed for speed.

The Catch

Rails is hard to beat. It makes it possible to develop a web based product or service in a ridiculously short amount of time. In my own experience, I have seen the productivity gains of Rails reduce development times down to a quarter of what was necessary in J2EE or .NET environments.

Sound too good to be true? As with all software development, there is no silver bullet. The framework has to be used correctly in order to unlock its potential and pairing it together with Agile Development practices delivers the best results and mitigates risk. The productivity gains that make it an excellent choice for customer facing web applications are the same reasons why it should not be used for developing complex transactional, real-time or distributed systems. Knowing how to use this powerful platform is as important as knowing when not to use it - it is not the right framework for every application.

Rails offers many benefits, making it worthy of consideration for future web based applications. As with any technology evaluation for a development project, it is important to understand the trade-offs, recognize the implications, and avoid common pitfalls. This is a balancing act that requires many skills and disciplines to be successful. While Rails may offer extreme productivity gains, developing web applications that deliver exceptional user experiences is still hard work and the required efforts should not be taken lightly.

About the Author

Dietrich Kappe is Pathfinder’s Chief Technology Officer is responsible for assessing the impact of technology on consumers, markets, and organizations and providing thought leadership, and strategic direction. Dietrich has over 17 years of enterprise software development, systems architecture design, and information technology consulting experience. His past work includes the development of international mutual fund trading and knowledge management systems, an online publishing system for the Chicago Sun-Times, and the first distance learning system for Booz, Allen &Hamilton. He can be contacted at 312.372.1058 or at dkappe@pathf.com. Dietrich also hosts the Agile Ajax blog at: blogs.pathf.com/agileajax/

About Pathfinder

Pathfinder designs and develops people-friendly, commercial grade software and web applications for enterprises for organizations that view software as a competitive advantage. Pathfinder’s approach integrates user experience design with agile development to improve software usability and accelerate development. For more information, call 312-372-1058, email info@pathf.com or visit www.pathf.com.

 
 
 
Related Links
  Thought Leadership Archive  
  Back to Home Page  
Advertisement
http://www.softwaremag.com/SW500CD.cfm?yr=2008

     
Home |  About Us |  Software 500 |  Editor's Desk |  Subscribe |  Advertise |  Contact Us | 

Copyright © 1999-2010 Software Magazine and King Content Co.
Site Design by Enervision Media
Site Development/Administration by Kunal Panchal