<?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>Forem: Nivesh Padamata</title>
    <description>The latest articles on Forem by Nivesh Padamata (@niveshpadamata1218).</description>
    <link>https://forem.com/niveshpadamata1218</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%2F3593117%2F860b9d95-aff1-466d-9715-c84a0062005f.png</url>
      <title>Forem: Nivesh Padamata</title>
      <link>https://forem.com/niveshpadamata1218</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/niveshpadamata1218"/>
    <language>en</language>
    <item>
      <title>My First Open Source Journey</title>
      <dc:creator>Nivesh Padamata</dc:creator>
      <pubDate>Sun, 02 Nov 2025 13:28:20 +0000</pubDate>
      <link>https://forem.com/niveshpadamata1218/my-first-open-source-journey-373k</link>
      <guid>https://forem.com/niveshpadamata1218/my-first-open-source-journey-373k</guid>
      <description>&lt;p&gt;Introduction&lt;/p&gt;

&lt;p&gt;Entering the world of open source was more than just a technical decision — it was a turning point in how I understood collaboration, learning, and real-world software development. Until then, my experience with coding had been mostly limited to personal projects and tutorials, where I wrote code alone and controlled every part of it. But open source changed that.&lt;/p&gt;

&lt;p&gt;Table of Contents:&lt;/p&gt;

&lt;p&gt;1.Why I Started with Open Source&lt;/p&gt;

&lt;p&gt;2.Setting Up My First Project: Nextcloud&lt;/p&gt;

&lt;p&gt;3.Understanding and Choosing a License&lt;/p&gt;

&lt;p&gt;4.My First Pull Requests&lt;/p&gt;

&lt;p&gt;5.Contributing to Practice Repositories&lt;/p&gt;

&lt;p&gt;6.Key Lessons Learned&lt;/p&gt;

&lt;p&gt;7.Tips for Future Contributors&lt;/p&gt;

&lt;p&gt;8.Final Thoughts&lt;/p&gt;

&lt;p&gt;1.Why I Started with Open Source&lt;/p&gt;

&lt;p&gt;Open source fascinated me because it blends learning, collaboration, and real-world problem-solving.&lt;/p&gt;

&lt;p&gt;It’s not just about writing code — it’s about contributing to something larger than yourself.&lt;/p&gt;

&lt;p&gt;My Initial Goals:&lt;/p&gt;

&lt;p&gt;-&amp;gt;Learn professional coding workflows beyond tutorials&lt;br&gt;
-&amp;gt;Understand version control and collaboration with Git and GitHub&lt;br&gt;
-&amp;gt;Connect with global developers and mentors&lt;br&gt;
-&amp;gt;Gain practical experience in debugging and documentation&lt;br&gt;
-&amp;gt;Build a portfolio of real-world contributions&lt;br&gt;
-&amp;gt;Each of these goals became achievable once I took my first small step.&lt;/p&gt;

&lt;p&gt;2.Setting Up My First Project: Nextcloud&lt;/p&gt;

&lt;p&gt;Why I Chose Nextcloud&lt;/p&gt;

&lt;p&gt;I selected Nextcloud because it offered the perfect mix of challenge and support for beginners:&lt;/p&gt;

&lt;p&gt;-&amp;gt;Excellent documentation – clear setup guides and contribution rules&lt;br&gt;
-&amp;gt;Active community – maintainers respond quickly and encourage new contributors&lt;br&gt;
-&amp;gt;Meaningful impact – used by millions globally&lt;br&gt;
-&amp;gt;Modern tech stack – PHP, JavaScript, and Vue.js&lt;br&gt;
-&amp;gt;Beginner-friendly labels – “good first issue” and “easy fix” made it approachable&lt;/p&gt;

&lt;p&gt;Setting Up the Development Environment&lt;br&gt;
Challenges I Faced&lt;/p&gt;

&lt;p&gt;Challenge 1: Large Codebase&lt;/p&gt;

