# Commit, Push, Repeat: How 100 Days Reshaped My Digital DNA

*2024-09-30 · tags: machine-learning, reactjs, 100daysofcode, learn-in-public, data-structure-and-algorithms*

A comprehensive journey through 100 days of coding, learning, and building projects that transformed my development skills

---

#### Introduction 👋

Hello! I’m Mohit Goyal, a sophomore, pursuing a Computer Science degree. I aim to gain knowledge of MERN stack and Machine Learning and land at least one internship before my pre-final year. This post chronicles my 100 Days of Code journey, where I committed to coding every day for 100 days straight. Whether you’re a fellow coder, a curious onlooker, or someone considering their coding challenge, I hope my experiences resonate with and inspire you.

#### The Beginning 🌱

On [Day 1](https://x.com/ByteMohit/status/1803687281984938116) of this journey, I sat at my desk, a mix of excitement and trepidation coursing through me. The prospect of coding every day for the next [100 days](https://x.com/ByteMohit/status/1839725624530796940) was thrilling and daunting. Armed with nothing but a laptop and an unwavering determination, I embarked on one of my life's most transformative experiences.

**My aims?**

1. Master the Data structures and Algorithms.
2. Learn about various Machine Learning Algorithms
3. Build a portfolio and a bunch of Projects
4. Attend Community Events and Engage with the Community
5. Get a Good Understanding of Web Technologies ( e.g. React)

### The Journey at a Glance 🗺️

- **Hours coded:** 150+
- **Languages/Technologies:** JavaScript, React, Node.js, MongoDB, Python, Java
- **Projects completed:** 5+
- **Event Attended:** 6+
- **Hackathon Participated:** 3+

### Top 5 Triumphs 🏆

1. Mastered Fundamental Data Structures and Algorithms
2. Designed and launched a personal portfolio website
3. Developed multiple full-stack projects
4. Contributed to open-source projects on GitHub
5. Gained a solid understanding of foundational Machine Learning algorithms

### Projects Showcase 🛠️

Throughout my 100 Days of Code journey, I built several projects that helped me apply and reinforce my learning. Here are some highlights:

**Paytm Simple Clone |** [Repo Link](https://github.com/MohitGoyal09/paytm-simple)

- **Technologies used:** React, Node.js, MongoDB, ShadCn Ui
- **Features:** User authentication, CRUD operations, data persistence
- **Learning outcome:** Gained full-stack development experience

**SmartiCalc |** [Repo Link](https://github.com/MohitGoyal09/SmartiCalc)

- **Technologies used:** React, TypeScript, Vercel, Git, ShadCn, Mantine, Google’s Gemini API
- **Features:** interpret and solve complex mathematical problem
- **Learning outcome:** Learned to work with APIs, TypeScript, and various UI libraries

**TextractAI |** [Repo Link](https://github.com/MohitGoyal09/TextractAI)

- **Technologies used:** React.js, ShadCn UI library, Google’s Gemini API
- **Features:** PDF upload and text extraction, AI-powered text summarization, and Adjustable summary length (short, medium, long)
- **Learning outcomes:** Gained hands-on experience with React hooks and functional components, Learned to integrate and work with advanced AI APIs (Gemini) and Enhanced UI/UX design skills

**SMS Spam Classifier |** [Repo Link](https://github.com/MohitGoyal09/SMS-spam)

- **Technologies used:** Python, Jupiter NoteBook
- **Features:** Classify the given text as spam or not
- **Learning outcomes:** Learned about NLP for processing text data, implemented various machine learning algorithms

Each project presented unique challenges and learning opportunities, contributing significantly to my growth as a developer.

### Biggest Challenges and Solutions 💪

1. **Challenge:** Grasping complex Data Structures and Algorithms concepts **Solution:** Created visual aids and implemented daily coding practice on platforms like LeetCode and GfG
2. **Challenge:** Staying consistent with coding daily, especially on busy or low-energy days. **Solution:** Created a minimal daily goal (e.g., 30 minutes of coding) and built a streak-tracking habit
3. **Challenge:** Managing the complexity of full-stack projects. **Solution:** Adopted Agile methodologies and broke projects into smaller, manageable tasks
4. **Challenge:** Balancing learning new concepts with building projects. **Solution:** I adopted a project-based learning approach, choosing projects that required me to learn and apply new skills.
5. **Challenge:** Understanding the math behind Machine Learning algorithms **Solution:** Revisited fundamental mathematics and statistics, utilizing online courses and visualizations.

### Key Learnings 🧠

1. **Consistency rules strength:** Small daily efforts add to big improvements over time.
2. **The power of community:** Connecting with fellow coders accelerates learning and provides essential support.
3. **Accept mistakes as learning opportunities:** Debugging isn’t just about fixing code; It is an opportunity to deepen understanding.
4. **How to study:** Finding effective study methods is as important as the content.
5. **Balancing breadth and depth of learning:** Knowing when to dive deep and when to explore is the key to successful growth.
6. **Don’t waste time planning:** Dive in and start coding. Over-planning can be a form of procrastination.

### Most Valuable Resources 📚

1. AtoZ DSA Sheet [here.](https://takeuforward.org/strivers-a2z-dsa-course/strivers-a2z-dsa-course-sheet-2/)
2. “100 Days of Machine Learning” — By Campus X [here](https://youtube.com/playlist?list=PLKnIA16_Rmvbr7zKYQuBfsVkjoLcJgxHH&si=xeqoCqdH-X-Mgr65).
3. “Chai aur React” — By Hitesh Chaudary [here](https://youtube.com/playlist?list=PLu71SKxNbfoDqgPchmvIsL4hTnJIrtige&si=vVm0RWZkGXBSaORB).
4. Machine Learning Specialization by Andrew Ng [here.](https://www.coursera.org/specializations/machine-learning-introduction)

### The Impact on My Career 📈

This challenge has been a catalyst for my professional growth. I’ve gained technical skills, improved my problem-solving abilities, and learned to embrace continuous learning. I’m now actively interviewing for junior developer positions, with a portfolio that showcases my growth and dedication.

### Advice for Future Participants 🗣️

1. Start with a plan, but be flexible
2. Progress Step by Step don’t try to jump ahead
3. Don’t compare your day 1 to someone else’s day 100
4. Prefer Consistency over quantity
5. Focus on one thing at a time

### What’s Next? 🚀

1. Dive deeper into Typescript and Serverless architecture
2. Contribute more to open-source projects and participate as much as I can
3. Start writing blogs on my pre-existing projects and upcoming projects
4. Deep Dive into Machine Learning and Deep Learning

### Final Thoughts 💭

These 100 days have been challenging, rewarding, and utterly transformative. I’ve learned that becoming a developer is not just about coding every day, but about embracing the journey of continuous learning and growth, to anyone considering this challenge: leap. Your future self will thank you.

### Connect with Me 🌐

- Twitter: [ByteMohit](https://x.com/ByteMohit)
- GitHub: [MohitGoyal09](https://github.com/MohitGoyal09)
- LinkedIn: [Mohit Goyal](http://www.linkedin.com/in/mohit-goyal09)