<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Gautam Kumar Maurya </title>
    <description>The latest articles on DEV Community by Gautam Kumar Maurya  (@gkm563).</description>
    <link>https://dev.to/gkm563</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3648793%2F28a633ff-76bb-42fe-9808-0861f41dc4b8.jpg</url>
      <title>DEV Community: Gautam Kumar Maurya </title>
      <link>https://dev.to/gkm563</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/gkm563"/>
    <language>en</language>
    <item>
      <title>contributions. From Simple GitHub Contributions to a Production Wikimedia Merge — My Open Source Journey as Gautam Kumar Maurya (GKM)</title>
      <dc:creator>Gautam Kumar Maurya </dc:creator>
      <pubDate>Wed, 27 May 2026 02:21:20 +0000</pubDate>
      <link>https://dev.to/gkm563/contributions-from-simple-github-contributions-to-a-production-wikimedia-merge-my-open-source-2k57</link>
      <guid>https://dev.to/gkm563/contributions-from-simple-github-contributions-to-a-production-wikimedia-merge-my-open-source-2k57</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1f1lda3gj2w4tt4rzend.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1f1lda3gj2w4tt4rzend.png" alt=" " width="800" height="533"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/..." class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/..." alt="Uploading image" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  From Simple GitHub Contributions to a Production Wikimedia Merge — My Open Source Journey as Gautam Kumar Maurya (GKM)
&lt;/h1&gt;

&lt;p&gt;Open source always looked exciting to me.&lt;/p&gt;

&lt;p&gt;I used to see developers contributing to large organizations, getting their patches reviewed by experienced engineers, discussing architecture decisions, and working on production systems used by millions of people worldwide.&lt;/p&gt;

&lt;p&gt;At that time, honestly, I never thought that one day my own contribution would get merged into Wikimedia’s production codebase.&lt;/p&gt;

&lt;p&gt;But recently, that happened.&lt;/p&gt;

&lt;p&gt;My merge request for Wikimedia’s Function Orchestrator repository was successfully reviewed, approved, merged into the main branch, and marked “Ready to Deploy” for production deployment.&lt;/p&gt;

&lt;p&gt;For many experienced engineers, this may look like a small contribution.&lt;/p&gt;

&lt;p&gt;But for me — Gautam Kumar Maurya (GKM), a 2nd-year BTech Data Science student — this journey taught me more about real software engineering than many tutorial projects ever could.&lt;/p&gt;

&lt;p&gt;And this blog is not just about a merged PR.&lt;/p&gt;

&lt;p&gt;It is about:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;learning how real engineering workflows work,&lt;/li&gt;
&lt;li&gt;understanding large codebases,&lt;/li&gt;
&lt;li&gt;struggling through CI/CD confusion,&lt;/li&gt;
&lt;li&gt;moving from beginner GitHub contributions to production-level open source contribution,&lt;/li&gt;
&lt;li&gt;and learning how collaborative software engineering actually happens.&lt;/li&gt;
&lt;/ul&gt;




&lt;h1&gt;
  
  
  How My Open Source Journey Started
&lt;/h1&gt;

&lt;p&gt;Like many students, I initially started with very basic GitHub &lt;/p&gt;

&lt;p&gt;Open source always looked exciting to me.&lt;br&gt;
I used to see developers contributing to large organizations, getting their patches reviewed by experienced engineers, discussing architecture decisions, and working on production systems used by millions of people worldwide.&lt;/p&gt;

&lt;p&gt;At that time, honestly, I never thought that one day my own contribution would get merged into Wikimedia’s production codebase.&lt;/p&gt;

&lt;p&gt;But recently, that happened.&lt;/p&gt;

&lt;p&gt;My merge request for Wikimedia’s Function Orchestrator repository was successfully reviewed, approved, merged into the main branch, and marked “Ready to Deploy” for production deployment.&lt;/p&gt;

&lt;p&gt;For many experienced engineers, this may look like a small contribution.&lt;/p&gt;

&lt;p&gt;But for me — Gautam Kumar Maurya (GKM), a 2nd-year BTech Data Science student — this journey taught me more about real software engineering than many tutorial projects ever could.&lt;/p&gt;

