____ _ _ _ _ _ ____ _ _ _ _ _
/ ___|(_) |_| | | |_ _| |__ | _ \(_) |_| | | |_ _| |__
| | _| | __| |_| | | | | '_ \ | | | | | __| |_| | | | | '_ \
| |_| | | |_| _ | |_| | |_) | | |_| | | |_| _ | |_| | |_) |
\____|_|\__|_| |_|\__,_|_.__/ |____/|_|\__|_| |_|\__,_|_.__/
🌟 Master GitHub & Open Source in 21 Days! 🌟
Welcome to the GitHub Workspace Guide - a comprehensive, hands-on learning journey designed specifically for college students and beginners who want to master GitHub and become confident open source contributors!
This repository contains a carefully crafted 21-day curriculum that will take you from a complete GitHub beginner to someone who can confidently contribute to open source projects, collaborate with developers worldwide, and build an impressive GitHub profile.
- College students starting their programming journey
- Beginners who have heard about GitHub but don't know where to start
- Self-taught developers wanting to learn industry-standard collaboration tools
- Anyone who wants to contribute to open source projects
- Students preparing for internships and job interviews
By the end of this 21-day challenge, you will:
✅ Master Git & GitHub fundamentals - From basic commands to advanced workflows
✅ Create an impressive GitHub profile - Stand out to recruiters and employers
✅ Make real open source contributions - Build a portfolio of meaningful contributions
✅ Understand collaboration workflows - Work effectively with teams and maintainers
✅ Build confidence in code reviews - Give and receive feedback professionally
✅ Develop industry best practices - Write better commit messages, documentation, and code
✅ Network with the developer community - Connect with developers worldwide
✅ Prepare for technical interviews - Showcase your collaborative coding skills
Research shows that it takes approximately 21 days to form a new habit. This challenge is designed to:
- Build consistent daily practice - Small, manageable daily tasks
- Create lasting habits - Regular GitHub usage becomes second nature
- Provide progressive learning - Each day builds upon previous knowledge
- Maintain motivation - Achievable daily goals with visible progress
- Ensure retention - Spaced repetition and hands-on practice
Build your foundation and get comfortable with GitHub
| Day | Topic | Difficulty | Focus |
|---|---|---|---|
| Day 1 | GitHub Account Setup & Exploration | 🟢 Easy | Profile, Interface, Markdown |
| Day 2 | Git Basics - Local Setup | 🟢 Easy | Installation, Configuration, Basic Commands |
| Day 3 | Git Basics - Remote Connection | 🟡 Medium | SSH Keys, Push/Pull, Remote Repositories |
| Day 4 | Branching and Merging | 🟡 Medium | Branches, Merge Conflicts, Workflows |
| Day 5 | Forking and Cloning | 🟡 Medium | Fork vs Clone, Upstream, Syncing |
| Day 6 | Understanding Issues and Pull Requests | 🟢 Easy | Issues, PRs, Code Review Basics |
| Day 7 | First Local Contribution Simulation | 🟡 Medium | Complete Workflow Practice |
Start contributing to real projects and build your portfolio
| Day | Topic | Difficulty | Focus |
|---|---|---|---|
| Day 8 | Finding Documentation Opportunities | 🟢 Easy | Good First Issues, Documentation Fixes |
| Day 9 | Finding Code Contribution Opportunities | 🟡 Medium | Code Issues, Project Assessment |
| Day 10 | Making Your First Real Pull Request | 🟡 Medium | Complete PR Workflow |
| Day 11 | Small Fixes - Documentation & Typos | 🟢 Easy | Quick Wins, Building Confidence |
| Day 12 | Small Fixes - Code Improvements | 🟡 Medium | Bug Fixes, Small Enhancements |
| Day 13 | Understanding Project Guidelines | 🟡 Medium | CONTRIBUTING.md, Code Style |
| Day 14 | Engaging with Maintainers | 🟡 Medium | Communication, Feedback |
| Day 15 | Medium Complexity Contributions | 🔴 Hard | Feature Additions, Refactoring |
| Day 16 | Code Review and Feedback | 🟡 Medium | Handling Reviews, Iterations |
| Day 17 | Multiple Active Contributions | 🔴 Hard | Managing Multiple PRs |
| Day 18 | Building Your Portfolio | 🟡 Medium | Showcasing Contributions |
| Day 19 | Advanced Git Workflows | 🔴 Hard | Rebasing, Cherry-picking |
| Day 20 | Community Building & Networking | 🟡 Medium | Building Relationships |
Celebrate your achievements and plan your continued journey
| Day | Topic | Difficulty | Focus |
|---|---|---|---|
| Day 21 | Review, Reflect, and Plan Ahead | 🟢 Easy | Portfolio Review, Future Goals |
- ⭐ Star this repository to bookmark it and show your support
- 🍴 Fork this repository to track your personal progress
- 📱 Follow the challenge on social media using #21DaysOf#DrGViswanathanOpenSourceChallenge
- 📅 Start with Day 1 and follow the structured path
- ✅ Check off completed tasks in your forked version
- 🎯 Recommended: One day per day (21 consecutive days)
- ⚡ Intensive: 2-3 days per day (complete in 1 week)
- 🐌 Relaxed: 3-4 days per week (complete in 5-6 weeks)
- 📚 Self-paced: Go at your own speed, but maintain consistency
- Create a GitHub account and profile README
- Complete Phase 1: GitHub Fundamentals (Days 1-7)
- Make your first open source contribution
- Complete Phase 2: Open Source Contributions (Days 8-20)
- Reflect and plan your future (Day 21)
- Share your success story with the community
- 💬 GitHub Discussions: Use the Discussions tab in this repository
- 🐛 Issues: Report problems or suggest improvements
- 📱 Social Media: Use the hashtag #21DaysOf#DrGViswanathanOpenSourceChallenge
- 💼 LinkedIn: Share your daily progress and connect with other learners
- Phase 1: Day 1 • Day 2 • Day 3 • Day 4 • Day 5 • Day 6 • Day 7
- Phase 2: Day 8 • Day 9 • Day 10 • Day 11 • Day 12 • Day 13 • Day 14 • Day 15 • Day 16 • Day 17 • Day 18 • Day 19 • Day 20
- Phase 3: Day 21
Before starting this challenge, make sure you have:
- 💻 A computer running Windows, macOS, or Linux
- 🌐 Internet connection for accessing GitHub and downloading tools
- 📧 Email address for creating GitHub account
- 🧠 Basic computer skills (file management, using a text editor)
- ❤️ Willingness to learn and make mistakes (that's how we grow!)
Note: No prior programming experience required! This challenge is designed for complete beginners.
- 🔍 Search existing issues before asking questions
- 📝 Create detailed issue reports with screenshots when possible
- 🤝 Help other learners by answering questions you know
- 📱 Share your progress on social media to inspire others
We welcome contributions to improve this learning resource! See our Contributing Guidelines for details on:
- 🐛 Reporting bugs or errors
- 💡 Suggesting improvements
- 📝 Adding new resources
- 🔧 Fixing typos or broken links
Share your journey and connect with other learners:
- LinkedIn: Post daily updates with #21DaysOf#DrGViswanathanOpenSourceChallenge
- Twitter: Tweet your progress and tag @YourHandle
- Instagram: Share screenshots of your GitHub contributions
- Discord: Join our community server (link coming soon!)
This section will be updated with testimonials from students who completed the challenge
"This challenge transformed my understanding of open source. I went from being intimidated by GitHub to making my first contribution in just 10 days!" - Student Name
"The structured approach made all the difference. Each day built perfectly on the previous one." - Student Name
"I landed my first internship partly because of the GitHub portfolio I built during this challenge!" - Student Name
Completed the challenge? We'd love to feature your story!
- 📧 Email us your success story
- 📱 Tag us in your LinkedIn post
- 🔗 Share your GitHub profile showing your contribution graph
- 📝 Write a blog post about your experience
This project is licensed under the MIT License - see the LICENSE file for details.
- Created by: Dr. G Viswanathan Challenge Initiative
- Inspired by: The open source community and countless contributors worldwide
- Special thanks to: All the maintainers who welcome first-time contributors
- Dedicated to: College students everywhere who are starting their coding journey
This repository was created with love for the developer community. Special recognition to:
- GitHub for providing an amazing platform for collaboration
- Open source maintainers who dedicate their time to helping newcomers
- Educational institutions that encourage practical learning
- Students and learners who inspire us to create better resources
- ⭐ Star this repository (top right corner)
- 🍴 Fork this repository to your account
- 📅 Start with Day 1 right now
- 📱 Share on LinkedIn that you're starting the challenge
- 🔔 Watch this repository for updates and community discussions
Every expert was once a beginner. Every pro was once an amateur. Every icon was once an unknown.
The best time to start was yesterday. The second best time is now.
Made with ❤️ for the developer community
#21DaysOf#DrGViswanathanOpenSourceChallenge