The iO Drupal contribution day

By Lennard Swaneveld

5 min read

In a year where contributions were going down a bit we thought it was a good idea to see if we can end the year with a little bump.

The iO Drupal contribution day
Authors

In a year where contributions were going down a bit we thought it was a good idea to see if we can end the year with a little bump.

As a fast growing company we were hoping this would be a great way to meet all our Drupalista’s face-to-face, but alas this was not meant to be.

Getting people new to contributing to engage and not feel like they spend most of their day just getting all the needed tools to contribute to run on their local machines can be hard even under normal circumstances. Doing this in an online setting needed some real focus.

We came up with two ways of doing this.

First we compiled a list of patches that are used in our customer projects. That way we had some clear targets and anything that we could move forward or maybe even get committed had clear benefits to the teams that had run into these issues and clear benefits for our customers because we would no longer need to spend time making sure patches kept applying for these issues. This part would be the focus of those already experienced in contributing to Drupal.

Secondly we would focus on bug triage. The Bug Smash Initiative is a Drupal Community initiative that strives to reduce the number of open bugs and the time that bugs are open. What’s important here is that there are many ways to reduce the number of open bugs. Fixing a bug is one of them, but fixing Drupal core bugs is hard. There are a number of gates that each issue has to pass through before something will be considered ready to be merged. Getting any code ready to be committed is a lengthy process that can take years. So often, when you only have one day to contribute, this will lead to feelings of not really getting anything done on a contribution day. In order to provide a feeling of accomplishment to those participating we decided to focus on something that can easily be done in a day: triage.

Triaging a bug means making sure that the bug report contains everything somebody needs to get working on it. Things like steps to reproduce and a clear description of the expected outcome of an action versus the actual outcome. You can also check if a bug is still relevant or that it might have been fixed in another issue. Here is the flow chart the Bug Smash Initiative uses when doing triage:

Maple

At other events there was usually not real structure on how to find things to triage. So that often meant that people would focus on the first couple of pages of bugs in the issue queue. Or we would do a Major triage where we would only look at bugs that were tagged as ‘major’.

But since Drupal core contains almost 7000 bugs, that leaves quite a lot of bugs untouched once they move of the first couple of pages.

Maple

So our weapon of choice would be using Bug bingo triage. The button on that page will send you to a random bug in the issue queue that hasn’t had any activity in more than a year. That way, you will not get stuck triaging the same set of pages over and over.

About 25 got together in one Meet for a short introduction on why contributing to Open Source is fantastic for both personal growth and giving exposure to your company. After that we split up and we had about 15 people that were interested in doing triage.

We started off with me just sharing my screen and pressing the bingo button, we had no idea what would come up. Some issues need more triage than others, but they all work as a tool for explaining the process. Even if one issue is already perfect, we could use that as an example of what to expect.

We went through about 5 issues with an experienced contributor and pointed out things that were good about it, and things that were not. Does it have steps to reproduce? Is this actually a bug or more a task or a feature? Is it really ‘major’ or ‘critical’ or is it ‘normal’? Can we find any duplicate issues? If the text looked good, maybe somebody would go to simplytest.me and see if they could reproduce the issue. We didn’t do the reproducing with the whole group since we wanted to focus on the triage process, but we would just put the link in our shared slack channel. Then somebody would start a thread on this and say they were trying to reproduce it.

After this, we handed over the process to less experienced contributors who could then hit the bingo button and we would all help them go through the issue. Sometimes we would get issues that really were way outside the comfort zone of people, and then we just went back and hit the Bingo button again, no reason to force anything here.

Above all, we tried to make it clear, that the goal was not to fix or close an issue, but to just see why an issue was stuck and to see if we could help get it moving forward.

At the end of the day, a loose check showed that we had touched well over 50 issues (we didn’t use an event specific tag, so it’s hard to check exactly), and closed about 20 of those bugs.

Afterwards people commented that it was a great way to feel that you got something done during a day of contributing. And I believe that this is a great result for a day of contributing.

I want to thank everybody that joined us for a great day of contributing and hopefully we can do the next one offline!


