• Our Office
  • 429 A-Block DHA EME Lahore

100 Days of Python
My 100 Days of Code — Python Journey

When I began the 100 Days of Code challenge, I wasn’t a complete beginner. I already understood the fundamentals of Python — variables, loops, conditionals, functions, and data structures. But I wanted to take my skills further — to strengthen my foundation and practice consistently through hands-on projects.

Expanding My Knowledge

Over the course, I practiced everything from control flow and logical operators to debugging, functions, and building small games like Rock Paper Scissors, Treasure Island, and Blackjack. Each day introduced new challenges — from loops and lists to advanced topics like object-oriented programming, file handling, data analysis with Pandas, and creative graphics with Turtle.

Hands-On Projects and Confidence

By building projects such as the Snake Game, Coffee Machine Simulation, and U.S. States Game, I gained a deeper understanding of real-world coding logic. Debugging, reading errors, and refining my thought process made me a more confident programmer.

API Integration, Authentication & Backend Development

As I grew more comfortable with Python, I moved toward backend development using FastAPI. I learned to build RESTful APIs, handle data securely, and integrate endpoints with frontend applications. Along the way, I practiced implementing authentication and authorization systems using JWT tokens for secure user sessions and access control.

These backend exercises gave me a clearer understanding of how APIs communicate, how to validate requests, protect routes, and structure scalable backend systems — skills that prepared me for real-world web development.

Growth Through Practice

The biggest lesson wasn’t just about learning new syntax — it was about consistency and mindset. The challenge helped me develop patience, focus, and discipline. Coding became more than a skill; it became a daily habit and a way to grow both technically and personally.

Leave A Comment

All fields marked with an asterisk (*) are required