&lt;p&gt;And this blog is not just about a merged PR.&lt;/p&gt;

&lt;p&gt;It is about:&lt;/p&gt;

&lt;p&gt;learning how real engineering workflows work,&lt;br&gt;
understanding large codebases,&lt;br&gt;
struggling through CI/CD confusion,&lt;br&gt;
moving from beginner GitHub contributions to production-level open source contribution,&lt;br&gt;
and learning how collaborative software engineering actually happens.&lt;br&gt;
How My Open Source Journey Started&lt;/p&gt;

&lt;p&gt;Like many students, I initially started with very basic GitHub contributions.&lt;/p&gt;

&lt;p&gt;At that stage, I mostly understood:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;repositories,&lt;/li&gt;
&lt;li&gt;commits,&lt;/li&gt;
&lt;li&gt;pull requests,&lt;/li&gt;
&lt;li&gt;and simple fixes.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;But when I entered the Wikimedia ecosystem, I realized things were very different from normal GitHub projects.&lt;/p&gt;

&lt;p&gt;There were multiple systems involved:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Phabricator&lt;/li&gt;
&lt;li&gt;Gerrit&lt;/li&gt;
&lt;li&gt;GitLab&lt;/li&gt;
&lt;li&gt;CI/CD pipelines&lt;/li&gt;
&lt;li&gt;Production deployment workflows&lt;/li&gt;
&lt;li&gt;Code review standards&lt;/li&gt;
&lt;li&gt;Task boards&lt;/li&gt;
&lt;li&gt;Merge workflows&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Initially, all of this felt very confusing.&lt;/p&gt;

&lt;p&gt;Sometimes even understanding where to submit changes was difficult.&lt;/p&gt;

&lt;p&gt;But slowly, I started exploring things on my own.&lt;/p&gt;




&lt;h1&gt;
  
  
  Understanding Phabricator, Gerrit, and GitLab
&lt;/h1&gt;

&lt;p&gt;One thing I genuinely liked about Wikimedia was that contributors are expected to understand the workflow properly.&lt;/p&gt;

&lt;p&gt;Nobody spoon-feeds everything.&lt;/p&gt;

&lt;p&gt;I started reading tasks on Phabricator and understanding how discussions happen between maintainers and contributors.&lt;/p&gt;

&lt;p&gt;Then I explored Gerrit workflows.&lt;/p&gt;

&lt;p&gt;Then later, I learned that some repositories had moved from Gerrit to GitLab-based merge requests.&lt;/p&gt;

&lt;p&gt;This particular contribution itself involved understanding:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;repository migration,&lt;/li&gt;
&lt;li&gt;GitLab merge requests,&lt;/li&gt;
&lt;li&gt;branch-based contribution workflow,&lt;/li&gt;
&lt;li&gt;and CI/CD-based merge pipelines.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;At first, it was overwhelming.&lt;/p&gt;

&lt;p&gt;But this process slowly improved my confidence.&lt;/p&gt;




&lt;h1&gt;
  
  
  Road To Wiki Sessions Helped Me a Lot
&lt;/h1&gt;

&lt;p&gt;One important thing that genuinely helped me was the “Road To Wiki” sessions.&lt;/p&gt;

&lt;p&gt;I actually could not properly fill the form and participate directly at that time.&lt;/p&gt;

&lt;p&gt;So instead, I started watching the session recordings available on YouTube.&lt;/p&gt;

&lt;p&gt;One session that helped me significantly was the CI/CD session.&lt;/p&gt;

&lt;p&gt;Until then, CI/CD felt like a very abstract topic to me.&lt;/p&gt;

&lt;p&gt;But after watching those sessions carefully, I started understanding:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;pipelines,&lt;/li&gt;
&lt;li&gt;automated checks,&lt;/li&gt;
&lt;li&gt;why builds fail,&lt;/li&gt;
&lt;li&gt;why reviews matter,&lt;/li&gt;
&lt;li&gt;and how production-level repositories maintain quality.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;While working on my Wikimedia contribution, many concepts from those sessions actually became useful in real situations.&lt;/p&gt;

