Download the MP3 (6.6 MB)
In this 12 minute audio training clip, David Heinemeier Hansson (37Signals & Ruby on Rails) discusses how Ruby on Rails makes coding easier, quicker and happier, by creating common conventions.
This session is from the 1-day event The Future of Web Apps, hosted by Carson Workshops.




This is all good advice. I’m still a little confused though why these types of discussions now, often around Ruby on Rails, is thought to be new. And I don’t mean offence by this, but this is all pretty standard operating procedure within the software development world. Working with entity objects, in C++, C# or Java all builds upon these kinds of principles, even an MVC framework takes these things into consideration early on.
For the curious, check out http://www.dofactory.com/Patterns/Patterns.aspx for more info on object design patterns.
A good thing that is coming out of these talks and writings is getting people thinking more OO and less top down which is overwhelmingly dominant in the PHP world.
Nice little talk. One thing — somebody slap the guy who does the intro back into normalcy. Or do you talk like this in real life?
@Stephen:
The difference between architectural patterns and what RoR is doing is in that convention carries meaning beyond good coding practices. As DHH explains, convention is relied upon by framework itself to infer names and behavior — unlike your typical C++/C#/Java conventions that are only useful for readability of code.
Point taken. And maybe David could expand upon it more, because the examples were pretty simplistic. Like I said, basic entity objects which are not new, nor is the way of naming them. Things are different when you are working with abstract terms and sets up objects that don’t always have direct mappings. That is why we have patterns, to provide solutions to solved problems that are complicated. If everything was as simple as this it wouldn’t be a problem.
Who said any of this was new? What Rails does is simply to rely on and promote good practices that has existed for a long time. So the practices themselves are not new, but our way of rewarding consistent use is at least more than most comparable web frameworks out there (following conventions means you don’t have to configure anything, using generators means that you automatically get test stubs, so on and so forth).
David, can you post that pieces of code, that you’re talking about in this clip?
That sounds valid. I agree that the discussed code would be good to see. I still stand by my statement that this is new to the PHP world which will be good for them.
Transcript?
Stephen, Not all php coders or even ruby coders are coming from a c++/C# background.. some of them come to it from the other end and these high level languages are their first languages. Not a preferable situation.. but it’s the way things get done. Background and review to you is mindblowing CS100 to them.. ; )
It doesn’t hurt you, and it benefits them.
David, my opinion on web frameworks or frameworks in general is that the shouldn’t limit you to one way or only a few ways of doing something in the framework.
Most of the frameworks are really frameworks, you can’t easily go out of the famrework.
So, the title framework isn’t really matching for Rails. In Rails i don’t feel this “framework” feeling it’s more like a “foundation” feeling, because i don’t feel limited!
Beatiful code means to me that i’m fully able to design it, like oh i wan’t this “if statment” in one line, and ruby allows us to do so.
And that makes me happy and i really enjoy the hours afterwork doing programming on rails projects.
Yes, transcript please? I’m deaf so the information is currently inaccessible to me but I’m very interested.
Comparing the power of the Rails ORM to Hibernate. If your project is bigger than five tables, give this a read.
http://www.theserverside.com/tt/articles/article.tss?l=RailsHibernate
I’m pretty sure basecamp probably has more than 5 tables…
[…] Procurando começar com Rails, mas nunca usou Ruby? Esta instrodução rápida ao assunto, por Geoff Grosenbach pode te ajudar. Geoff discute temas como objetos em Ruby, instâncias, constantes, classes de variáveis, heranças e muito mais. [ site | download mp3 ] […]
I am a fan RoR and am actively integrating it into my current work. However, one thing that I absolutely hate is their damn buzz engine. It doesn’t convey enough of the negatives or prepare you for the hurdles of becoming a RoR developer and the REAL hurdles of creating a production environment for your clients.
And again, I think someone has said this already. None of what they do is new except they have created an excellent package that forces you to use the most proper form of code organization.
Bottom line the zealots are annoying.
Yes, transcript please? I’m deaf so the information is currently inaccessible to me but I’m very interested.
Look This site :)
http://www.ooYes.net
That’s great! I’m looking forward to it
http:www.izlebak.net
http://www.kelebekler.net
thanks
I don’t know what to say about ruby on rails, the development is FAST, nevertheless the syntax is awful, i prefer an PHP framework such as CAKE PHP or CODE IGNITER instead.
Danke
http://www.samsunsehri.com
sorry danke
Danke soorry
Danke
Dankeee.
[…] Aaron says (on May 10th, 2006 at 4:08 pm )Stephen, Not all php coders or even ruby coders are coming from a c++/C# background.. some of them come to it from the other end and these high level languages are their first languages. Not a preferable situation.. but it’s the way things get done. Background and review to you is mindblowing CS100 to them.. ; ) […]
dankee
I Think İt is Very good information ….
Thanks…
I think you did a great job of pointing out the major strengths and weaknesses of the book.
There are many useful informations in this great article…I really enjoy reading the whole blog that you write. Thanks!..!
“A good thing that is coming out of these talks and writings is getting people thinking more OO and less top down which is overwhelmingly dominant in the PHP world.”
Well, I come from a very strong object-oriented background (Java and C++), but I also program in PHP.
I agree that the majority PHP coders tend to make spaghetti code, but there are many who push for good, clean OO code, often with an MVC framework such as Symfony or CakePHP.
PHP isn’t the problem, it’s undisciplined coding that’s the problem.
thanks