Post

๐Ÿš€ From Silent Developer to Open Source Contributor: My 4-Month Journey

๐Ÿš€ From Silent Developer to Open Source Contributor: My 4-Month Journey

Four months ago, I was that developer who stayed quiet, focused solely on my day job, and never touched open source for about 10 years. Today, Iโ€™m sharing an incredible transformation that every software engineer should experience.

๐ŸŒฑ The Journey Began Small

It started with tiny personal projects โ€” scratching my own itches, building small tools I needed. Then courage grew:

  • ๐Ÿ“ Rails contributions (still learning the ropes โ€” PRs didnโ€™t merge, but the feedback was invaluable!)
  • ๐ŸŽจ Jekyll themes for the community
  • ๐Ÿ’Ž Rails gems solving specific problems
  • ๐ŸฆŠ GitLab contributions โ€” where everything changed

๐Ÿ† The GitLab Experience: A Masterclass in Culture

Just earned my GitLab Contributor Level 3 badge ๐ŸŽ‰ โ€” but thatโ€™s just a symbol. The real treasure is discovering GitLabโ€™s incredible culture and values.

Every single team I interacted with โ€” from engineering to technical writing, from security to UX โ€” demonstrated the same amazing qualities:

  • ๐Ÿค Genuine helpfulness that goes beyond politeness
  • ๐ŸŒ Inclusive collaboration that welcomes newcomers
  • ๐Ÿ’ก Thoughtful feedback that elevates your thinking
  • ๐ŸŽฏ Mission-driven approach where everyone cares about the bigger picture

Those qualities perfectly reflect GitLabโ€™s core values: Collaboration; Results for Customers; Efficiency; Diversity, Inclusion & Belonging; Iteration; and Transparency. So you know their values arenโ€™t just words on a wall, theyโ€™re lived daily by real people who make you feel valued as a contributor, regardless of your experience level.

I even had a few merge requests in GitLab that didnโ€™t get merged โ€” but the feedback I received on those MRs was so constructive that it pushed me to refine my approach and iterate faster.

๐Ÿ“š What Open Source Really Taught Me

The learning explosion was beyond anything I expected:

๐Ÿ”ง Technical Skills:

  • Code quality standards that transformed how I write software
  • Architecture thinking โ€” seeing systems from multiple perspectives
  • Some Testing approaches I never knew existed
  • Performance considerations for global-scale applications

๐Ÿ’ฌ Communication & Collaboration:

  • Asynchronous communication across timezones and cultures
  • Technical writing that actually serves users
  • Code review etiquette that builds rather than tears down
  • Constructive feedback that helps everyone grow

๐Ÿง  Problem-Solving Approaches:

  • User empathy โ€” real people with real pain points
  • Constraint thinking โ€” working within existing ecosystems
  • Community dynamics โ€” how decisions impact thousands of users
  • Iterative improvement over perfect solutions

๐ŸŒ Global Perspectives:

The diversity of thinking is mind-blowing. Contributors from different countries, backgrounds, and experience levels all bring unique insights that make solutions infinitely better than what any individual could create.

๐Ÿ” A Real Problem, A Real Solution

During my GitLab contributions, I discovered a recurring issue: dozens of requests for zoom/pan functionality in Mermaid diagrams. The pain was real for anyone working with large, complex diagrams that required detailed exploration โ€” be it system architecture overviews or extensive flowcharts.

The Mermaid team has explicitly indicated that zoom/pan functionality should be provided via an external library rather than added to their base code โ€” see their comment here: https://github.com/mermaid-js/mermaid/issues/4022#issuecomment-1499098685. In other words, they prefer that any enhancements remain decoupled so that upgrading Mermaid itself is uninterrupted.

Existing solutions either required heavy dependencies like D3.js or were too simplistic for real-world use.

๐Ÿ’ก From Contribution to Innovation

I created comprehensive merge requests for GitLabโ€™s platform โ€” but hereโ€™s where GitLabโ€™s amazing culture shined again:

Instead of just saying โ€œno,โ€ the technical writing team gave me transformative feedback: (shortly) โ€œThis is incredible work, but itโ€™s too much new code for our codebase (about 29% new code). Have you considered making it a standalone package that could help the entire ecosystem and would work for GitLab too?โ€

That suggestion changed everything. ๐Ÿ’ก

๐Ÿ“ฆ The Result: SVG Toolbelt

What started as a GitLab-specific solution became something for everyone:

  • ๐Ÿ”— Demo: https://zakariaf.github.io/svg-toolbelt
  • ๐Ÿ”— GitHub: https://github.com/zakariaf/svg-toolbelt

Zero dependencies. Full accessibility. Mobile-first. TypeScript native.

Born from real GitLab needs, refined by open source collaboration, now helping the ecosystem make their documentation more accessible.

๐ŸŒŸ My Strong Advice to Fellow Developers

Contribute to open source. Start today.

Not for your resume (though it helps), but for the incredible learning experience:

  • โœ… Youโ€™ll see how world-class teams actually work
  • โœ… Youโ€™ll learn from developers much smarter than you
  • โœ… Youโ€™ll build real empathy for end users
  • โœ… Youโ€™ll improve code quality through rigorous review
  • โœ… Youโ€™ll discover new approaches to old problems
  • โœ… Youโ€™ll experience true global collaboration

๐Ÿš€ Whatโ€™s Next

This is just the beginning. Open source has shown me a world where:

  • ๐Ÿค Collaboration trumps competition
  • ๐Ÿ“š Learning never stops
  • ๐ŸŒ Impact transcends job descriptions
  • ๐Ÿ’ Giving back creates unexpected opportunities

To my fellow developers: Whatโ€™s stopping you from making your first contribution? The community is welcoming, the learning is invaluable, and your unique perspective is needed.

To everyone at GitLab: Thank you for showing what incredible culture looks like. Your values, paired with genuine care for contributors and users alike โ€” is truly inspiring. Youโ€™ve created something special! ๐Ÿ™

P.S. โ€” From a small GitLab issue to a published package helping developers worldwide โ€” this is the magic that happens when amazing people collaborate on meaningful problems! โœจ


  • ๐Ÿ”— SVG Toolbelt Demo: https://zakariaf.github.io/svg-toolbelt
  • ๐Ÿ”— NPM Package: https://www.npmjs.com/package/svg-toolbelt
  • ๐Ÿ”— GitHub Repository: https://github.com/zakariaf/svg-toolbelt
  • ๐Ÿ”— GitLab Profile: https://gitlab.com/zakaria-fatahi
This post is licensed under CC BY 4.0 by the author.