Speaker Notes
- Fifteen minutes, how do I make it count?
- Alright, let's begin with who I am - I am Akashdeep Dhar
- Work as a Senior Software Engineer in the Red Hat CLE as my dayjob
- Work on designing, developing, testing and maintaining infrastructure for Fedora Project and CentOS Project
- Elected representative at the Fedora Mindshare
- Representing member at the Fedora Council
- I am here to talk about this project called Fedora Badges - A webbased platform for recognizing contributors and incentivizing contributions
- I am also here to scout FOSSAsia for the Fedora Project local presence - Past few days were amazing, we should definitely come here again
- I will try to keep some time aside for questions and feedback
- But hey, if that is not possible, feel free to find me around yeah?
- Alright, before talking about revamping Fedora Badges project
- Let us have a quick understanding of what this project is all about and why should someone care about it
- While it might look complicated from the outside, it is built of technologies like Flask, Postgres etc. that we all know and love
- To put it simply, we use this platform the awards contributors and to have a healthy competition
- It, of course, starts with the very action of contribution
- Write code, Edit docs, Find bugs, Deliver talks, Design things, Organize events and everything else
- They all have a Fedora Badge associated with them - or if not, one can be requested for conveniently
- Then, we need to confirM that the activity was indeed performed
- Every activity in Fedora Infrastructure generates a message packet on the Fedora Messaging bus
- This helps us understand just how healthy the contributor-base is and also, about the condition
- What condition are you talking about? You might ask
- These message packets from Datanommer help us understand that a contributing activity indeed took place
- And when we figure that out - there you go - you get awarded a shiny digital badge for your efforts
- Alternatively, if your contribution cannot be automatically verified, this can be done manually too
- One could either award you the badge or it could be handed out in various events as a QR code
- NOPE, that QR code is NOT a badge - It's a link to the Fedora Badges official documentation
- ... But what happens after one gets awarded a badge?
- Simple, you proudly show it off to your friends and then your friends show you an even bigger badge
- HAHAHA... Now that makes you want to have that badge too - because why the heck not? Gotta catch 'em all right?
- And that leads you to explore newer learnings and more avenues of contribution for you
- As much as I wanted to go further into the specifics of what the system comprises, unfortunately I won't be able to
- Here's a quick overview of what the system looks like, superficially speaking, for the geeks like me! You know who you are
- We have a database which is based on Postgres on the production but since we talk SQLAlchemy, any relational database goes
- The collection has all the fancy artworks in SVGs and PNGs that the Fedora Design team gets upto
- The messages consumer listens to the contribution activities in RabbitMQ for a conditional check
- The frontend built with web tech is the way with which most folks interact with this entire service
- The CLI is the way with which advanced folks do advanced stuff with the service
- And finally, the API binds it all together to make it a nice little system package
- Okay - Enough of the technical nitty-gritty details - It is about time that I get to the Origin Story
- For the next few slides - I will share the journey undertaken by the Fedora Badges Revamp Project - Including our successes and our failures - Our rises and our falls
- Back in 2019, a group of folks started going about with collecting user stories from various personas
- Who uses Fedora Badges? How do they use it? How do they contribute? What is easy and what is difficult with the service?
- And it turned out that even though the designs were churned out regularly, there were problems in the system's backend
- The Community Linux Engineering team worked with the community governance then but the efforts slowed down
- At around 2020, there began discussions around merging Fedora Badges with our Discourse-powered discussions forums
- We got mixed results from the folks but hey, spending less time on the frontend meant that we could work more on the backend
- Now, one would think that would fix all the problems but making that decision was only half the journey
- But this time around as well it got deprioritized since our focus was into ensuring that we push out polished Fedora Linux releases
- Coming to 2021, there was another call for participation sent out and this time folks did end up joining
- I worked on the revamp's technological feasibility report and we finally got around to having regular fortnightly and monthly meetings
- We had distinct team divisions - One working exclusively on the design and accessibility while other working exclusively on the development and administration
- With our move over to GitLab, we also started having structured contributions - And to top it all off, a couple of Outreachy interns!
- So one would naturally come to assume that things would finally end up well right? Right? Wrong!
- At around 2022, while the work continued on a structured path, people slowly started dropping out and those who stayed had increased pressure
- And believe me when I say it - the last thing that you want to have as an open source maintainer is a burnout - or worse, give that to someone
- I was working on initiatives like Pagure Exporter and our Git Forge Move initiative at the time so I could not squeeze one more thing
- We were thankfully able to move away from our aging RHEL 7 based virtual machines deployment by migrating from Pyramid over to Flask
- But imagine just how bad of a taste if left in one's mouth - To have left things incomplete!
- Luckily around 2024, I got elected in the Fedora Mindshare committee and also started representing them in the Fedora Council
- As the recognition service was one of our focuses there, that was the opportunity to get the project back on its feet
- With zero commitments and zero announcements, we started off nice and slow with whoever we had around at that point in time
- Just one humble project board to throw plans at and with barely 20% given to it - slowly chipping away at the goal
- And Guess what? People did end up joining slowly and steadily - Helping out with things as and when they see fit
- And is that not the very essence of voluntary contributions to free and open source software? Contributions - Big or Small - All accepted, all appreciated
- At around 2025, I finally got the Dancing With Toshio badge by busting those fancy moves with Toshio Kuratomi at Flock 2025 in Prague
- The work gradually kept progressing with the stack being refreshed and the model context protocol being worked on, like even now, as we speak
- We did not realize how quickly we made it to almost 75% of the project boards completion with our comfortable crawling
- And that's not all - We also were represented and appreciated at the annual Fedora Council Strategy Summit 2026 - So hopefully a happy ending this time?
- But hey, I don't like a story with endings because - Why let your story end when you can pass on the torch?
- In the next couple of slides, I am going to cover the feature changelog of all the spicy things we added into the mix
- Starting off with Dark Mode - Because why the heck not? - Come on, it is 2026 and everything should have a dark mode
- Believe me when I say it - If we did not implement it, people would have used the CPU hungry and resource intensive Dark Reader browser plugin anyway
- That right there is a profile view featuring "moi" and all the shiny little digital badges that I have in my collection
- There is also a history feature that allows for folks to see just when they got what badge and for what activity
- The next thing is Badge Rarities - A very statistical approach towards understanding which badges have been more awarded and/or less awarded
- Starting from the Common tier, Uncommon tier, Rare tier, Epic tier, Legendary tier and finally, the best of the best, the Fedorable tier
- This would allow folks to not only seek out more badges but also to set off on the beaten path to achieve accolades that only a few folks have
- These rarities help both the community by introducing variance in contribution areas and also contributors by helping them feel special
- The next thing that we have here is customizable interfaces with eight distinct colour themes
- We would be working towards ensuring that the translations have been taken care off as we proceed further into completion
- Besides that, accessibility concerns would be continued to be addressed as they come up in the heuristic evaluations
- This ensures that we cater to most folks if not everyone while building a solution that is supposed to feel home
- Take, for instance, this screenshot features a badge for "Council Members" with all the associated metadata
- Lastly, we have advanced leaderboards - Because who does not like some healthy competition among open source friends, am I right?
- Improving drastically over the earlier version - We now allow for constructing custom rankings for everyone
- Be it filtering down to the month, or the first week after the Fedora Linux's release to gauge contributor participation - It is all possible
- Take, for instance, this screenshot features a leaderboard from the day of the 1st March of the year 2025
- If you are crazy about community health and contributor analytics, we hope this ends up being the treasure trove you have been looking for
- That brings us to the last slide of this presentation
- A special thanks to these people who helped the Fedora Badges Revamp Project
- And most importantly, thank you for being such patient listeners!
- Here's how you can reach out to me but if we have some time, lets take some questions and feedback!