The Joel on Software Discussion Group (CLOSED)

A place to discuss Joel on Software. Now closed.

This community works best when people use their real names. Please register for a free account.

Other Groups:
Joel on Software
Business of Software
Design of Software (CLOSED)
.NET Questions (CLOSED)
Fog Creek Copilot

The Old Forum

Your hosts:
Albert D. Kallal
Li-Fan Chen
Stephen Jones

DHH's response to Joel's Language Wars

I have to agree with DHH on this one big time.
Friday, September 01, 2006
Lisp/Smalltalk-inspired languages contre l'ancien regime!
what would Matz do?
Friday, September 01, 2006
Given the author, I am hardly shocked that he he thinks Ruby on Rails is a fine platform.  It's great that he's making good bank over there with 37signals.  He had something of an in, because he was working with a team that by definition of the team understood Ruby and Ruby on Rails.

I'm pretty sure that there's exactly one company in the world that fits that definition.  For most of us it's very bad to be forced to develop our own development environment.  I'm not paid to develop tools for programmers, I'm paid to develop applications.  Mostly I just want tools that will let me do that, not tools that will force me to invent other tools that I'll need to build the application.
Clay Dowling Send private email
Friday, September 01, 2006
Clay, I suspect you have a mistaken impression that Rails somehow requires more work than other solutions to get it to do the things you need it to do? There are at least three companies dedicated to Rails development, and a zillion more top-notch freelance Rails developers. And there are more Ruby enthusiasts than Rails developers.

I also think DHH is right. Joel is resisting a new technology simply because it's a new technology, rather than evaluating it on its merits. That's valid from a CYA perspective, but it also means you're working poorer and slower than you need to be working. If that makes you successful in your job, you really need to reevaluate your career and think about whether your company is really a healthy place to work. Would you want your offspring to work in your job?
Friday, September 01, 2006
I was making no claims about the quality of Rails at all.  But it is unlikely that it has the full set of tools around it that other platforms do, simply because it hasn't been around enough.  For that reason, I would either need to build my own tools to replace those I don't have, or go without.  For some projects it might be worth it.  For the very boring and unexciting application I work on at my day job, there's unlikely to be a real benefit to choosing a bold new platform that won't be outweighed by the cost of building up the equivalent tools to replace the ones that I could no longer use.

I'm not working here to change the world.  I'm working here to pay my mortgage.  Go off and play with your shiny new tools, but recognize that there's lots of us here working with the same tools we've used for years and we're getting done what we need to get done.
Clay Dowling Send private email
Friday, September 01, 2006
Other than do a lot of name calling, what is there to agree with in DHH's response? And the fact that he didn't seem to get the wasabi think was a joke would make me question whether he's worth agreeing with at all.

Unless I missed something, the whole point of Joel's article was to pick the language or platform you are comfortable with because that's likely the one you will get the most done in. And with the mainstream technologies, whatever their shortcomings, the shortcomings are well known and you can save yourself a lot of time be learning from the mistakes of others.

I don't think he specifically said anywhere not to use any of the technologies he mentioned. He was merely pointing out that some choices are safer than others. I think he's right about that. And having done some work with companies that ship large enterprisy things I can say for sure he is right about his assessment about large enterprises not being too keen on new whiz bang technology. That doesn't mean the technology is bad.

I think that DHH and a lot of the Ruby community are taking such a blog-post-about-nothing speaks volumes about the maturity of the lisp community. I'm guessing one won't find similarly outraged responses from luminaries in the lisp or Ocaml communities. Rails got about 1/2 paragraph out of an 8 paragraph or so essay and people are getting all fired up about it.

Maybe I'm crazy, but I find this post to be a brilliant statement of the obvious and somehow people are getting all fired up about it. Get over yourselves, people.
Bart Park
Friday, September 01, 2006
"I think that DHH and a lot of the Ruby community are taking such a blog-post-about-nothing speaks volumes about the maturity of the lisp community"

that should be maturity of the Ruby community.

