PayPlay.FM development.log

Tuesday, February 10, 2009

what is Rails now?

I thought about this post long ago, but yesterday found great similar post by Josh Susser.

I started writing rails sites about four years ago. It was something like 0.12 version and I still have CHANGELOG file in RAILS_ROOT of my first working rails site. I don't mean I am a guru/old-school hacker- I'm not. I just want to say that I can see difference between Rails start and where it is now.

Rails was simple and it was its most promoted feature - you could watch screencast, read couple of brochures like "rails in 4 days" and that was all - you were able to begin working with rails. Even without seeing ruby before.

Remember picture with pack of java books against two rails manuals? Many things changed since then.

Now to start new rails app, lots of decisions need to be taken: choose template engine, choose testing suite, choose ORM, choose javascript library. Rails became a skyscraper where every stage can be different. With Rails 3.0, when merb is merged in, things will be even more complicated.

You can't specify application environment just by calling it Rails. From now you need to clarify what your Rails is (haml,mocha,datamapper,prototype) or (sequel,erb,rspec,jquery) or whatever else you want to use.

Yes, you can use default options. But you still need to know other options if you want to be competitive. I think this 'flexibility' might be scary for beginners - there are too many options, too many ways of doing similar things.

I don't want to say that freedom of choice is bad thing. I just think rails is too fragmentized now. Maybe it is growth problem and it will be solved in future with something like common interfaces or by abandoning some technologies.

Labels: ,