<?xml version="1.0" encoding="UTF-8"?>
<article-node>
  <account-id type="integer">2</account-id>
  <author>Michael Slater</author>
  <aux>Ruby on Rails had a very good year in 2007, continuing to gain traction as one of the leading web development frameworks and making progress on many fronts.</aux>
  <body>&lt;p&gt;Ruby on Rails had a very good year in 2007, continuing to gain traction as one of the leading web development frameworks and making progress on many fronts. Although it is not yet nearly as widely used as &lt;span class=&quot;caps&quot;&gt;PHP&lt;/span&gt;, Java, or .Net, it has become perhaps the most common platform for web startups, at least within the &amp;#8220;Web 2.0&amp;#8221; space.&lt;/p&gt;
&lt;p&gt;In addition to all the startups that launched in 2007 using Rails-based applications, many established companies converted existing applications or began new ones using Rails. Some examples:&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;&lt;a href=&quot;http://www.yellowpages.com&quot;&gt;Yellowpages.com&lt;/a&gt; replaced a J2EE system with a new Ruby on Rails application. This may be the highest-volume Rails site currently operating.&lt;/li&gt;
	&lt;li&gt;&lt;a href=&quot;http://twitter.com&quot;&gt;Twitter&lt;/a&gt; added a new kind of instant messaging, with an application that seriously stressed the scalability of Rails.&lt;/li&gt;
	&lt;li&gt;The originators of Rails, 37Signals, added the &lt;a href=&quot;http://highrisehq.com&quot;&gt;Highrise&lt;/a&gt; contact-management application to their portfolio.&lt;/li&gt;
	&lt;li&gt;&lt;a href=&quot;http://revolutionhealth.com&quot;&gt;Revolution Health&lt;/a&gt; is a large health information site led by Steve Case.&lt;/li&gt;
	&lt;li&gt;&lt;a href=&quot;http://microplace.com&quot;&gt;MicroPlace&lt;/a&gt;, a microfinance investing site, is owned by eBay &amp;#8212; until now, a hard-core Java shop.&lt;/li&gt;
	&lt;li&gt;Yahoo, until now mostly a &lt;span class=&quot;caps&quot;&gt;PHP&lt;/span&gt; shop, began alpha testing a new geolocation platform, called &lt;a href=&quot;http://fireeagle.research.yahoo.com/&quot;&gt;FireEagle&lt;/a&gt;, which is written in Rails.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;New Versions of Everything&lt;/h2&gt;