I need lunch. Sheesh.
Bart Park
Friday, September 01, 2006
Yeah, DHH's response is some shrill fanboyism.  Hint: any article that quotes long passages without actually responding to them is not worth reading.  Boo hoo, his platform of choice didn't receive the Joel blessing.  And he didn't "get" the Joel's article at all.  And the bit at the end about Wasabi is so ignorant it makes my skin crawl.
bmm6o Send private email
Friday, September 01, 2006
Notice he did not actally refute the notion that Ruby is slow (Joel is hardly the first to notice) or fails to support Unicode in a first-class way.

I love the part where he says Rails is mature because it has been around for "two-something years."

Just because someone raises fear, uncertainty and doubt does not mean they are wrong. They are only wrong if they are, um, wrong. Citing specific facts that cause you fear, uncertainty, and doubt is perfectly fine if you are accurate.

Given how generously and maturely DHH handled my own slings and arrows at Rails (which I never intended many people to see), this blog post sort of surprises me.

Rails is getting there, but it's not there yet. It is widely acknowledged that it's tricky to get multiple rails apps working on one machine (not impossible, but tricky), that there are dead ends in connecting Rails to the Web (fcgi), and that Rails does not play well yet with the planet's most popular Web server.

Rails has done incredibly well for a framework with less than three years on it. DHH should be proud, not defensive. Oh well.
a Hack
Friday, September 01, 2006
DHH didn't address the two of the issues Joel brought up:

(1) it displays a stunning antipathy towards Unicode and (2) it's known to be slow, so if you become The Next MySpace, you'll be buying 5 times as many boxes as the .NET guy down the hall

Joel brought up other good issues such as integrating with old goofy systems that DHH didn't address (probably because he never encounters this).

Bottom line is there's a very specific sweet spot at which RoR is probably the best at what it does.  For the other 90% of web stuff, Joel is probably on the money.
Crimson Send private email
Friday, September 01, 2006
Bart, I like your post but I do think Joel's piece had a tad more bite than you describe. His point about, say, Perl and to a lesser extent Ruby is that you have to invest loads of time and only then do you find out whether a language sucks. And, yes, as you describe he then said you'll probably end up sticking in your language world for a variety of good reasons.

But the implication was that if you pick wrong you are pretty frigged, and he pretty much came out and said Ruby was a wrong choice right now if you want your app to scale. (Even moreso for Perl and that other stuff, ISAPI DLLs or something.)

He was right about Ruby and to a certain extent about Perl, but I don't think DHH is imagining things when he sees a form of attack on Ruby. DHH is, however, wrong to be so defensive about valid criticism of a young framework ;->
a Hack
Friday, September 01, 2006
>>But the implication was that if you pick wrong you are pretty frigged, and he pretty much came out and said Ruby was a wrong choice right now if you want your app to scale. (Even moreso for Perl and that other stuff, ISAPI DLLs or something.)<<

It's easy to ignore stuff like that when you either know it is wrong (perl works for Amazon and they seem to be more or less getting by) or you are secure in your choice of language or platform (as I imagine, given that it has hit the half century mark, most proficient lispers are).

The difference between Amazon and enterprise stuff, however, is that Amazon owns their servers and mointors their environmant and can use whatever they want. Paul Graham even mentions this aspect specifically when talking about Viaweb and one of the reasons they were able to use lisp. Enterprise stuff is either sold and you walk away from it and it runs and runs and runs or you sell it and then the customer rips it open and customizes the crap out of it. In both of those instances you have issues if it is not written in something mature and stable and has a wide body of people able to look at the language and platform and work with it. Either way, since the original author is not there to babysit the app, it has to be written so when it falls over somebody can pick it back up again. That's one of the things you get with a large ecosystem. I can honestly say I've never worked anywhere that I could walk down the hall and say I had a reasonable chance of finding somebody that knew ruby, lisp or even python. with VB, C#, java, php and C++ I'm sure I can walk down the hall and find at least 1/2 dozen people that know those languages well.

Personally I think there was more bark than bite in the article for those reasons. If that article was an attack on Ruby I think it was about as effective as a firefly attacking my windshield while I'm driving my car on the highway. If what Joel posted is right, maybe they should say thank you for mentioning the problem and fix it. If they are wrong they should point out why it is wrong. Either way, getting your undies in a bunch over one man's opinion and doing nothing but cry about it makes you look kind of silly.
Bart Park
Friday, September 01, 2006
"Bottom line is there's a very specific sweet spot at which RoR is probably the best at what it does.  For the other 90% of web stuff, Joel is probably on the money."

