I am new to the list and Rails (and Ruby, for that matter) and whilst I was a bit skeptical due to the hype it's causing, I am starting to really like it and there seems to be a really active and friendly community behind it which is an added bonus.
I have been writing web applications for a while now using different languages and frameworks (including hand-written ones just following best practices). I like it how Rails combines a lot of best practices and how its conventions guide the user to writing good applications (which I am convinced is possible on any kind of platform, but you need to know what you're doing, whilst Rails often takes you by the hand and stops you from getting off track).
There is two things I would like to comment on: 1. How Rails creates a mess on the client-side violating the MVC 2. Why I don't see the use of RJS
1. How Rails creates a mess on the client-side violating MVC Whilst this has often been obscured by messy coding practices, you can easily think of the client side of a web application as implementing the MVC-paradigm. M: HTML is the model. Good HTML does not include any presentational information. (e.g. that is why nowadays there is a wide consensus that HTML-tables are not meant to be used for layout) V: CSS is the view. It defines how HTML data is presented on the screen. I admit that a certain part of the presentation is pre-defined by the ordering within the HTML, but stylesheets still allow you to fundamentally shape a page C: JS is the controller. It defines the beaviour of elements on the page and in more advanced applications (especially AJAX) it manipulates the HTML data.
An attempt has been made by Luke Redpath and Dan Webb by providing the UJS plugin (http://www.ujs4rails.com/). However, Dan lines out himself that it is a somewhat half-hearted attempt (danwebb.net - The State (And Future) Of The UJS Plugin) The plugin may create cleaner code in the end and may save you band-width by keeping your JS out of your HTML (thus having to download it once only). But to my mind, UJS is above all about programming practice, about clean and maintainable code and the plugin doesn't help that.
I am very keen on hearing your comments! Thanks Stefan