RubyGarage on RubyC 2018
- 8861 views
- 7 min
- Jun 18, 2018
Since Ruby is our language of choice, the RubyGarage team actively promotes, supports, and contributes to the Ruby community. We started this hot season by visiting RubyC. Find out how it went and why RubyC is worth visiting yourself.
What is RubyC all about?
RubyC is held annually on the first weekend of summer. Hundreds of Ruby enthusiasts and developers visit Kyiv to get practical and technical content, сollaborate, discuss the latest innovations, and learn from their peers.
Two days of learning all about Ruby trends, meeting loads of wonderful developers, and having fun – that’s what RubyC is all about.
What do I like most about RubyC? It's the friendly atmosphere and informal communication with people who love Ruby the way I do.
Dmytro Hrechukha, our backend development lead, agrees with Max:
RubyC is a close-knit community where I found lots of friends. RubyC gives us the precious opportunity to find like-minded people and share our visions.
The conference organizers created the perfect balance between studying and free time.
And, of course, RubyC helped our developers upgrade their technical skills.
RubyC delivered an amazing lineup and high-quality talks about Ruby and beyond.
Highlights of RubyC 2018
I was astonished by the ideas speakers came up with for their presentations. Some speakers showed interesting slides, another drew in attendees with artistry and interactivity.
Anton remembers most Charles Nutter who took three bottles of beer from the USA for his talk about JRuby. Charles said that two bottles would go to participants asking questions after the presentation and one would go to a person who would program anything in JRuby during the two days of the conference.
Charles, however, is not the only interesting speaker at RubyC. We’ve interviewed our Ruby developers to create a list of their favorite speakers. Here they are.
#1 Volodymyr Vorobyov
Volodymyr Vorobyov is a software development consultant, an experienced speaker, and the creator of a Ruby/Ruby on Rails web development course. At RubyC, he broke down the clean architecture concept. Volodymyr also outlined how to scale development and app architecture, deploy and conduct tests efficiently, and add more technology stacks with no failures.
Anton Vukolov has this to say about Volodymyr's talk:
Volodymyr introduced a new, fresh approach to organizing code.
Anton admits that we have thousands of solutions for one task and the easiest solution is to write the whole code in one file. Yet he admits that this solution can lead to fat controllers and models when working with growing business logic.
That’s why Volodymyr showed the clean architecture approach where you need to split a code into small pieces using Domain-Driven Design (DDD).
Volodymyr explained to us how to make our code easy to read and support. So now we need just to test this approach.
Yevhenii Poberezhnyi found this talk interesting as well:
Vova showed us the way we can use DDD in a Rails app and drew the way we can switch from a monolithic architecture to a microservice one with minimum expenditure.
I think that DDD is an extremely urgent topic in the Rails community. DDD lets us move the code from Rails inside elements to the business logic level.
#2 Charles Nutter
Charles Nutter is a senior principal software engineer at Red Hat, a Java Champion, and a Ruby Hero. His talk was devoted to the JRuby language. During his presentation, Charles defined the position of JRuby in the modern programming world and demonstrated how to build fast and scalable applications with JRuby.
Here’s what Yevhenii Poberezhnyi has to say about Charles’ talk:
Charles displayed a new version of JRuby compatible with Ruby 2.5 and the optimizations his team made. He elucidated the usage of JRuby with Rails and described available functionality.
Yevhenii found out that it’s possible to reduce the cost of app deployment on Rails using JRuby and the concurrency available with it. He also learned that it’s possible to JRuby with libraries written in JVM-compatible programming languages: Java, Scala, Kotlin, and others.
#3 Andrzej Krzywda
Andrzej Krzywda is the CEO of Arkency, a former Ruby and Rails instructor at the University of Wrocław, author of the book Fearless Refactoring: Rails Controllers, a Ruby books publisher, and a wroc_love.rb conference organizer.
Andrzej elaborated on Domain-Driven Design in PHP. He told the audience about the different phases and styles of writing code that he has identified in his professional life. Andrzej presented code for each style and discussed benefits and drawbacks.
Here’s what Kirill Shevchenko highlights about this talk:
I remember Andrzej’s presentation by vivid examples of real projects done with DDD. He also drew broad comparisons with other approaches to software development.
Yevhenii Poberezhnyi, who also attended this talk, shares his thoughts as well:
Andrzej’s talk was especially valuable for me as he described his experience using Event Sourcing and CQRS in Rails applications.
If you’re interested in this topic, you can find links to GitHub repositories on Andrzej’s Twitter feed.
#4 Sergiy Kukunin
Anton says that Sergiy shared his personal experience working on one US financial system and failures he made on the way to the perfect code.
Sergiy understood that he was making no headway and that chasing perfection could lead only to a dead end. He advised us to search for a golden middle between сlean code and fast implementation.
Max Grechko agrees that Sergiy gave vision worth thinking about:
It was a true-life report on the importance of balance between architecture solutions and teamwork and the development cycle.
#5 Paolo Perrotta
Paolo Perrotta is a traveling coach, software mentor, and author of the books Metaprogramming Ruby and Metaprogramming Ruby 2. In his talk, Machine Learning Explained to Humans, Paolo described the technical foundations of Machine Learning.
Paolo described the basic algorithms of machine learning, showed the way these algorithms work, and gave a roadmap for a beginner specialist.
Paolo was charismatic and spoke confidently. He was explaining basic things, gradually complicating the material. This made the talk easy to understand.
Max Grechko also points to the clarity of Paolo’s presentation:
He used plain language and provided relatable examples.
#6 Iryna Zayats
Iryna Zayats is a developer with a 10-year career. Half of that time she was programming in Java and during the latter half she has been programming in Ruby. Iryna talked about the complexity of algorithms:
- How is complexity measured?
- Why does it matter?
- What are some common misconceptions?
Iryna laid out the basic concepts of сomplexity of distinct types of algorithms and cited examples of optimal and non-optimal algorithms.
Volodymyr Shvydkyi has this to add about Iryna’s talk:
She was able to explain the principle of finding the optimal algorithm to solve a particular problem in a clear and concise manner.
#7 Ivan Nemytchenko
Ivan Nemytchenko is a founder of the Skillgrid virtual agency, an IT events enthusiast, a Ruby developer and teacher, a Lean Poker facilitator, and a GitLab developer advocate. At RubyC, Ivan shared his personal experience and professional techniques.
There is an opinion that Rails developers chose not the most correct direction of development. Ivan gave examples of problems that create Rails-way, offered some solutions, and urged the community to be more active on this matter.
We’d like to say thanks to RubyC for such a great event and for the impressions it gave us. All participants strengthened their development skills and discovered new ways of writing code. RubyC connects people and guides the future of Ruby.
Share your experience of RubyC below in the comments.