Working remotely full-time can make you feel isolated sometimes.
One of my favourite way to reconnect with people and break the routine is to attend conferences.
At the end of June, I attended BrightonRuby 2023. It was my first time there, and I felt inspired by new ideas and people.
Ruby conferences are friendly and welcoming, and BrightonRuby was no exception.
Here is my brain dump from the various talks, which were technical and fun.
All the Talks
Eileen M. Uchitelle started with a talk titled "The Magic of Rails - Exploring the Principles & Techniques behind the Framework".
Eileen is part of the Rails Core Team, and she explained the basics of the internal architecture of Ruby on Rails.
She started talking about the Rails characteristics and how it takes on complexity to empower the developer.
She explained how Rails components are structured and the name conventions Active and Action:
- Active is used in the backend components, for example, ActiveRecord and Active Support.
- Action is used in the frontend components, for example, ActionView and ActionMailer. Railties is the glue for those components.
Eileen also showed how initializers work, Rails's agnostic interfaces and how it leverages metaprogramming.
She also pointed out the importance of the contributors and the entire community that supports Rails, which is necessary for it to evolve and empower tens of thousands of developers worldwide.
The second Speaker was Nick Schwaderer (Schwad for short).
He entered the stage with dark glasses and a suitcase. Despite some issues with the mic, he kept its coolness.
He told us about "Scarpe", a project to build desktop apps using Ruby. Scarpe is the Italian word for shoes.
Do you remember Shoes?
It was a project created by the artist-programmer "Why the lucky stiff".
I enjoyed the talk's narrative, based on a boy who wanted to prank his grandma.
To know more check Scarpe.
Kaitlyn Tierney gave a talk about documenting projects. Before becoming an engineer, Kaitlyn was a librarian.
Programmers often neglect documentation. They prefer to write code than document the project they are building.
Kaitlyn gave many tips to start making helpful documentation, not just wordy documents, difficult to find and read.
Kaitlyn suggests a framework to document our projects. These are the main sections:
- Guides & Processes
I found online an interview where she describes her framework: Revamp Documentation System
The following speaker was Noah Gibbs. He is an author and software engineer working at Shopify.
The gist of his talk was that Rails is not always the right choice. He nailed the topic, which smoothly balances the first talk (The Magic of Rails).
Here are some of the warns that should prevent us from with Rails:
- No team support or conflicting requirement
- Tiny apps
- Huge codebase
- Large or low-trust team
To follow, Tim Riley gave a talk about an alternative to Rails. He gave a fantastic talk about Hanamy and a terrible dancing performance :D So terrible that I loved him!
As Ricky Martin popularized the new Latin sound to the masses, Hanamy added a "new sound" to the ruby community. It adds a new way to create Web Apps, which allows clear design, promoting the separation between the web framework and the business logic. All Rubyists should try it and learn new ways to build web apps.
Nadia Odunayo gave the talk titled "The Case of the vanished variable". It was a technical talk on how Ruby implements class/instance-class variables in the case of hierarchy.
It could have been tedious, but it wasn't. Nadia told the audience a compelling story about a bug and the "investigation" to find the culprit.
The story was fun and inspiring. Nadia pushes Ruby developers to take time to learn how Ruby works behind the scenes. Strange code behaviour is sometimes a lack of knowledge of details.
The last talk was from Joe Hart, a developer who loves comedy. He enjoys creating Massive Local Multiplayer Games. It's the first time I heard the term. They are games that can be played by many people at the same places, like, for example, a (Ruby) conference.
He played with the audience two of his games, Mario and Pacman.
In Mario, the audience made Mario jump by cheering loudly.
In Pac-Man, Joe played Pacman, and the audience played the ghosts using their mobile phones to interact. Only six ghosts at a time could play. Once a ghost died, another one from the audience could start playing.
It was fun, and unexpected flaws in the game made the experience even funnier.
Joe wanted to highlight that writing software just for work limits our creativity. To reclaim the joy of programming, we should write silly code that does not serve any purpose and is fun to build.
There were also four five-minute talks. The one I remember most is "Back in my day...", a quick and fun time travel on how Ruby evolved since 2000. The author Paul Battley shared the complete transcription of the talk on Back in my day....