&lt;p&gt;Problem: Nextcloud is a massive project with thousands of files&lt;br&gt;
Solution: Started by reading the CONTRIBUTING.md file and focused on one module at a time&lt;/p&gt;

&lt;p&gt;Challenge 2: Development Environment&lt;/p&gt;

&lt;p&gt;&lt;a href="![%20](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hoxlpthf9xkniaktiwuq.png)"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Problem: Setting up all dependencies was complex&lt;br&gt;
Solution: Used Docker containers to simplify the setup process&lt;br&gt;
Challenge 3: Understanding the Architecture&lt;/p&gt;

&lt;p&gt;Problem: Didn't know where to start making changes&lt;br&gt;
Solution: Read existing PRs and issues to understand common patterns&lt;br&gt;
Understanding and Choosing a License&lt;br&gt;
One crucial aspect of my project was understanding open source licenses. This was eye-opening!&lt;/p&gt;

&lt;p&gt;Why Licenses Matter&lt;br&gt;
A license:&lt;/p&gt;

&lt;p&gt;Protects your work&lt;br&gt;
Defines how others can use your code&lt;br&gt;
Clarifies contribution terms&lt;br&gt;
Prevents legal issues&lt;/p&gt;

&lt;p&gt;Licenses I Considered&lt;/p&gt;

&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%2Fr0rr47hwnhqmn01ln0wc.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%2Fr0rr47hwnhqmn01ln0wc.png" alt=" " width="800" height="398"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;My Choice: MIT License&lt;br&gt;
I chose the MIT License for my project because:&lt;/p&gt;

&lt;p&gt;Simplicity - Easy to understand for contributors&lt;br&gt;
Flexibility - Allows both open source and commercial use&lt;br&gt;
Wide adoption - Most developers are familiar with it&lt;br&gt;
Minimal restrictions - Encourages maximum collaboration&lt;br&gt;
Pro Tip: Add a LICENSE file to your repository root. GitHub will automatically detect it!&lt;/p&gt;

&lt;p&gt;My First Pull Requests&lt;br&gt;
PR #1: Documentation Fix (MERGED ✓)&lt;br&gt;
Repository: Nextcloud Documentation&lt;br&gt;
Issue: Outdated installation instructions&lt;br&gt;
Changes: Updated PHP version requirements and fixed broken links&lt;/p&gt;

&lt;p&gt;What I learned:&lt;/p&gt;

&lt;p&gt;Always reference the issue number&lt;br&gt;
Test all links before submitting&lt;br&gt;
Clear commit messages are crucial&lt;br&gt;
PR #2: Bug Fix in User Management (MERGED ✓)&lt;br&gt;
Repository: Nextcloud Server&lt;br&gt;
Issue: User search not working with special characters&lt;br&gt;
Changes: Added proper escaping for search queries&lt;/p&gt;

&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%2F9817yezh7jrz7ukw14af.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%2F9817yezh7jrz7ukw14af.png" alt=" " width="800" height="235"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;What I learned:&lt;/p&gt;

&lt;p&gt;Security matters - always sanitize inputs&lt;br&gt;
Write tests for your changes&lt;br&gt;
Follow the project's coding standards&lt;br&gt;
PR #3: UI Enhancement (UNDER REVIEW 👀)&lt;br&gt;
Repository: Nextcloud Server&lt;br&gt;
Issue: Improve accessibility of file sharing dialog&lt;br&gt;
Changes: Added ARIA labels and keyboard navigation&lt;/p&gt;

&lt;p&gt;What I learned:&lt;/p&gt;

