RubyRussia 2021 online: Yukihiro Matsumoto, 4K quality, and round tables
The largest Ruby conference in Russia is still online, but this did not stop us from making it just as interesting and lively as it is offline. In this article, we talk about the event’s innovations, reports, discussions, and Yukihiro Matsumoto keynote.
RubyRussia is the largest international conference on the Ruby programming language held in Russia. Evrone brings together the main Russian and world experts in both Ruby and Rails. In 2021, RubyRussia was held for the 12th time, and for the second time, we held it in an online format. Despite this, RubyRussia 2021 was the largest, in terms of the number of registered participants, with 1,576 attendees. Thanks to everyone who was with us!
Why did we go online again?
With the uncertainty of COVID, we decided not to take the risk and made RubyRussia virtual again. Since, if new restrictions were introduced, the event would have to be postponed, and we would upset the entire community. During the pandemic, we held dozens of online meetups and learned how to do them well.
For example, we decided to record reports in the studio in advance. This ensures that the picture is high-quality, the sound is clear, the speakers themselves feel much more confident. The audience receives a pleasurable listening and viewing experience, without technical interference. After the conference, we posted the videos on YouTube for those who like to re-watch. All performances can be viewed in 4K quality here.
We were also still able to implement one of the most important parts of classic conferences. After a speech, participants could ask the speaker questions, since the speaker was in the studio with our host, Evrone DevRel Grigory Petrov, who followed the questions from the chat and transmitted them to the guest live.
Discussing "burning issues" at round tables
Round tables were a new format for our conference, but the audience really liked them. It's like a podcast that you can burst into with your thoughts. In real time, you can influence the course of the discussion via online chat. These round tables were held at the Skolkovo studio, and the live broadcast was organized by a professional TV crew.
The first round table, on Kubernetes, showed that both the format and the topic were very hot. The hosts, in the heat of the discussion, forgot about timing, and then continued the discussion at the afterparty in a nearby bar (just for fun).
At a round table with representatives of Sbermarket and Gett, we discussed the popular joke “Ruby is dead'' and what place the language occupies in organizations that already work on Java or PHP. The discussion turned out to be emotionally-charged, the presenter barely had time to pass the microphone.
The third round table was about the Ruby-inspired Elixir language. Danil Chibrikov, from Rostelecom, participated in the discussion via video call, but the broadcast directors integrated him into the frame as if he was also in the studio. It looked great and seamless. At this round table, they discussed whether Elixir can replace Go, for example, in building productive microservices, and at the end, they congratulated Evrone’s Dmitry Kleymenov, whose birthday was on the same day as RubyRussia 2021.
How Yukihiro Matsumoto impressed us this time
We have been friends with the creator of Ruby, Yukihiro Matsumoto, for a long time. He used to speak at RubyRussia in person, and in 2021, he recorded a keynote especially for the conference, where he spoke about the innovations of Ruby 3.0, explained why he had added them, and shared his attitude toward other programming languages.
In particular, he made an important thesis statement that static typing develops cyclically. It was first replaced by dynamically-typed Python, Ruby, and JavaScript, but then types began to appear in them as well. Matsumoto believes that, after a while, we will have the next cycle, where languages without static typing will become popular again, and then everything will repeat itself.
Therefore, he believes that types in Ruby are needed not for "ordinary developers." They should just write without types, so that the work is fast and convenient. The types will be hidden in the language, libraries, and frameworks and will prompt the developer as to where they could have made mistakes. Only experienced developers will use them, creating a solid foundation for everyone else.
Matsumoto also announced Ruby 3.1. There will be no large-scale changes in it, since the authors focused on speed and performance. Ruby, like Python, strives to be faster.
But the biggest piece of information from Yukihiro Matsumoto was the announcement of a grant program for Ruby developers. The Ruby Association will be providing grants, in the amount of $5,000, to encourage innovation among Ruby developers, and applications are already being accepted. Proposal suggestions include improvements to tools, development of libraries that make computing more convenient, and also improvements to mruby.
Evrone, in collaboration with Evil Martians, translated Matsumoto's performance from Japanese into Russian and ordered voice acting from a professional dubbing actor. This way, viewers were able to focus on the meaning, not the translation.
What was in the program?
Alexander Danilenko, the chief architect of Toptal, shared how, in such a huge company, they are able organize the work of hundreds of Ruby developers on a million lines of code. He talked a lot about processes, the principles of dividing code into domain areas, and how to make sure that developers do not interfere with each other.
The most discussed aspect was the speech by Kirill Mokevnin, from Hexlet, on architecture. He touched on the painful topic of code complexity and how to deal with it and also talked about the Painless Rails approach. By the way, Kirill opened his own development school for junior developers who already know how to program and want to learn Ruby better.
Our colleague, Evgeny Raschepkin, gave a report on concurrency in Ruby. In the third version of the language, the number of primitives for developers has doubled. Ractors and fibers have been added to threads and processes, and so far, no one knows how to use them correctly. Eugene explained how all of this is useful for developers and how to get into the depth of the code and make sure that it does not slow down.
Egor Bugaenko, from Huawei, talked about Ruby Gems. Egor discussed how you can improve your skills and learn new things by creating open-source solutions. At the Q&A session, Egor was faithful to his image, saying that only low-skilled developers can discuss programming in Telegram and real professionals should use Stack Overflow. Our presenter, Grigory Petrov, opposed this viewpoint and reminded us that people are unique and that the best communication channel will be different for different developers.
Svetlana Savelyeva, from Doumo, and the Ulyanovsk Ruby community talked about the pitfalls of using devise and also helped us throughout the conference as a volunteer, synchronizing pre-recorded performances with live.
Alexey Antonov, from Domclick, opened the second day of the conference with a story about how he started using Ruby in the company and how, over a couple of years, the language has become an important technology that allows you to make prototypes the fastest. The report is based on Alexey's article on Habr, where he shared his personal experiences.
Vitaly Slobodin, from Gitlab, using the example of his company, explained how to use types if you have millions of lines of code, as well as what the pros and cons of this approach are.
Alexey Vakhov, from Uchi.ru, spoke about the high loads of the service and confirmed the thesis that Ruby is fast enough to do high-load projects with. The load of Uchi.ru exceeds 50 thousand requests per second, but everything works in Ruby, and the developers are happy.
Artem Krivonozhko's report on interns is now very relevant, since Ruby is experiencing a second renaissance in the pandemic as a full-stack solution that allows you to launch online projects very quickly. Therefore, more and more schools are opening that are focused specifically on Ruby development, and they are releasing many junior devs. Artem discussed projects which interns can be especially useful on.
How did we have fun during the breaks?
People go to the conference, not only for knowledge, but also to hang out with other developers. We tried to incorporate this aspect and added activities that allowed the participants to “take away” great prizes and remember how cool it was until the next RubyRussia. To do this, we allocated a separate virtual "space" on the tulula platform, where, together with our partners, we invited conference guests to play games and participate in quizzes. Our general partner, Sbermarket, raffled off ten sets of prizes, and participants in the travel quiz, from Level.Travel, received a suitcase, a Bluetooth speaker, and a backpack.
Evrone, as the organizer, also gave away a whole bunch of devices. The winner got a Microsoft Xbox Series S, the silver medalist took the XIAOMI robot vacuum cleaner, and the bronze medalist got a Yandex.Station. The participants who took the fourth and fifth places each received power banks.
What are we going to do next year?
In 2020, we dreamed of a return to offline conferences. Now we understand that the virtual format is also good. The participants can enjoy the conference from the comfort of their own homes, at their favorite setups, and it is even easier for speakers from other countries to participate.
Of course, our ultimate hope is that someday RubyRussia will be awaited and watched by big companies, like traditional Apple presentations from Cupertino. But to accomplish this, we have to make everything even more interesting and brighter. And believe us, as soon as RubyRussia 2021 ended, we began to prepare for the next one. So stay tuned!