&lt;p&gt;That was one of the first times I realized:&lt;br&gt;
learning becomes much more meaningful when you apply it in real engineering workflows.&lt;/p&gt;




&lt;h1&gt;
  
  
  Mentors Played a Huge Role
&lt;/h1&gt;

&lt;p&gt;I genuinely believe that guidance matters a lot in open source.&lt;/p&gt;

&lt;p&gt;Several mentors and seniors played an important role in helping me stay consistent and improve my contribution quality.&lt;/p&gt;

&lt;p&gt;Ankit Sir especially played a major role.&lt;/p&gt;

&lt;p&gt;During one event, he said something that stayed in my mind:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Focus more on quality codebase contributions rather than documentation-based contributions.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That advice genuinely changed my approach.&lt;/p&gt;

&lt;p&gt;Instead of only trying easy contributions, I started spending more time:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;reading codebases,&lt;/li&gt;
&lt;li&gt;understanding architecture,&lt;/li&gt;
&lt;li&gt;exploring workflows,&lt;/li&gt;
&lt;li&gt;and trying deeper engineering-level tasks.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Hridyesh Sir and Sanskar Sir also played an important role through guidance, motivation, and support during the learning process.&lt;/p&gt;

&lt;p&gt;Sometimes in open source, even understanding the workflow itself takes a lot of effort.&lt;/p&gt;

&lt;p&gt;Having guidance during that phase matters a lot.&lt;/p&gt;




&lt;h1&gt;
  
  
  The Contribution That Changed My Confidence
&lt;/h1&gt;

&lt;p&gt;The task I worked on was:&lt;/p&gt;

&lt;p&gt;“Add accessors for WFFunctionCall internals”&lt;/p&gt;

&lt;p&gt;At first glance, the task looked small.&lt;/p&gt;

&lt;p&gt;But when I started exploring the repository properly, I realized the real challenge was not writing code.&lt;/p&gt;

&lt;p&gt;The real challenge was:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;understanding the existing architecture,&lt;/li&gt;
&lt;li&gt;maintaining conventions,&lt;/li&gt;
&lt;li&gt;safely modifying existing systems,&lt;/li&gt;
&lt;li&gt;and ensuring maintainability.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The contribution involved:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;adding proper accessor methods,&lt;/li&gt;
&lt;li&gt;improving encapsulation,&lt;/li&gt;
&lt;li&gt;replacing direct internal property access,&lt;/li&gt;
&lt;li&gt;and improving maintainability in the codebase.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This taught me something important:&lt;/p&gt;

&lt;p&gt;Real software engineering is not only about writing complex algorithms.&lt;/p&gt;

&lt;p&gt;A lot of engineering is about:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;maintainability,&lt;/li&gt;
&lt;li&gt;architecture,&lt;/li&gt;
&lt;li&gt;clean abstractions,&lt;/li&gt;
&lt;li&gt;conventions,&lt;/li&gt;
&lt;li&gt;and collaboration.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That realization changed my thinking significantly.&lt;/p&gt;




&lt;h1&gt;
  
  
  The Review Process Taught Me a Lot
&lt;/h1&gt;

&lt;p&gt;One of the most valuable parts of this journey was the review process.&lt;/p&gt;

&lt;p&gt;The maintainers reviewed the contribution carefully.&lt;/p&gt;

&lt;p&gt;There were:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;discussions,&lt;/li&gt;
&lt;li&gt;follow-up improvements,&lt;/li&gt;
&lt;li&gt;CI/CD issues,&lt;/li&gt;
&lt;li&gt;and architecture-related refinements.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;At one point, the maintainer even clarified that the CI failure was not caused by my patch.&lt;/p&gt;

&lt;p&gt;That itself was a learning moment because I got exposure to real-world CI pipeline behavior.&lt;/p&gt;

&lt;p&gt;The most satisfying moment was when the maintainer responded positively and eventually merged the contribution into the main branch.&lt;/p&gt;

&lt;p&gt;Later, the task was moved to:&lt;br&gt;
“Ready to Deploy”&lt;/p&gt;