&lt;p&gt;Patience is key - reviews take time&lt;br&gt;
Be open to feedback and suggestions&lt;br&gt;
Iterate based on maintainer comments&lt;br&gt;
Contributing to Practice Repositories&lt;br&gt;
To build confidence, I also contributed to beginner-friendly practice repositories:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;first-contributions
Task: Add my name to contributors list
Status: MERGED ✓
Time to merge: 2 days
Takeaway: Perfect for learning the fork-clone-PR workflow!&lt;/li&gt;
&lt;li&gt;HyunCafe/contribute-practice
Task: Add name and inspirational quote
Status: MERGED ✓
Time to merge: 3 days
Takeaway: Great for understanding markdown formatting and git basics.&lt;/li&gt;
&lt;li&gt;EddieHubCommunity/hacktoberfest-practice
Task: Add GitHub profile to community list
Status: MERGED ✓
Time to merge: 1 day
Takeaway: Active community with fast review cycles - highly recommended!
Key Lessons Learned&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Read CONTRIBUTING.md First&lt;br&gt;
Every project has guidelines. Reading them saves time and shows respect to maintainers.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Start Small&lt;br&gt;
My first PRs were:&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Documentation fixes&lt;br&gt;
Typo corrections&lt;br&gt;
Adding comments&lt;br&gt;
Small bug fixes&lt;br&gt;
Don't try to refactor the entire codebase on day one!&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Communication is Key
Before working on an issue:&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Comment on the issue expressing interest&lt;br&gt;
Ask for clarification if needed&lt;br&gt;
Propose your approach&lt;br&gt;
Wait for maintainer approval&lt;br&gt;
Then start coding&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Write Clean Commits
Bad commit:&lt;/li&gt;
&lt;/ol&gt;

&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%2Fmpyb3jy6c1301fdolp4w.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%2Fmpyb3jy6c1301fdolp4w.png" alt=" " width="800" height="78"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Good commit:&lt;/p&gt;

&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%2F5ueukgetxq6wwq7iun8l.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%2F5ueukgetxq6wwq7iun8l.png" alt=" " width="800" height="181"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Be Patient with Reviews&lt;/li&gt;
&lt;/ol&gt;

&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%2Fzn5jb5tx6qa12cy6s18c.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%2Fzn5jb5tx6qa12cy6s18c.png" alt=" " width="738" height="468"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Remember: Maintainers are volunteers with day jobs!&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Handle Rejection Gracefully&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Not all PR's get merged, and that's okay!&lt;/p&gt;

&lt;p&gt;When your PR is rejected:&lt;br&gt;
Thank the reviewer for their time&lt;br&gt;
Ask for feedback on what to improve&lt;br&gt;
Learn from the experience&lt;br&gt;
Move on to the next contribution&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Test Everything
Before submitting:&lt;/li&gt;
&lt;/ol&gt;

&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%2Fptj80553514j0353tdgm.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%2Fptj80553514j0353tdgm.png" alt=" " width="800" height="236"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Tips for Future Contributors:&lt;br&gt;
Getting Started Checklist&lt;br&gt;
[ ] Create a GitHub account&lt;br&gt;
[ ] Set up Git on your computer&lt;br&gt;
[ ] Learn basic Git commands (clone, branch, commit, push, PR)&lt;br&gt;
[ ] Find beginner-friendly projects&lt;br&gt;
[ ] Read project documentation&lt;br&gt;
[ ] Join project communities (Discord, Slack, Forums)&lt;br&gt;
[ ] Start with "good first issue" labels&lt;br&gt;
[ ] Make your first contribution&lt;br&gt;
[ ] Celebrate!&lt;/p&gt;

&lt;p&gt;Finding Projects to Contribute To&lt;br&gt;
Websites:&lt;/p&gt;

&lt;p&gt;1.Good First Issue&lt;br&gt;
2.First Timers Only&lt;br&gt;
3.Up For Grabs&lt;br&gt;
4.CodeTriage&lt;/p&gt;

&lt;p&gt;GitHub Search:&lt;/p&gt;

&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%2Felsbou3fegw33moxe15k.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%2Felsbou3fegw33moxe15k.png" alt=" " width="800" height="71"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Essential Git Commands:&lt;/p&gt;