Upcoming events

  • Coven of Wisdom - Herentals - Winter `24 edition

    Worstelen jij en je team met automated testing en performance? Kom naar onze meetup waar ervaren sprekers hun inzichten en ervaringen delen over het bouwen van robuuste en efficiënte applicaties. Schrijf je in voor een avond vol kennis, heerlijk eten en een mix van creativiteit en technologie! 🚀 18:00 – 🚪 Deuren open 18:15 – 🍕 Food & drinks 19:00 – 📢 Talk 1 20:00 – 🍹 Kleine pauze 20:15 – 📢 Talk 2 21:00 – 🙋‍♀️ Drinks 22:00 – 🍻 Tot de volgende keer? Tijdens deze meetup gaan we dieper in op automated testing en performance. Onze sprekers delen heel wat praktische inzichten en ervaringen. Ze vertellen je hoe je effectieve geautomatiseerde tests kunt schrijven en onderhouden, en hoe je de prestaties van je applicatie kunt optimaliseren. Houd onze updates in de gaten voor meer informatie over de sprekers en hun specifieke onderwerpen. Over iO Wij zijn iO: een groeiend team van experts die end-to-end-diensten aanbieden voor communicatie en digitale transformatie. We denken groot en werken lokaal. Aan strategie, creatie, content, marketing en technologie. In nauwe samenwerking met onze klanten om hun merken te versterken, hun digitale systemen te verbeteren en hun toekomstbestendige groei veilig te stellen. We helpen klanten niet alleen hun zakelijke doelen te bereiken. Samen verkennen en benutten we de eindeloze mogelijkheden die markten in constante verandering bieden. De springplank voor die visie is talent. Onze campus is onze broedplaats voor innovatie, die een omgeving creëert die talent de ruimte en stimulans geeft die het nodig heeft om te ontkiemen, te ontwikkelen en te floreren. Want werken aan de infinite opportunities van morgen, dat doen we vandaag.

    | Coven of Wisdom Herentals

    Go to page for Coven of Wisdom - Herentals - Winter `24 edition
  • Mastering Event-Driven Design

    PLEASE RSVP SO THAT WE KNOW HOW MUCH FOOD WE WILL NEED Are you and your team struggling with event-driven microservices? Join us for a meetup with Mehmet Akif Tütüncü, a senior software engineer, who has given multiple great talks so far and Allard Buijze founder of CTO and founder of AxonIQ, who built the fundaments of the Axon Framework. RSVP for an evening of learning, delicious food, and the fusion of creativity and tech! 🚀 18:00 – 🚪 Doors open to the public 18:15 – 🍕 Let’s eat 19:00 – 📢 Getting Your Axe On Event Sourcing with Axon Framework 20:00 – 🍹 Small break 20:15 – 📢 Event-Driven Microservices - Beyond the Fairy Tale 21:00 – 🙋‍♀️ drinks 22:00 – 🍻 See you next time? Details: Getting Your Axe On - Event Sourcing with Axon Framework In this presentation, we will explore the basics of event-driven architecture using Axon Framework. We'll start by explaining key concepts such as Event Sourcing and Command Query Responsibility Segregation (CQRS), and how they can improve the scalability and maintainability of modern applications. You will learn what Axon Framework is, how it simplifies implementing these patterns, and see hands-on examples of setting up a project with Axon Framework and Spring Boot. Whether you are new to these concepts or looking to understand them more, this session will provide practical insights and tools to help you build resilient and efficient applications. Event-Driven Microservices - Beyond the Fairy Tale Our applications need to be faster, better, bigger, smarter, and more enjoyable to meet our demanding end-users needs. In recent years, the way we build, run, and operate our software has changed significantly. We use scalable platforms to deploy and manage our applications. Instead of big monolithic deployment applications, we now deploy small, functionally consistent components as microservices. Problem. Solved. Right? Unfortunately, for most of us, microservices, and especially their event-driven variants, do not deliver on the beautiful, fairy-tale-like promises that surround them.In this session, Allard will share a different take on microservices. We will see that not much has changed in how we build software, which is why so many “microservices projects” fail nowadays. What lessons can we learn from concepts like DDD, CQRS, and Event Sourcing to help manage the complexity of our systems? He will also show how message-driven communication allows us to focus on finding the boundaries of functionally cohesive components, which we can evolve into microservices should the need arise.

    | Coven of Wisdom - Utrecht

    Go to page for Mastering Event-Driven Design
  • The Leadership Meetup

    PLEASE RSVP SO THAT WE KNOW HOW MUCH FOOD WE WILL NEED What distinguishes a software developer from a software team lead? As a team leader, you are responsible for people, their performance, and motivation. Your output is the output of your team. Whether you are a front-end or back-end developer, or any other discipline that wants to grow into the role of a tech lead, RSVP for an evening of learning, delicious food, and the fusion of leadership and tech! 🚀 18:00 – 🚪 Doors open to the public 18:15 – 🍕 Let’s eat 19:00 – 📢 First round of Talks 19:45 – 🍹 Small break 20:00 – 📢 Second round of Talks 20:45 – 🙋‍♀️ drinks 21:00 – 🍻 See you next time? First Round of Talks: Pixel Perfect and Perfectly Insane: About That Time My Brain Just Switched Off Remy Parzinski, Design System Lead at Logius Learn from Remy how you can care for yourself because we all need to. Second Round of Talks: Becoming a LeadDev at your client; How to Fail at Large (or How to Do Slightly Better) Arno Koehler Engineering Manager @ iO What are the things that will help you become a lead engineer? Building Team Culture (Tales of trust and positivity) Michel Blankenstein Engineering Manager @ iO & Head of Technology @ Zorggenoot How do you create a culture at your company or team? RSVP now to secure your spot, and let's explore the fascinating world of design systems together!

    | Coven of Wisdom - Amsterdam

    Go to page for The Leadership Meetup

Share