&lt;p&gt;and the maintainer commented:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“Thank you! This will be deployed to production in the next service deploy.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Reading that message felt surreal.&lt;/p&gt;

&lt;p&gt;Because for the first time, I realized:&lt;/p&gt;

&lt;p&gt;I had contributed to a real production-level software system.&lt;/p&gt;




&lt;h1&gt;
  
  
  Why This Contribution Matters to Me
&lt;/h1&gt;

&lt;p&gt;For many people, this may look like a small merged patch.&lt;/p&gt;

&lt;p&gt;But for me, this contribution represents:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;consistency,&lt;/li&gt;
&lt;li&gt;learning,&lt;/li&gt;
&lt;li&gt;persistence,&lt;/li&gt;
&lt;li&gt;and engineering growth.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This journey taught me:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;how to work with large codebases,&lt;/li&gt;
&lt;li&gt;how reviews improve code quality,&lt;/li&gt;
&lt;li&gt;how production workflows work,&lt;/li&gt;
&lt;li&gt;how CI/CD pipelines behave,&lt;/li&gt;
&lt;li&gt;and how collaborative engineering actually happens.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Most importantly, it taught me that:&lt;br&gt;
even students can contribute meaningfully to real-world systems if they stay patient and keep learning.&lt;/p&gt;




&lt;h1&gt;
  
  
  My Wikimedia Contribution Progress So Far
&lt;/h1&gt;

&lt;p&gt;So far:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;multiple Wikimedia/Gerrit-related patches of mine have already been merged,&lt;/li&gt;
&lt;li&gt;several more are currently under review,&lt;/li&gt;
&lt;li&gt;and I continue learning through every contribution.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Every review comment teaches something new.&lt;/p&gt;

&lt;p&gt;Every failed pipeline teaches something new.&lt;/p&gt;

&lt;p&gt;Every merged patch builds more confidence.&lt;/p&gt;




&lt;h1&gt;
  
  
  What I Learned From This Journey
&lt;/h1&gt;

&lt;p&gt;If I summarize my biggest learning in one sentence:&lt;/p&gt;

&lt;p&gt;Open source is not just about coding — it is about learning how real software engineering works.&lt;/p&gt;

&lt;p&gt;And that includes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;communication,&lt;/li&gt;
&lt;li&gt;reviews,&lt;/li&gt;
&lt;li&gt;maintainability,&lt;/li&gt;
&lt;li&gt;workflows,&lt;/li&gt;
&lt;li&gt;debugging,&lt;/li&gt;
&lt;li&gt;collaboration,&lt;/li&gt;
&lt;li&gt;and patience.&lt;/li&gt;
&lt;/ul&gt;




&lt;h1&gt;
  
  
  Final Thoughts
&lt;/h1&gt;

&lt;p&gt;I am still learning.&lt;/p&gt;

&lt;p&gt;There is still a lot I do not know.&lt;/p&gt;

&lt;p&gt;But this journey has shown me that growth happens when you move beyond tutorials and start working with real systems.&lt;/p&gt;

&lt;p&gt;To anyone trying to start open source contributions:&lt;br&gt;
don’t be afraid of large codebases.&lt;/p&gt;

&lt;p&gt;Initially everything feels confusing.&lt;/p&gt;

&lt;p&gt;Phabricator feels confusing.&lt;br&gt;
Gerrit feels confusing.&lt;br&gt;
GitLab workflows feel confusing.&lt;br&gt;
CI/CD feels confusing.&lt;/p&gt;

&lt;p&gt;But slowly, things start making sense.&lt;/p&gt;

&lt;p&gt;And one day, you may also see your own contribution merged into a production codebase.&lt;/p&gt;

&lt;p&gt;— Gautam Kumar Maurya (GKM)&lt;/p&gt;

&lt;h1&gt;
  
  
  OpenSource #Wikimedia #GitLab #Gerrit #CI_CD #SoftwareEngineering #OpenSourceContribution #DataScience #Engineering #GKM #GautamKumarMaurya
&lt;/h1&gt;

</description>
      <category>beginners</category>
      <category>github</category>
      <category>opensource</category>
      <category>gautamkumarmaurya</category>
    </item>
  </channel>
</rss>