&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%2F0kp7454pw3c0dn96ixff.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%2F0kp7454pw3c0dn96ixff.png" alt=" " width="800" height="426"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Writing Good PRs&lt;br&gt;
Template:&lt;/p&gt;

&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%2Fbt5uhu76apoqkbnllmjp.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%2Fbt5uhu76apoqkbnllmjp.png" alt=" " width="800" height="732"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;My Statistics After 3 Months:&lt;/p&gt;

&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%2Fi0fsnl4dacqb3zgw0g19.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%2Fi0fsnl4dacqb3zgw0g19.png" alt=" " width="662" height="668"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;What's Next?&lt;/p&gt;

&lt;p&gt;My journey is just beginning! Here's what I'm planning:&lt;/p&gt;

&lt;p&gt;1.Contribute to larger projects - Dive deeper into complex issues&lt;br&gt;
2.Become a maintainer - Help review others' PR's&lt;br&gt;
3.Create my own OSS project - Give back to the community&lt;br&gt;
4.Mentor new contributors - Share what I've learned&lt;br&gt;
5.Participate in GSoC - Apply for Google Summer of Code&lt;/p&gt;

&lt;p&gt;Final Thoughts:&lt;/p&gt;

&lt;p&gt;Open source contribution has been one of the most rewarding experiences of my developer journey. It's not just about code – it's about:&lt;/p&gt;

&lt;p&gt;1.Community - Meeting amazing developers worldwide&lt;br&gt;
2.Learning - Exposure to real-world codebases&lt;br&gt;
3.Impact - Contributing to software used by millions&lt;br&gt;
4.Career - Building a portfolio that speaks for itself&lt;br&gt;
5.Growth - Becoming a better developer every day&lt;br&gt;
6.If you're thinking about starting – just do it! Your first 7.contribution doesn't have to be perfect. The community is 8.welcoming, and everyone started where you are now.&lt;/p&gt;

&lt;p&gt;Useful Resources:&lt;/p&gt;

&lt;p&gt;-&amp;gt;GitHub Open Source Guide&lt;br&gt;
-&amp;gt;How to Contribute to Open Source&lt;br&gt;
-&amp;gt;First Contributions&lt;br&gt;
-&amp;gt;The Beginner's Guide to Contributing to Open Source&lt;br&gt;
-&amp;gt; Nextcloud Developer Documentation&lt;/p&gt;

&lt;p&gt;Let's Connect!&lt;br&gt;
I'd love to hear about your open source journey!&lt;/p&gt;

&lt;p&gt;GitHub: &lt;a class="mentioned-user" href="https://dev.to/niveshpadamata1218"&gt;@niveshpadamata1218&lt;/a&gt; &lt;br&gt;
LinkedIn: &lt;a href="http://www.linkedin.com/in/nivesh-padamata-bb7370322" rel="noopener noreferrer"&gt;www.linkedin.com/in/nivesh-padamata-bb7370322&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Have questions? Drop a comment below, and I'll be happy to help!&lt;/p&gt;

&lt;p&gt;Summary&lt;br&gt;
Key Takeaways:&lt;/p&gt;

&lt;p&gt;1.Start with documentation and small fixes&lt;br&gt;
2.Choose projects that interest you&lt;br&gt;
3.Read and follow contribution guidelines&lt;br&gt;
4.Be patient with the review process&lt;br&gt;
5.Learn from feedback and keep improving&lt;br&gt;
6.Give back to the community&lt;/p&gt;

&lt;p&gt;Your turn: What's stopping you from making your first contribution? Let me know in the comments!&lt;/p&gt;

&lt;p&gt;Thank you for reading! If you found this helpful, please share and follow me for more content about open source, web development, and my coding journey!&lt;/p&gt;

</description>
      <category>opensource</category>
      <category>github</category>
      <category>contribution</category>
      <category>openai</category>
    </item>
  </channel>
</rss>
