Workshop: "Advanced Ruby"

Track: Tutorial

Time: Friday 09:00 - 12:00

Location: Trifork

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.
Keywords: Ruby, DSLs, Communicative Programming, Languages
Target audience: This talk will benefit you by providing an enlightening birds-eye view of the flexibility and power of the Ruby programming language for effective communicative programming.


Sam Aaron, Technical reviewer and essayist for Rails books

 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.