<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" href="/stylesheets/rss.css"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
  <channel>
    <title>Nimble Code: Stop Kicking The Enterprise</title>
    <link>http://www.nimblecode.com/articles/2006/01/06/dont-shun-the-enterprise</link>
    <language>en-us</language>
    <ttl>40</ttl>
    <description>Jacob Harris' Weblog</description>
    <item>
      <title>Stop Kicking The Enterprise</title>
      <description>&lt;p&gt;I have to agree with &lt;a href="http://jroller.com/page/obie"&gt;Obie Fernandez&lt;/a&gt; when he complains in his posting &lt;a href="http://jroller.com/page/obie?entry=enterprise_is_not_an_insult"&gt;Enterprise Is Not An Insult&lt;/a&gt; about some of the recent derision directed at the Enterprise lately from the avant garde in the  &lt;a href="http://www.rubyonrails.org/"&gt;Ruby On Rails&lt;/a&gt; community lately. The problem is most of the mockery comes over a misunderstanding that &amp;#8220;enterprise&amp;#8221; means    &amp;#8220;insanely large&amp;#8221;, which Obie points out is completely different from any definition used by people who actually work in enterprise software:&lt;/p&gt;


	&lt;blockquote&gt;
		&lt;p&gt;Plenty of us say &amp;#8220;enterprise&amp;#8221; when referring to internal-facing systems written by corporate IT departments and it doesn&amp;#8217;t carry a stigma for being too large or too small, too simple or too complex. Enterprise projects might be large, take years, straddle business units and have global effects or they might be small, departmental efforts with only a handful of end users. So many factors influence the success of enterprise software in a given organization, only few of which have anything to do with technology.&lt;/p&gt;
	&lt;/blockquote&gt;


	&lt;p&gt;Yes, there are large products that call themselves &amp;#8220;enterprise-class software&amp;#8221;, but that doesn&amp;#8217;t mean that all enterprise software has to be big, slow, and hard to develop. But unfortunately, mocking the state of enterprise software has become an oft repeated &lt;a href="http://www.37signals.com/svn/archives2/predicting_06_enterprise_is_the_new_legacy.php"&gt;dumb&lt;/a&gt; &lt;a href="http://www.37signals.com/svn/archives2/define_enterprise_in_10_words_or_less.php"&gt;joke&lt;/a&gt; lately. This is like when a comedian throws out a laugh line &amp;#8211; like slamming Microsoft or calling France &amp;#8220;surrender monkeys&amp;#8221; &amp;#8211; to get a quick laugh; it&amp;#8217;s funny at first but soon loses its novelty.&lt;/p&gt;


	&lt;p&gt;Giving a definition of my own, &amp;#8220;enterprise software&amp;#8221; means &amp;#8220;business software.&amp;#8221; All businesses want to increase their profits, and they do that by reducing inefficiency (ie, &amp;#8220;we can track all of our operations within Excel&amp;#8221;) or expanding into new niches (ie, opening overseas offices or offereing new business). Enterprise or &lt;acronym title="business to business"&gt;B2B&lt;/acronym&gt; software &amp;#8211; whether shrink-wrapped or custom &amp;#8211; is what helps them get there. The best enterprise software becomes as essential as the &lt;span class="caps"&gt;CEO&lt;/span&gt; or infrastructure to a company&amp;#8217;s success. And smart companies look to develop such software as quickly as possible, both to increase their profits quicker and gain advantage over their competitors. Yes, there is slow and clunky enterprise software, but there is also lightweight and rapidly developed enterprise software too. Speaking from personal experience, at &lt;a href="http://www.alacra.com/"&gt;Alacra&lt;/a&gt;, we work with a lot of vendors both large and small, and I can assure you that agility and &lt;em&gt;profitability&lt;/em&gt; are far more important than slavish adherence to some awkward and enormous toolkit. Consider that the agile methodologies of &lt;a href="http://www.extremeprogramming.org/"&gt;Extreme Programming&lt;/a&gt; and &lt;a href="http://www.scrumalliance.org/"&gt;Scrum&lt;/a&gt; were first heavily used in such large enterprise environments as Chrysler and Honeywell respectively. And I would argue that the success of such radically-new-at-the-time technology like the Web, &lt;span class="caps"&gt;XML&lt;/span&gt;, or Java was entirely due to the &lt;span class="caps"&gt;B2B&lt;/span&gt; community recognizing their value early and embracing them fully.&lt;/p&gt;


	&lt;p&gt;Which is why I think the jokes have to stop; does Rails want to continue to present itself as a niche tool for small &lt;acronym title="business to consumer"&gt;B2C&lt;/acronym&gt; development or does it want to be a &lt;span class="caps"&gt;B2B&lt;/span&gt; player? Why have we gone from &lt;a href="http://www.loudthinking.com/arc/000479.html"&gt;Rails does too scale!&lt;/a&gt; to &lt;a href="http://www.37signals.com/svn/archives2/dont_scale_99999_uptime_is_for_walmart.php"&gt;Uptime is overrated?&lt;/a&gt; 
Yeah, 99.9999% uptime is overkill for almost all software, but if you&amp;#8217;re going to sell to business you shouldn&amp;#8217;t mock people if they want 99% uptime. They&amp;#8217;re not whinging; they want to make your product an essential tool for their business. And so I think Rails needs to embrace enterprise needs. I think David is right to resist such code additions to the core, but I think it has a place in third-party contributed plugins and code snippets. To be an enterprise player, people will want to plug Rails into working legacy database schemas, handling composite keys, potentially even interfacing with back-end service-oriented architectures;  maybe even hacking lightweight support for such horrors as &lt;span class="caps"&gt;SOAP&lt;/span&gt; or &lt;span class="caps"&gt;CORBA&lt;/span&gt;. And I think such work is what Rails needs to really succeed. Maybe you think it&amp;#8217;s selling out, but I&amp;#8217;d rather see Ruby in the enterprise than C#. There is a middle ground between obscurity and (code) obesity; let&amp;#8217;s not mock people for trying to find it.&lt;/p&gt;</description>
      <pubDate>Fri, 06 Jan 2006 13:13:00 -0800</pubDate>
      <guid isPermaLink="false">urn:uuid:5578081c-b931-4610-8fea-8d5e1a60145b</guid>
      <author>harrisj@nimblecode.com (Jacob Harris)</author>
      <link>http://www.nimblecode.com/articles/2006/01/06/dont-shun-the-enterprise</link>
      <category>Net Culture</category>
      <category>Web Coding</category>
      <category>ruby</category>
      <category>rails</category>
      <category>enterprise</category>
      <category>agile</category>
      <trackback:ping>http://www.nimblecode.com/articles/trackback/79</trackback:ping>
    </item>
  </channel>
</rss>
