%HTMLlat1; %HTMLsymbol; %HTMLspecial; ]> Ruby on Rails, and other Open Source frameworks
Roland van Ipen­burg
To be stolen or blogged

Ruby on Rails, and oth­er Open Source frame­works

Satur­day 22 Oc­to­ber 2005 23:26

Ruby on Rails is a web ap­pli­ca­tion frame­work, which is hyped to be the bomb. OK, the in­stal­la­tion was a breeze, as ad­ver­tized, but af­ter read­ing on a bit, it seems all so point­less to me. The out of the box Model-View-Con­troller pat­tern might steer a de­vel­op­er away from a meri­ad of spaghet­ti cgi scripts or php pages, since this is ex­act­ly what new­bies tend to very en­t­hou­si­as­ti­cal­ly screw up big time. It can be used to build some­thing that might be in­ter­pret­ed as a web­site in very lit­tle time with very lit­tle code. But then it prob­a­bly sud­den­ly gets com­pli­cat­ed. Ba­si­cal­ly all the frame­work does is map URLs to skinnable views avail­able in a web­brows­er. This is cool for Joe Scrip­tkid­die who want's to put some shit into a mySQL data­base and pro­gram a "user" in­ter­face around it, but over 10 years ago real data­bas­es could just do that by them­selves, and 5 years ago real data­bas­es of­fered a sim­i­lar MVC web-in­ter­face, and years ago oth­er MVC based ap­pli­ca­tions were avail­able. Why weren't they suc­cess­ful then?

If the Ruby on Rails ap­proach re­al­ly dec­i­mates the de­vel­op­ment time, it would be worth to in­vest in such an ap­proach. Maybe Or­a­cle or Sun had such an ap­proach, put a com­mer­cial pric­etag on it and off course no de­vel­op­er out of the 2-month-sin­gle-de­vel­op­er-project cat­e­go­ry was in­ter­est­ed in a prod­uct that ap­par­ent­ly saves 90k on a 100k project. And now these de­vel­op­ers try to push a "scal­able" so­lu­tion into the high-end?

The web is more than just a thin GUI to a data­base, and an MVC web ap­pli­ca­tion is not a Con­tent Man­age­ment Sys­tem. So, while I'm read­ing about Ruby on Rails I'm think­ing of the around 150 mul­ti-lin­gual con­tent man­aged web­sites with sev­er­al back-end con­nec­tions I'm in­volved in. Look­ing at the Ruby on Rails "suc­cess sto­ries" I won­der whether the de­vel­op­ers are blind, or it must be re­al­ly com­pli­cat­ed to use some im­ages to go with the text. Sure, from a data­base point of view it kind of screws up your MVC if you want an ar­bi­trary num­ber of im­ages to be able to be min­gled be­tween some text, and the back-end GUI to man­age them wouldn't be that straight for­ward any­more ei­ther. Which makes the clean frame­work pret­ty use­less be­yond the realm of self-in­dulged blog- and wiki sphere. It would be some­thing Mi­crosoft would get right be­cause they know their cus­tomers re­al­ly want nice im­ages...

Real­i­ty isn't al­ways clean and log­i­cal, and mod­els aim­ing for too much of it break eas­i­ly un­der the pres­sure of real de­mands. The client pro­vid­ing the busi­ness "log­ic" is just a hu­man and the vis­i­tor ex­pe­ri­enc­ing the UI is also just a hu­man, and in be­tween there is lit­tle need to go be­yond what they con­sid­er log­i­cal in their own - some­times stu­pid - sys­tem of ref­er­ence. Life is like a bunch of ever chang­ing hacks, and so­lu­tions should be able to han­dle them. Un­less you're on the bot­tom end im­ple­ment­ing Open Source so­lu­tions be­cause your clients can't even af­ford the pro­pri­etary al­ter­na­tive. But then you're prob­a­bly solv­ing an­oth­er prob­lem...

Another is­sue is in­creased beta sta­tus. For an Open Source project to be suc­cess­ful it needs de­vel­op­ers, prefer­ably be­fore the prod­uct is ready to use. But it's hard to pro­mote some­thing that doesn't work yet, so de­vel­op­ers have to be tricked into us­ing some­thing that isn't fin­ished yet on a pro­duc­tion en­vi­ron­ment, and have the lock in force them to fix the bugs. Ad­ding beta does just that. The only down­side to this is that the project starts to smell of un­sta­ble­ness which is hard to get rid off. Re­lease can­di­dates aren't re­al­ly re­leas­es, scal­a­bil­i­ty starts with sta­bil­i­ty. And I re­al­ly should stop read­ing slash­dot.


Book­mark this on De­li­cious

Add to Stum­bleUpon

Add to Mixx!


David Heine­meier Hans­son

Sun­day 23 Oc­to­ber 2005 22:24

re: Ruby on Rails, and oth­er Open Source frame­works

Although it's un­doubt­ed­ly more fun to play straw­man, you might want to ex­pand your un­der­stand­ing about what Rails for round two. O'Reil­ly has a pret­ty de­cent sum­ma­ry of the el­e­ments at http://www.on­lamp.com/pub/a/on­lamp/2005/10/13/what_is_rails.html

It doesn't quite gel with the world view that "Ba­si­cal­ly all the frame­work does is map URLs to skinnable views avail­able in a web­brows­er", but you may be in­ter­est­ed none the less.


Mon­day 31 Oc­to­ber 2005 21:32

re: Ruby on Rails, and oth­er Open Source frame­works

My main dis­ap­point­ment was that Ruby on Rails isn't the killer app it seemed to be. Three years ago I was al­ready us­ing Perl based MVC frame­works like May­pole/Cat­a­lyst, so there might be a big ad­van­tage of Ruby on Rails over home­brew Java con­trap­tions, but be­ing able to do it the Perl way doesn't im­me­di­ate­ly push me to learn Ruby, or em­bark on projects in­volv­ing SLAs de­pend­ing on hir­ing Ruby skills. And from a dis­tance there's lit­tle dif­fer­ence be­tween Goth­ic and Visu­al Kei.


application away browser buy cool data days different flash game gta html ibook internet linux movie open play playstation possible run screen server side site stuff system train web windows work

Blog Posts (418)

Image Gal­leries

ipen­bug Last.fm pro­file

ipen­bug last.fm pro­file

Fol­low me on Twit­ter

Roland van Ipen­burg on face­book
Lin­ux Regis­tered User #488795
rolipe BOINC com­bined stats


Add to Google

Valid XHTML + RFDa Valid CSS! Hy­phen­at­ed XSL Pow­ered Valid RSS This site was cre­at­ed with Vim Pow­ered by Bri­co­lage! Pow­ered by Post­greSQL! Pow­ered by Apache! Pow­ered by mod­_perl! Pow­ered by Ma­son! Pow­ered by Perl Made on a Mac Pow­ered By Mac OS X XS4ALL This site has been proofed for ac­cu­ra­cy on the VISTAWEB-3000 Creative Com­mons Li­cense
This work by Roland van Ipen­burg is li­censed un­der a Creative Com­mons At­tri­bu­tion-Non­com­mer­cial-Share Alike 3.0 Un­port­ed Li­cense.
Per­mis­sions be­yond the scope of this li­cense may be avail­able at mail­to:ipen­burg@xs4all.nl.