I'm happy to announce that wroc_love.rb conference is back!
Because of covid, this is the first edition since 2019. This is one of the biggest Ruby conferences in Poland, and it's always a pleasure to be there.
An estimated 150 people and 14 presenters from across the world attended the conference this year.
We assembled a team of 6 Visuality employees to attend the conference. We were all excited to meet in person again and to learn something new.
All of us had a chance to participate in 3 days of the conference, and we will share our impressions with you.
Visuality as a company was also one of the supporting sponsors of the conference. We were happy to support the event and to meet other Ruby enthusiasts!
DAY 1: Friday, September 16
Paweł Strzałkowski (from Visuality) was first to kick off the conference with his talk about Introduction To Event Sourcing: How To Use It With Ruby.
Paweł's talk was about Event Sourcing. He explained what it is and how it can be used in Ruby.
After Paweł's talk there was one more presentation: 10 Things You Never Wanted To Know About Reform 3 by Nick Sutterer.
Mariusz Kozieł (our CTO) view on the presentation:
I think this will be pretty good for projects already using Trailblazer or Reform. I like that he is not afraid to say that some things are not perfect, and he is looking for a better solution. The presentation was also a great introduction to Reform 3 and a great summary of how Reform 2 worked with all quirks. It's definitely worth checking out the new version!
At the end of the day, there was a small afterparty with some drinks and snacks.
DAY 2: Saturday, September 17
Yaroslav Shmarov after presenting on the Miłośnicy Ruby Warsaw meetup hosted by Visuality went one step further: kicked off the second day of presentations on wroc_love.rb!
Yaroslav talked about 18 months of using hotwire and viewcomponent in production.
My view on the presentation:
I really enjoyed Yaroslav's talk. He presented a lot of information about using hotwire and viewcomponent in production. He also showed the pros and cons of using these technologies and how they can be used in real projects. He also showed how to use hotwire with viewcomponent and how to use viewcomponent with stimulus.
After Yaroslav's talk, there was another presentation: How To Package A Rails Engine: Generation To Automation by Adrian Marin.
Adrian talked about how to package a Rails Engine: Generation to Automation. He explained how to package a Rails Engine and how to automate the process. This talk was very interesting and was packed full of many non-standard automations that many wouldn't know were possible.
After lunch, a presentation was made about Typical DDDomains In Rails Apps by Andrzej Krzywda.
Andrzej talked about typical DDDomains in Rails apps. He showed how to use DDD in Rails.
Paweł's view on presentation:
Andrzej has made a great effort to bring the Ruby community closer to Domain-Driven Design. He has showcased how to use RailsEventStore to create a modularized, extendable, and well-designed Ruby on Rails application. I especially loved how he has shown the division between elements of application and domain layers. It has given an uncommonly clear vision for anyone seeking solutions on their path to DDD.
After Andrzej's talk (and lunch break) there was a presentation about The good, the bad, and the remote - collaborative domain modeling with EventStorming by Mariusz Gil.
Mariusz talked about how to do collaborative domain modeling with EventStorming using remote tools. He compared it with how to do it in person, and how before COVID, he thought doing it remotely was impossible but now remote is his preferred way of doing it.
After Mariusz's talk the subject of the next presentation was Under The Hood And On The Surface Of Sidekiq by Paweł Dąbrowski.
Paweł talked about Sidekiq. He showed everyone how it works and how to use it. He also presented how to use it with Rails. He talked about many details about Sidekiq and how it works - definitely worth checking out!
After Paweł's talk presentation was made about How To Ensure Systems Do What We Want And Take Care Of Themselves? by Michał Zajączkowski-de Mezer.
Michał talked about how to ensure systems do what we want and take care of themselves. He talked about back-off strategies and idempotency. He also talked about how to use them in Ruby (on Rails). This is a great talk for any aspiring senior developer.
To finish the day there were 6 lightning talks.
After a full day of presentations, even in the evening when the after-party was in full swing, you could still hear people excitedly discussing event streams and DDD.
DAY 3: Sunday, September 18
On the last day of the conference, there were 6 presentations. Karol Szuster kicked it off with his talk about Nightmare neighbors - caveats of Rails-based mutlitenancy.
Karol talked about nightmare neighbors - caveats of Rails-based multitenancy. He talked about how to use Rails for multitenancy and how to avoid some pitfalls. He presented many solutions to solving "the scoping" problem in multi-tenant applications and their databases.
The next presentation from Sergey Sergyenko was about Data Management With Ruby.
Sergey talked about data management with Ruby. He talked about what it means to be a Data Engineer or Ruby Engineer. How data management is not database management or ETL. He also talked about data obfuscation, encryption, and masking in healthcare application that falls under HIPPA Compliance. In the end, he showed how to use Grazer to achieve this.
After Sergey's talk, the subject of the next presentation was Dealing With A Project's Complexity In A Changing Environment by Anita Jaszewska.
Anita talked about dealing with a project's complexity in a changing environment. She talked about big changes from emotional and resource points of view. There were many great examples and graphs in this talk. Especially Knoster's Model for Managing Complex Change was very helpful!
After Anita's talk, there was a presentation about Devise - pitfalls and way to tighten security by Rafał Rothenberger.
Rafał talked about Devise - pitfalls, and ways to tighten security. This presentation was full of details about password security, salts, peppers, and how it's broken in Devise. He also talked about how to fix it. In the second part of the presentation he focused on Token based authentication for APIs, what it is and how to use it. He recommended using cookies whenever possible. To finish it off he talked about timing-based attacks and overall best security practices for Rails apps.
After Rafał's talk, the subject of the next presentation was about Ever shorter feedback loop by Krzysztof Hasiński.
Krzysztof Hasiński did a great ad-hoc presentation about shortening the feedback loop from tests. He talked about how to shorten the feedback loop from tests.
My view on this presentation:
This topic is very close to my heart for many reasons. I liked the performance optimizations, I really liked the economical reason for doing this, and most importantly focus on improving the developer's experience and time spent on checking if the code works. Purely amazing!
This presentation sparked a quick collaboration to create a repository with advices on how to speed up your rails test suite here: https://github.com/khasinski/rails-awesome-tests
Norbert Wójtowicz did the next presentation about Grokking FP For The Practicing Rubyist.
Norbert talked about functional programming grokking for the practicing Rubyist. Focusing on the fact that Functional Programming uses only pure functions without side effects.
To finish the day there were 9 lightning talks. Our favorite one was about Zimbabwe!
This year was a very special year for wroclove.rb. It was so good to see so many attendees. We would also like to thank all wroclove.rb speakers for sharing their knowledge and experience with us. We would like to thank our volunteers for helping us organize this event.
This was a great time to meet new people, as well as to spend some great time together with other Visuality employees. Also, we were able to finally see face-to-face with so many people that we work with.
Andrzej and as well as everyone involved: Thank you for organizing this conference and definitely see you next year!
All videos from the conference's this and previous years are available on wroc_love.rb YouTube channel.