What's your source for that percentage breakdown?
John Topley Send private email
Friday, September 01, 2006
The whole "FUD" thing shows just how much of an arrogant fool DHH is. Joel has no reason to promote say, Java over Ruby.

To the best of my knowledge, he never uses Java. He doesn't write books on Java or run courses on it.

Can someone tell me... has DHH ever worked anywhere that he had to work on a system with complex requirements? Somewhere that would mean that his opinion might have some validity?

Reading the post and the comments, I'd suggest that it's the Ruby/RoR people who are fearful. Perhaps because RoR hasn't actually taken over the world and beaten Java, and outside of a few dink Web 2.0 apps, isn't used much.
Tim Almond Send private email
Friday, September 01, 2006
If you look at what Rails is, he read Martin Fowler's book "Patterns of Enterprise Architecture" and implimented all the patterns in Ruby. That's it. I'm suprised nobody seems to have noticed this.

DHH isn't a trained computer scientist or software engineer. He doesn't know how to program in C. He doesn't know anything about language design. He doesn't even know basic math, something which he posts about on his blog. He can't address or even understand Joel's point because he doesn't really even know what Joel is talking about.

There are two things coming out of this.

The first are his incoherent tirades whenever anyone says something critical about Rails.

Are you a college graduate who has ever got into an argument about something like, say, Psychology 101 with someone who fancies themself an intellectual but didn't go to school? They always get crazily defensive because they are insecure about their background and that they don't know what they are talking about. When usually, its not even an interesting topic to be discussing in the first place.

The second is the direction Rails is headed. Since most web apps are CRUD applications, DHH is now giving talks about how everything should be modeled like a CRUD application. This is the wrong way to go especially when the most interesting work being done in web development are systems which are trying to overcome the statelessness of HTTP.

"COMET" apps are the future of the web, not the ultimate CRUD framework. Rails is already behind the times.

Regards to FUD, everything Joel points out is true, and this is coming from someone who has built three large scale Rails apps in the past 1.5 years.

Internationalization is a giant pain in the ass, Rails is slow, and it is hard to find Rails developers.
Friday, September 01, 2006
What is COMET?
Rick Tang
Friday, September 01, 2006
<a href="">COMET is defined in Wikipedia.</a>
MikeB Send private email
Friday, September 01, 2006
Ouch. That sure didn't work. I apologize for not reading the fine print about not using HTML!
MikeB Send private email
Friday, September 01, 2006
Thanks for not calling me an idiot!

Rick Tang
Friday, September 01, 2006
John asks:

"What's your source for that percentage breakdown?"

Trust me when I tell you that you don't want to know the source! :)

Anyway, when I say other 90%, I mean in terms of "web development jobs" and that comes from me talking to recruiters, job searches, and seeing what's out there.  Yes I know the number is made up and yes I know my perspective is skewed, but who's isn't say! :)
Crimson Send private email
Friday, September 01, 2006
This has got to be a joke...

"for Serious Business Stuff you really must recognize that there just isn't a lot of experience in the world building big mission critical web systems in Ruby on Rails"

And then:

"[in summary] For my company's premiere app, I use a language for which there is NO experience in the world -- outside my company -- building apps of ANY size."[1]

I checked the calendar. It's not April fools. So WTF is it?

[1] FogBugz is written in Wasabi, a very advanced, functional-programming dialect of Basic with closures and lambdas and Rails-like active records that can be compiled down to VBScript, JavaScript, PHP4 or PHP5. Wasabi is a private, in-house language written by one of our best developers that is optimized specifically for developing FogBugz; the Wasabi compiler itself is written in C#.
Jared Nuzzolillo Send private email
Friday, September 01, 2006
"DHH isn't a trained computer scientist or software engineer. "

People without degrees in CS are just sooooo useless! ra!
Jared Nuzzolillo Send private email
Friday, September 01, 2006
Now we know that Wasabi is not a joke.

So, me lowly programmer is changing opinion -- DHH has a good reason to be angry.

Just a little too angry and too quick to response.
Rick Tang
Saturday, September 02, 2006

If you sounded less like a troll people might be more inclined to engage you in conversation.
bmm6o Send private email
Saturday, September 02, 2006

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics
Powered by FogBugz