&lt;p&gt;The big news on the technical side was the release of version 1.2 early in the year and version 2.0 at the end of year. There were also major new releases of key related programs, including Capistrano 2.0, Prototype 1.6, and Scriptaculous 1.8.&lt;/p&gt;
&lt;p&gt;Rails is still very young, but it is no longer a newborn. Basecamp, the application from which Rails was originally extracted, is now almost four years old. To be sure, there have been some teething pains, and a few people who have vocally abandoned Rails. But Rails is clearly a healthy adolescent, with a great future as an adult ahead of it.&lt;/p&gt;
&lt;p&gt;Rails 2.0 shows signs of a maturing framework; despite the &amp;#8220;major&amp;#8221; version number, the changes are more incremental than those from 1.1 to 1.2, and there&amp;#8217;s more attention to backward compatibility.&lt;/p&gt;
&lt;h2&gt;Rails Community Growth&lt;/h2&gt;
&lt;p&gt;The Rails community, whatever you may mean by that, grew dramatically in 2007.&lt;/p&gt;
&lt;p&gt;No doubt there are many more people building with Rails today than there were a year ago, though we haven&amp;#8217;t been able to come up with a specific way to measure that.&lt;/p&gt;
&lt;p&gt;The past year has seen an amazing proliferation of Ruby on Rails books. At the start of the year, I had 5 Ruby and Ruby on Rails books on my shelf. I may have missed one or two, but not more than that. One year later, I now have 27 books on Ruby and Rails.&lt;/p&gt;
&lt;p&gt;There&amp;#8217;s a dozen or so introductory books now, with dozens of application examples, as well as one outstanding new reference book: &lt;a href=&quot;http://www.amazon.com/exec/obidos/ASIN/0321445619/buildicom-20&quot;&gt;The Rails Way&lt;/a&gt;. And there&amp;#8217;s specialty books on topics including mapping, social networking, Active Record, and Prototype and Scriptaculous.&lt;/p&gt;
&lt;p&gt;RailsConf in May 2007 attracted a sell-out crowd of more than 1,600 attendees, triple the previous year&amp;#8217;s attendance, and organizer O&amp;#8217;Reilly said it was their fastest-selling conference ever. The was also a successful RailsConf in Europe in the fall, several regional RailsEdge conferences, a larger-than-ever, sold-out RubyConf, and many smaller events.&lt;/p&gt;
&lt;h2&gt;Strife at the Fringes&lt;/h2&gt;
&lt;p&gt;Like any large and growing community, the Rails community has its detractors. In a recent article, which got a lot of attention because it was, in a peculiar way, a fun read, Zed Shaw &lt;a href=&quot;http://www.zedshaw.com/rants/rails_is_a_ghetto.html&quot;&gt;attacked the Rails community&lt;/a&gt; and proclaimed his plan to move away from Ruby and Rails. As the author of Mongrel, the application server used by the vast majority of Rails apps in production today, Zed&amp;#8217;s programming chops are unquestioned. But we find it unfortunate that he&amp;#8217;s created an &amp;#8220;us&amp;#8221; vs. &amp;#8220;them&amp;#8221; situation, and that he turns technical disagreements into personal attacks on other people.&lt;/p&gt;
&lt;p&gt;Another notable &lt;a href=&quot;http://www.oreillynet.com/ruby/blog/2007/09/7_reasons_i_switched_back_to_p_1.html&quot;&gt;article was written by CD Baby creator Derek Sivers&lt;/a&gt;, after he gave up on a two-year effort to rewrite his &lt;span class=&quot;caps&quot;&gt;PHP&lt;/span&gt; site in Rails, and went back to &lt;span class=&quot;caps&quot;&gt;PHP&lt;/span&gt;. The key point of this piece, as we see it, is that if you are expert in a technology and you have a detailed idea of what you want to build, it can be frustrating to switch to another technology, especially one that makes you learn new ways to make things easy, and that constrains how you can implement things.&lt;/p&gt;
&lt;p&gt;Part of what makes Rails great is its &amp;#8220;opinionated&amp;#8221; design, and of course that means there are opinionated people at the heart of the Rails community. A small group of people holds a great deal of power over Rails, and if you happen to disagree with that group, it can be painful. Our experience has been that the vast majority of people in the Rails community are smart, friendly, and contribute a lot.&lt;/p&gt;
&lt;p&gt;There&amp;#8217;s a few people, including David H. Hansson, Dave Thomas, Mike Clark, Chad Fowler, Michael Koziarsky, and Jim Weirich, without whom we just wouldn&amp;#8217;t have the Rails software and community as we have it today. Many others no doubt belong on this list as well. They&amp;#8217;ve made incredible contributions during the past few years. Remember that, in most cases, no one is paying anyone to build and maintain the Rails framework. (This not to say that these people haven&amp;#8217;t built businesses around Rails, of course, as we have.)&lt;/p&gt;
&lt;h2&gt;The Rise of &lt;span class=&quot;caps&quot;&gt;REST&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;Perhaps the most far-reaching change in Rails during the past year has been the whole-hearted adoption of RESTful design practices. Rails 2.0 eliminates the old scaffold entirely and replaces it with what had been called resource_scaffold, which is indicative of the core team&amp;#8217;s belief that all applications should be designed as a set of resources with RESTful interfaces. &lt;span class=&quot;caps&quot;&gt;REST&lt;/span&gt; even got a book of its own in 2007: the surprisingly readable &lt;a href=&quot;http://www.amazon.com/exec/obidos/ASIN/0596529260/buildicom-20&quot;&gt;RESTful Web Services&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The rise to prominence of the RESTful approach has many advantages, but it does present additional hurdles for newcomers learning Rails. Conventional routes are easier to understand, but with the scaffold no longer using them, new users will be thrust immediately into &lt;span class=&quot;caps&quot;&gt;REST&lt;/span&gt;. At least it is now clear that there&amp;#8217;s really no alternative to coming to grips with &lt;span class=&quot;caps&quot;&gt;REST&lt;/span&gt; if you want to follow the Rails golden path.
	
