Skip to content

Instantly share code, notes, and snippets.

@gridhead
Created March 5, 2026 12:03
Show Gist options
  • Select an option

  • Save gridhead/5f8cf9546039f031cf4b6fc413a5bf61 to your computer and use it in GitHub Desktop.

Select an option

Save gridhead/5f8cf9546039f031cf4b6fc413a5bf61 to your computer and use it in GitHub Desktop.

Fedora Badges Revamp Project

Speaker Notes

Slide #1

  • 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?

Slide #2

Part A

  • 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

Part B

  • 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

Part C

  • 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

Slide #3

Part A

  • 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

Part B

  • 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

Slide #4

Part A

  • 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

Part B

  • 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

Slide #5

Part A

  • 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

Part B

  • 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

Part C

  • 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

Slide #6

Part A

  • 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!

Part B

  • 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!

Slide #7

Part A

  • 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

Part B

  • 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?

Slide #8

Part A

  • 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

Part B

  • 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

Part C

  • 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

Slide #9

Part A

  • 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

Part B

  • 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

Slide #10

  • 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!
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment