Ruby is no longer the "unknown" language. It has become known by developers around the world and is the preferred language by many. Ruby gets the best from the object-oriented, functional and imperative worlds, but most of all it is fun! However, Ruby is not a "beginners" language and this track will introduce the language in the best possible way.
It is almost impossible not to have heard about Ruby on Rails! Ruby on Rails, or just 'Rails', is a framework for building web applications in Ruby. By convention over configuration Rails makes it fast to build functional database-backed web applications, but Rails is also a great way to get introduced to the Ruby language. We will get an overview of Rails and get you ready to build your first Rails application!
Whichever language you prefer, having proper tools support is important for your productivity.
Statically typed languages like Java or C# enjoy IDEs with lots of advanced features for helping the programmer type in the code. In a dynamically typed language like Ruby, creating such IDE features is a lot harder. However, advanced Ruby IDEs are finally becoming mainstream. We will have a look some of the most popular IDEs.
When you cannot get your IDE to automatically create working code for you, test-driven development becomes a more natural choice for the development process. Thus, the Ruby world has been very keen on test-driven development, and the dynamic nature of Ruby allows for some interesting approaches to testing. We will be guided through a couple of frameworks that ease the testing process.
When Ruby was designed, performance was not a first priority. Instead, we got a great, dynamic language that everyone can use, but Ruby is often criticized for having bad performance. However, performance in today's solutions is crucial, and new Ruby virtual machines are popping up with greater performance than the standard implementation. In addition, these new VMs offer new possibilities in regards to interoperability with e.g. the Java and .NET platforms.
We will run through the most important new, exciting developments in the Ruby VM world.