h2. Development Tools Proliferate&lt;/p&gt;
&lt;p&gt;A year ago, you wouldn&amp;#8217;t find many Rails developers using an &lt;span class=&quot;caps&quot;&gt;IDE&lt;/span&gt;. TextMate and the console were, and remain, the most widely used development setup. But IDEs are gaining ground.&lt;/p&gt;
&lt;p&gt;At the end of 2006, the open-source RadRails project, based on Eclipse, began gaining some traction. In early 2007, RadRails was acquired by Aptana, which has now built a much enhanced version of the Rails support from RadRails into its &lt;a href=&quot;http://aptana.com&quot;&gt;Aptana Studio&lt;/a&gt; development environment.&lt;/p&gt;
&lt;p&gt;Sun lent its support to Rails with the introduction of Ruby and Rails support for &lt;a href=&quot;http://www.netbeans.org&quot;&gt;NetBeans&lt;/a&gt;. NetBeans 6.0 went through a series of beta releases, culminating in the official release late in 2007. NetBeans works either with Sun&amp;#8217;s JRuby or with the native Ruby interpreter.&lt;/p&gt;
&lt;p&gt;And there&amp;#8217;s more &amp;#8212; Borland&amp;#8217;s &lt;a href=&quot;http://www.codegear.com/products/3rdrail/&quot;&gt;CodeGear&lt;/a&gt; now supports Rails, ActiveState offers Rails support in its &lt;a href=&quot;http://www.activestate.com/Products/komodo_ide/&quot;&gt;Komodo&lt;/a&gt; &lt;span class=&quot;caps&quot;&gt;IDE&lt;/span&gt;, and SapphireSteel offers &lt;a href=&quot;http://www.sapphiresteel.com/&quot;&gt;Ruby in Steel&lt;/a&gt;, a set of Ruby extensions for Microsoft&amp;#8217;s Visual Studio.&lt;/p&gt;
&lt;h2&gt;Looking Forward&lt;/h2&gt;
&lt;p&gt;We&amp;#8217;ll save most of our prognostications about the future for other articles. But one key trend to watch in 2008 is the emergence of Rails running on various virtual machines, including Ruby 1.9, JRuby, Rubinious, and IronRuby. By the end of the year, it will probably be a lot harder to attack Ruby on the basis of its being slow.&lt;/p&gt;
&lt;h2&gt;What Did We Miss?&lt;/h2&gt;
&lt;p&gt;We&amp;#8217;ve touched on just a few highlights in this article. What do you think were the most significant Rails events of 2007? Add your comments and we&amp;#8217;ll update the article after a bit with the most notable additions.&lt;/p&gt;</body>
  <created-at type="datetime">2008-07-24T01:00:46-07:00</created-at>
  <created-by type="integer">1</created-by>
  <dy-schema-id type="integer" nil="true"></dy-schema-id>
  <dy-schema-type nil="true"></dy-schema-type>
  <filter-id nil="true"></filter-id>
  <flags type="integer">1</flags>
  <historic-id type="integer">9</historic-id>
  <id type="integer">6409</id>
  <kind-id type="integer">5019</kind-id>
  <lock-version type="integer">3</lock-version>
  <name>2007: The Ruby on Rails Year in Review</name>
  <owner-id type="integer" nil="true"></owner-id>
  <owner-type nil="true"></owner-type>
  <published-at type="datetime">2008-01-08T16:00:00-08:00</published-at>
  <rating type="integer">3</rating>
  <ref-count type="integer">0</ref-count>
  <sequence type="integer">0</sequence>
  <status type="integer">0</status>
  <updated-at type="datetime">2009-03-23T22:59:57-07:00</updated-at>
  <updated-by type="integer">1</updated-by>
  <url nil="true"></url>
  <user-id type="integer">1</user-id>
  <version type="integer">4</version>
  <workflow-task-status-id type="integer" nil="true"></workflow-task-status-id>
</article-node>
