Training: "Advanced Ruby"

Track: Tutorial

Time: Tuesday 09:00 - 12:00

Location: Henry Moore Room

Abstract:

Ruby describes itself as a dynamic programming language with a focus  

on simplicity and productivity. It has an elegant syntax that is  

natural to read and easy to write. These properties allow beginners to  

quickly become acquainted with, and effective in using, the language.  

At the same time, Ruby's flexibility and remarkably dynamic nature  

enables experts to harness its true power - the power which is at the  

heart of Ruby's success stories such as Ruby on Rails, RSpec and  

Sinatra.

 

This tutorial will provide an overview of the advanced concepts within  

Ruby. Together we will venture through the essence of what makes Ruby  

so flexible and dynamic. We will explore the power of open classes,  

meta-classes and modules and take a look at some of Ruby's many useful  

hook methods through the use of a series of examples. For those  

interested in interoperability, we will also look at communicating  

with other languages such as C, Java and Objective-C. Finally, we will  

bring many of these concepts together and look at a real world example  

illustrating the ability to fold Ruby into readable Domain Specific  

Languages, allowing us to express business logic in a way that is  

readable to clients.

 

No prior knowledge of Ruby is necessary to appreciate this tutorial,  

although a good understanding of Object Oriented concepts would  

certainly come in handy.

Sam Aaron

 Sam  Aaron Sam is interested in the aesthetics of programming languages, domain specific languages and the more general concept of language oriented programming. He received his Ph.D. in Computing Science from Newcastle University, for which he designed a domain specific language to represent interests within virtual environments. Sam has also worked as a technical reviewer and essayist for Rails books, written Ruby news articles for InfoQ, co-founded the Newcastle and Amsterdam Ruby user groups, and works at Innovation Factory in Amsterdam.