diff --git a/microsite/blog/2025-05-12-from-zero-to-maintainer-my-opensource-journey-with-backstage.mdx b/microsite/blog/2025-05-12-from-zero-to-maintainer-my-opensource-journey-with-backstage.mdx index 74b6e0db53..96a4a8e140 100644 --- a/microsite/blog/2025-05-12-from-zero-to-maintainer-my-opensource-journey-with-backstage.mdx +++ b/microsite/blog/2025-05-12-from-zero-to-maintainer-my-opensource-journey-with-backstage.mdx @@ -6,21 +6,14 @@ authorImageURL: https://avatars.githubusercontent.com/u/113269381?v=4 --- My path to becoming a maintainer in the Backstage project wasn’t paved with years of prior open source experience. As a student interning at Red Hat, I started with a relatively fresh perspective. This is the story of that journey – how I navigated the complexities of Backstage, with the support of its community, allowing me to grow and learn, and how open source can empower anyone to do the same. Whether you’re new to open source or a seasoned developer, I believe you’ll find something valuable here. For those just starting out, I hope this inspires you to take that first step. And for experienced developers, I hope this offers a fresh perspective – a look at how a new contributor navigates a complex project, and perhaps, a reminder of our own beginnings. - -![A bit about me - Software Engineering Intern at Red Hat and Computer Science student at University of Toronto -](assets/2025-05-12/about_me.png) -_A bit about me – Software Engineering Intern at Red Hat and Computer Science student at the University of Toronto_ - -{/* truncate */} - This journey wasn’t made in a single leap, but through a series of progressive stages. I’ll walk you through these stages, highlighting the key learnings and contributions along the way. ![The Stages of my Journey](assets/2025-05-12/stages.png) +{/* truncate */} ## Stage 1: Laying the foundation ![Getting Familiar with the Backstage Tech Stack](assets/2025-05-12/tech_stack.png) -_Getting Familiar with the Backstage Tech Stack_ When I first encountered Backstage, I wasn’t deeply familiar with the tech stack it relied on — Node.js, TypeScript, and React. My only exposure previously had been through hackathons, where the focus is speed over deep understanding. Another major hurdle was Git. Up until that point, I had mainly used GitHub Desktop, rarely venturing into the command line or advanced Git concepts. Realizing that effective contribution required a deeper understanding, I dedicated a week to intensively reviewing these core technologies. @@ -29,7 +22,6 @@ But that wasn’t all. I wanted to see Backstage in action, to really grasp what ## Stage 2: First contributions ![First contributions to Backstage: learning the process and connecting with the community](assets/2025-05-12/first_contributions.png) -_First contributions to Backstage: learning the process and connecting with the community_ With my foundational skills in place, it was time to take the leap and make my first contributions to Backstage. [My first pull request](https://github.com/backstage/community-plugins/pull/497) (PR) was quite simple — fixing broken links in the documentation. This seemingly minor fix was my first step, and it paved the way for more substantial contributions. It helped me to get comfortable with the contributing process, learn how to submit a PR, and understand the review workflow. After that, I started looking for open issues in the [community-plugins repository](https://github.com/backstage/community-plugins). I found an issue about [linking npm releases of plugins to specific Git commits](https://github.com/backstage/community-plugins/issues/489) — a task that pushed me outside my comfort zone once again. At the time, I knew very little about GitHub Actions and workflows. Learning on the fly, I relied heavily on guidance from maintainers who were incredibly welcoming. This experience was really helpful, not just for the task itself, but also because it introduced me to key community resources like the [Backstage Discord](https://discord.com/invite/backstage-687207715902193673) and [Special Interest Groups](https://github.com/backstage/community/tree/main/sigs) (or SIGs for short). While the content of the pull requests in this stage was certainly useful, the real value came from learning the project’s workflows and community processes. @@ -48,7 +40,7 @@ These two tasks were a significant step up from my initial contributions. They r ## Stage 4: Becoming an active community member ![Engaging with the Open Source Community at the CNCF meetup in Toronto](assets/2025-05-12/cncf_1.jpeg) -\_(Source: https://www.linkedin.com/posts/mwijay_you-totally-missed-last-nights-first-cncf-ugcPost-7311005210628235264-8BES) +_(Source: https://www.linkedin.com/posts/mwijay_you-totally-missed-last-nights-first-cncf-ugcPost-7311005210628235264-8BES)_ ![Engaging with the Open Source Community at the CNCF meetup in Toronto](assets/2025-05-12/cncf_2.png) _Engaging with the Open Source Community at the CNCF meetup in Toronto (Source: https://community.cncf.io/events/details/cncf-cloud-native-toronto-presents-cncf-2025-kickoff-at-shopify/)_ @@ -62,7 +54,7 @@ This marked a turning point in my journey, as I transitioned from a contributor ## What’s next: future steps as a maintainer ![Presenting "From Zero to Contributor: My Open Source Journey with Backstage" at the CNCF 2025 Kickoff event at Shopify, Toronto](assets/2025-05-12/cncf_3.jpeg) -\_Presenting "From Zero to Contributor: My Open Source Journey with Backstage" at the CNCF 2025 Kickoff event at Shopify, Toronto (Source: https://www.linkedin.com/posts/mwijay_you-totally-missed-last-nights-first-cncf-ugcPost-7311005210628235264-8BES) +_Presenting "From Zero to Contributor: My Open Source Journey with Backstage" at the CNCF 2025 Kickoff event at Shopify, Toronto (Source: https://www.linkedin.com/posts/mwijay_you-totally-missed-last-nights-first-cncf-ugcPost-7311005210628235264-8BES)_ As a maintainer, my focus is on supporting others in their open source journey and improving the overall contributor experience. I actively review PRs, guide new contributors through constructive reviews, and point them to good first issues to help them get started. Furthermore, I aim to actively contribute to the community-plugins SIG meetings, offering suggestions and participating in discussions to help guide the project’s direction. diff --git a/microsite/blog/assets/2025-05-12/about_me.png b/microsite/blog/assets/2025-05-12/about_me.png deleted file mode 100644 index 1bc3e255af..0000000000 Binary files a/microsite/blog/assets/2025-05-12/about_me.png and /dev/null differ diff --git a/microsite/blog/assets/2025-05-12/changelog.png b/microsite/blog/assets/2025-05-12/changelog.png index 1a64bb75ba..4a97d31a55 100644 Binary files a/microsite/blog/assets/2025-05-12/changelog.png and b/microsite/blog/assets/2025-05-12/changelog.png differ diff --git a/microsite/blog/assets/2025-05-12/first_contributions.png b/microsite/blog/assets/2025-05-12/first_contributions.png index 521127bea8..26ecf77565 100644 Binary files a/microsite/blog/assets/2025-05-12/first_contributions.png and b/microsite/blog/assets/2025-05-12/first_contributions.png differ diff --git a/microsite/blog/assets/2025-05-12/stages.png b/microsite/blog/assets/2025-05-12/stages.png index 075dcd1b6e..1d6aea0b64 100644 Binary files a/microsite/blog/assets/2025-05-12/stages.png and b/microsite/blog/assets/2025-05-12/stages.png differ diff --git a/microsite/blog/assets/2025-05-12/tech_stack.png b/microsite/blog/assets/2025-05-12/tech_stack.png index 9f1b188855..6af9194488 100644 Binary files a/microsite/blog/assets/2025-05-12/tech_stack.png and b/microsite/blog/assets/2025-05-12/tech_stack.png differ