Attending the 35th installment of the EuRuKo conference (in Vienna, Austria), I frantically took notes. Below are the talks of day 2. For day 1 clickety-click here.
A Ruby mystery story
Nadia Odunayo is the CTO of CodeNewbie, and has taught good engineering practices through pair programming at Pivotal Labs and Pivotal Cloud Foundry. In The case of the missing method, we follow a Ruby Private Investigator (Nadia herself) as she helps a client with a time-sensitive case, which involves exploring Ruby objects behind the scenes:
Time came to refactor some Ruby code, with Ana María Martínez Gómez. "We all at some point have found, or even written, Ruby code that was not that great. Even the code that was pretty good at one point, could now be improved, due to the evolution of Ruby." Telling her story, of how she committed to the Ruby project to use union
instead of pipes or concat
, Ana regrets to inform us that her Pull Request is left unmerged. It's not like she hasn't tried. Even during the EuRuKo speakers dinner she grilled Matz about it. The improvement is considered 'yak shaving', but it did improve array efficiency for her other projects.
In Debugging adventures in Rack-land, Pan Thomakos debugs an issue with Strava, the social network and training logging app where he works. Pan ran into a weird bug the other day which led him into the internals of Rack middleware.
The bug occured when users change their display preferences. Refreshing after changing KM's to miles showed the old settings. A second refresh would show the correct values.
Using pry for debugging, to directly interact with the code while scanning through the logs, Pan ultimately figures out he needs Rack to clear the cache before the refresh.
Technical debt
Kerstin Puschke is a software developer at Shopify. Transforming Shopify’s massive Rails code base into a more modular monolith, Kerstin builds on her prior experience with distributed microservice architectures. Before moving to Canada, she helped organize the Hamburg Ruby user group and a local Rails Girls chapter.
In Scaling a monolith isn't scaling microservices, Kerstin talks about the scaling/workload distribution in different architectures with background jobs, as well as messaging middleware like RabbitMQ and event logs like Kafka:
Amr Abdelwahab is an African Egyptian native and one of the organizers of EuRuKo 2017 in Budapest, Hungary. Currently living in Berlin, Amr warns that his talk is not an expert talk, but a topic that impacts the daily life of himself and thousands of (y)our fellow developers.
With An empathy exercise: contextualising the question of privilege, Amr challenges us to use our privilege to help others and approach inequality in the same mindful way one deals with technical debt.
In an interesting turn of events, Rayta's and my pitch for Rotterdam hosting the 2019 EuRuKo conference got accepted. I hope we can live up to the great, inclusive example the 2018 team set.