After the initial greeting, Piotr Solnica began an interesting presentation cycle about functional programming. He introduced a few rules and the advantages and disadvantages of using this programming paradigm in Ruby.
The next presentation aimed to show the problems of people with Asperger's syndrome. The speaker, Michal Papis, focused on the struggles that people with this disorder face both in IT and in their daily life. He also presented ways to make it easier for them to function efficiently at work.
The third presentation of the day was conducted by Anton Davydo, who talked about the Sourcing Event. There are a number of reasons that a sourcing event might be considered complex and in this workshop, he discussed few main challenging aspects such as calculating the final state based on stored events, recording events in the Event Store and using the Saga Pattern.
The fourth and last appearance, before the lunch break, was a talk about modifying the Abstract Syntax Tree in Ruby by Jônatas Davi Paganini. This speech was rather fascinating as were shown how to create a tool for automatic correction of '!array.any?' On 'array.none?'.
During the break, the organizers invited us for a “meet-and-greet” lunch, where we could exchange impressions from the first part of the conference and network.
The second part of the conference began with the presentation of Hasumi Hitoshi on the mruby / c - Ruby implementation for microcontrollers. During his speech, Hatsumi introduced us to the basics of mruby / c and showed his own project to monitor the concentration of carbon dioxide in the air.
The next talk was about Kafka and was delivered by Spyros Livathinos. He familiarized himself with the operation of this platform and showed how it can be used in Ruby.
Following, we participated in an engaging workshop about machine learning related to the Ruby language. Its author, Jacek Brozek, debated that, although Python is the leader in this field, Ruby does not have to be underestimated as it can be efficiently used for this purpose.
The conference closed with the speech of Marcus Schirp, who introduced us to the concept of mutational testing. Mutation Testing is a type of White Box Testing, which is mainly used for Unit Testing and we got some useful insights. In today’s industry, having a great product might not be enough. Competition is always around the corner, companies are becoming more and more interested in quality and a key advantage for success is the ability to move fast. One great solution is Mutation Testing, as it allows to change the code - a small part at a time - and running the unit tests suite repeatedly.
We finished the day by eating a delicious dinner and drinking locally brewed beer. Of course, what else would you do when you find yourself in a fine brewery?! We definitely had a great time, exchanging knowledge and experience with other Ruby geeks. And remember - Ruby is alive and is doing well :)