I’ve recently started working through 100 Days of Code: The Complete Python Pro Bootcamp course on Udemy. My goal isn’t just to complete the course (we’ll see how far I actually get…), but really just to use it as a structured way to ramp up on Python again. Even though I’ve spent most of my career either as a software developer or technical lead, I haven’t done a ton of no-kidding, hands-on coding with Python directly. Most of my earlier coding experience has been with C#, JavaScript, some PHP and in recent years more of my day-to-day work has increasingly involved Python. While I consider myself at the intermediate level I decided to jump right in at the beginning of this course to make sure I’m not overlooking some important fundamentals.
Back to the Basics
The first week (Days 1–7) revisited all the basics you would expect in any intro programming course. Nothing stood out as particularly new so much of this was just review.
- Variables, input prompts, and strings revisiting how Python handles variable assignments and string formatting. Python’s f-string capability is similar to other languages’ for building formatted strings without the verbosity of concatenation (which was also covered)
- Type checking, concatenation, and calculations let me experiment with str(), int(), and float() reminded me that while Python is dynamically typed, it still expects you to be intentional about conversions.
- Control flow with conditionals and loops using if / elif / else, for, and while constructs reinforced similarities with other languages, but also reminded me of how much more readable Python’s syntax can be when structured well.
- Randomization was also covered including importing the random module and exploring Python’s standard library which was a nice intro to using Python modules.
- Finally, Functions and parameters were reviewed focusing on reusable blocks of code for making it easy to organize logic.
Mini-Projects and Hands-On Practice
While most of the material was review, the mini-projects made it fun. A rock-paper-scissors game tied together randomness and control logic, the password generator project was built from lists and loops to solify these concepts and syntax and also was a nice quick automation exercise. In addition to this, there was a very basic text adventure requiring branching logic and careful user input handling. To wrap up the projects, a classic Hangman game was built, which combined many of the concepts above into one cohesive project.
I really liked the format of the course and how it embeds these projects as part of the learning experience. It’s not just a matter of simply watching (or sleeping) through a ton of videos, but instead forces you to use / think about the concepts covered by building practical examples.
One thing that surprised me was Reeborg’s World — the maze problem was more challenging than I expected! It was a humbling reminder that even simple-looking problems can expose logical gaps and test your patience (and debugging skills).
Reflections After Week 1
Even though these concepts were familiar, I was able to get acclimated to the structure of this course and enjoyed the projects aspect as well as the other little learning-reinforcements including the coding exercises and quizzes. Looking back I probably could have skipped this first week as the concepts were very basic, however I do feel that I got a good overall sense of where things are headed and enjoyed the practical nature of how things are structured.