Link Details

Link 42986 thumbnail
User 186462 avatar

By smackjer
via jeronrails.blogspot.com
Published: Sep 19 2007 / 14:38

Ask 100 enterprise developers (who are probably using Java or C#) if Rails is ready for the enterprise. My guess is that 75 will say no, 1 will say yes, 9 will say "I don't know", and the other 15 will ask "What's Rails?" Why aren't more enterprise projects using Rails?
  • 16
  • 2
  • 1109
  • 392

Comments

Add your comment
User 247420 avatar

omouse replied ago:

0 votes Vote down Vote up Reply

What about the problems with threading that the Ruby interpreter has? What about internationalization, last time I checked Rails wasn't very friendly towards Unicode...

User 186462 avatar

Jeremy Weiskotten replied ago:

1 votes Vote down Vote up Reply

@omouse: Multi-threading just isn't a concern in Rails apps. Instead of using threads to handle concurrent requests, Rails depends on multiple processes (usually mongrels). There is some cost due to the overhead of processes compared to threads, but relative to everything else it's pretty cheap. One of the nice benefits is that you don't have to worry about thread-safety and those really hard to diagnose concurrency bugs.

I mentioned that lack of Unicode support in the post. I don't know much about it myself, but from what I've seen there is some support and it is getting better. I don't know what the ratio is of enterprise apps that require i18n compared to those that don't, but in my current project it's not an issue (yet).

User 200691 avatar

lem z replied ago:

1 votes Vote down Vote up Reply

Here's a few things you have wrong:

1. Most important - never assume you are smarter than everybody else and never think that other enterprises are "underthinking" they decisions, especially when it comes to making money. There are people on the other side of the fence who are just as smart as you are and work just as hard to better their business.

2. 3 years is more than enough time. I was getting paid to do ASP.NET in the first 6 months.

3. Enterprise shop still use old versions because they have to support products and clients, not because they suddenly decide it just for kicks.

4. There's no FUD around Ruby performance. It's orders of magnitude slower than compared directly to Java or .NET and even more slower with all Rails magic.

Now here's the answer why it's not enterprise ready:

1. No support. To expand on that - relatively poor docs, smallish community, few experts.

Until rails gets a big company to back it up and throw some good money, it will remain or hobby framework. Businesses tend to trust other businesses, which also brings accountability to the table. That's why every platform has an actual enterprise behind it... except Rails. Java - Sun, .NET - MS, PHP - Zend and Perl - ActiveState.

User 186462 avatar

Jeremy Weiskotten replied ago:

0 votes Vote down Vote up Reply

lem, you make some good points, but...

1. I'm not assuming anything about anyone's intelligence. I've worked for big companies that built enterprise software. I know how much time and manpower is spent (sometimes wasted) on decision making, where the decision is often "keep doing what we're doing".

2. The amount of time (3 years in the case of Rails) that it takes to get enterprise adoption varies based on a lot of factors. People were getting paid to do Rails in the first 6 months, too... Plus, ASP.NET is backed by Microsoft, which carries a lot of weight in Microsoft enterprise shops, especially when Microsoft pretty much drops support for legacy platforms. This has benefits, but it's not necessarily a good thing.

3. This is absolutely true. It's one of the reasons that enterprises are slow to adopt new technologies. I don't think I got this wrong...

4. The FUD about Ruby performance is that the performance isn't "good enough" for most applications, including most "enterprise" applications. So far, it seems to be. Look at where most of the biggest bottlenecks are, where most time is spent in Rails apps. It's not usually waiting for Ruby code to finish executing.

You're right that Rails lacks major corporate backing, other than ThoughtWorks (see http://studios.thoughtworks.com/rubyworks). But Rails (and Ruby) is free, as in speech as well as beer. It's easy to get the source and submit patches (which might be rejected in favor of a plugin). There are good resources in print and on the web. There are hundreds of (small) consultancies that can help you in a jam. Rails apps, including enterprise-scale, are being built without major corporate backing and support.

User 200691 avatar

lem z replied ago:

0 votes Vote down Vote up Reply

When evaluating business directions and technologies, whenever the platform is "free" or not is irrelevant most of the time. When you are talking about spending millions on developer salaries, $20-50k makes very little difference. That's exactly where Microsoft and Sun come in offering all kind of gravy that Rails just can't.

When developing an insurance or banking web site, the shop is not gonna care if there are hundreds of small consultancies around... Who's gonna go looking for one? Who's gonna vouch that the one you found is trustworthy? In the world of enterprise, when you are in a jam, you open up a support ticket... who are you going to open one up with Rails question?

Until Rails shakes off the "omgz, we are so cool, we developed this in the basement because we wanted to do things the right way" stigma, its adaptation in enterprise will be at a snails pace.

User 186462 avatar

Jeremy Weiskotten replied ago:

0 votes Vote down Vote up Reply

I think a lot of enterprises are beginning to recognize the value of open source. That means they'll be more likely to consider adopting things like Rails instead of being completely dependent on a vendor like Microsoft. People can make money on open source by providing support for a fee. This is how JBoss and hundreds of other companies pay the bills, and companies are starting to do this with Rails.

Developers realized this years ago. Enterprises are just a little slow.

User 186462 avatar

Jeremy Weiskotten replied ago:

0 votes Vote down Vote up Reply

By the way, great job with noobkit!

User 200691 avatar

lem z replied ago:

0 votes Vote down Vote up Reply

thnx :)

Add your comment


Html tags not supported. Reply is editable for 5 minutes. Use [code lang="java|ruby|sql|css|xml"][/code] to post code snippets.