Ruby nerd working for Olery (http://olery.com/) with a knack for static code analysis and breaking code.
Ruby is a flexible language but also a complicated one due to its dynamic nature. In other languages such as C and Python there are plenty of tools available that can aid developers in finding problems (and preventing them) in their code. Sadly with Ruby there are only a handful of tools available and those tend to focus more on coding guidelines instead of technical problems (such as the use of undefined variables).
For the past year I spent working on a tool that takes care of this: a linter for Ruby. It spots errors such as the use of undefined variables, method calls with invalid parameters and much more.
This talk will not just focus on that single tool. We'll be looking at the MRI parser (and the quirks of it in particular), the importance of knowing how a language is parsed and broader topics such as the importance of static code analysis and most importantly: how all of this can make your life as a Ruby programmer a lot easier.
A small note that's worth taking into account: this talk will be fairly technical. Although I'll do my best to make it accessible to people of different skill levels it still remains a fairly complex topic. I'll probably also include one or two cat pictures in my slides.
More or less both. Part of understanding the need for these tools is the limitations of the MRI parser. I won't go into too specific details though, one could speak for hours and hours about how the MRI parser works.
Will the talk give insight to the CRuby parser in order to appreciate the concept in general or in order to find plug-points to exploit in tooling?