InfoQ

Presentation

Recorded at:
Recorded at

MetaProgramming - Extending Ruby for Fun and Profit

Presented by Dave Thomas on Dec 07, 2007

Community
Ruby
Topics
Programming ,
Ruby on Rails
Tags
Metaprogramming ,
Language Features ,
Qcon London 2007 ,
Ruby on Rails
Summary
Ever wonder just how Rails declarations such as "has many" and "belongs_to" work? Ever wished you could write your own code that worked the same way? It turns out that this style of programming, often called metaprogramming, is easier than you might think. In this talk we'll see how Ruby's open classes, compile-time execution, and full meta-object model make it easy to write your own extensions.

Bio
Dave Thomas is recognized internationally as an expert who develops high-quality software--accurate and highly flexible systems. He helped write the now-famous Agile Manifesto, and regularly speak on new ways of producing software. He is the author of six books, including the best selling The Pragmatic Programmer: From Journeyman to Master and Programming Ruby: A Pragmatic Programmer's Guide.

About the conference
QCon is a conference that is organized by the community, for the community. The result is a high quality conference experience where a tremendous amount of attention and investment has gone into having the best content on the most important topics presented by the leaders in our community.QCon is designed with the technical depth and enterprise focus of interest to technical team leads, architects, and project managers.
This is cool!!! by Jure http://blog.regulus.si Posted Dec 18, 2007 9:02 PM
eph by Andrei Zinca Posted Dec 19, 2007 3:55 PM
problems by jimmy coyne Posted Dec 20, 2007 10:24 AM
Re: problems by Sean Cribbs Posted Dec 22, 2007 11:58 AM
Re: problems by johan andries Posted Dec 28, 2007 3:00 AM
able to download this? by Hrafn Nordhri Posted Nov 5, 2009 12:58 PM
  1. Back to top

    This is cool!!!

    Dec 18, 2007 9:02 PM by Jure http://blog.regulus.si

    Tnx. It would be really nice if more Ruby presentations like this would be available.

  2. Back to top

    eph

    Dec 19, 2007 3:55 PM by Andrei Zinca

    An otherwise good presentation ruined by an awful, macabre joke.

  3. Back to top

    problems

    Dec 20, 2007 10:24 AM by jimmy coyne

    Is any body else having problems viewing this presentation?

  4. Back to top

    Re: problems

    Dec 22, 2007 11:58 AM by Sean Cribbs

    +1

  5. Back to top

    Re: problems

    Dec 28, 2007 3:00 AM by johan andries

    On Windows, for me it works in IE but not in FireFox.

  6. Back to top

    able to download this?

    Nov 5, 2009 12:58 PM by Hrafn Nordhri

    Are we able to download this?

Educational Content

Rails in the Large: How Agility Allows Us to Build One Of the World's Biggest Rails Apps

Neal Ford shows what ThoughtWorks learned from scaling Rails development: infrastructure, testing, messaging, optimization, performance.

Stuart Halloway on Clojure and Functional Programming

Stuart Halloway discusses Clojure and functional programing on the JVM in depth, and touches on the uses of a number of other modern JVM languages including JRuby, Groovy, Scala and Haskell.

Oren Teich and Blake Mizerany on Heroku

Oren Teich and Blake Mizerany talk about the technology behind Heroku and the benefits of the new add-on system.

Security for the Services World

Chris Riley presents security issues threatening service based systems, examining security threats, presenting measures to reduce the risks, and mentioning available security frameworks.

Navigating The Rapids:Real-World Lessons in Adopting Agile

This talk investigates technical issues encountered when moving to an Agile process.

Codename "M": Language, Data, and Modeling, Oh My!

Don Box and Amanda Laucher present “M”, a declarative language for building data models, domain models or external DSLs. Don Box's demos show some of M’s features and latest changes of the language.

SOA Manifesto - 4 Months After

It is four months since the SOA manifesto was announced; InfoQ interviewed the original author’s to get insight into the motivations and the process behind the initiative.

Memory Barriers and JVM Concurrency

This article explains the impact memory barriers, or fences, have on the determinism of multi-threaded programs.