At the end of May, I travelled to Kyiv to attend the ruby conference. I’ve been twice before - in 2014 and 2016 - and try to make it whenever I can. It’s a great event, bringing together some of the great Ruby minds together under one roof.
The main goal of the conference was for the audience to hear great rubyists talk, discover where Ruby innovation is going, finding new contacts and - obviously - to have fun!
Ah, also, as usual there were numerous clashes - or holy wars, as we call them - around using
’, spaces or tabs!
So I wanted to share the talks that most blew me away and which I think are useful for all Ruby developers out there.
My highlights of the event are as follows:
Ruby 4.0: To Infinity and Beyond
The speaker introduced a special vision of the Ruby language, its ecosystem and community. The talk was also dedicated to picturing a course towards a mystical release of Ruby 4.0, which could potentially ensure Ruby’s dominance.
Batsov showed us Ruby’s current weaknesses, which will hopefully be resolved in Ruby 3.0 - very insightful!
The speaker spoke about several concepts, such as idiomatic Ruby, concise code, readable code and exact code. The talk touched on how these concepts can be applied and how subjective or social they are.
This talk held some interesting insights in making code more readable and gave general code style advice.
Problems you’ll face in the microservice word: configuration, authentication
This talk was dedicated to a microservice issue, with particular focus on authentication and configuration. There are many ways to achieve distributed authentication, though it’s hard in general. With configuration there are several questionable issues too, specifically when one deals with the distributed micro application strategy.
Very interesting and experienced speaker who talked about different microservice aspects, such as communication, authorisation, and analysed when we really need to split out microservices and choose new service technology. Quentin gave insightful advice on building a microservice strategy.
This talk showed how one can effectively use tools, such as RuboCop and Reek, to make static code analysis possible even though Ruby highly dynamic. The speaker also highlighted specific approaches which help make informed decisions on when and how to refactor and learn to spot potential code smells when they are introduced.
The speaker told us about some code smells in Ruby, how to solve them and presented his gem
reek, which can help find smells in your project. As Szotkowski said, this is ‘rubocop’ for architecture.