Projects

100 Days of Code: The Complete Python Pro Bootcamp (22/100)

Day 15

Built CLI coffee machine logic. https://github.com/pbrazeale/100-Days-of-Code/blob/main/Day_015_Coffee_Machine/main.py

Managed to build everything but the “off” function without watching the solution. When she went over that requirement, I import sys and added a sys.exit() call for an “off” request. This was far more engaging than the fist chunk of problems, and I’m finally excited to keep going.

Day 017

Built a CLI Quiz Game. https://github.com/pbrazeale/100-Days-of-Code/tree/main/Day_017_Quiz_Game

Using OOP I created 5 modules. Main, 2 classes: Question, QuizBrain, data, and data2. Using: https://opentdb.com/api_config.php API, I manually downloaded a JSON data structure, cleaned it up and plugged into into the program to update the question_bank.

Overall this was an enjoyable project, and I feel it solidified the OOP concepts covered in the previous lesson.

If you consider taking the course, and have prior python experience (such as CS50P) This is where I’d start.

When it came to the JSON clean up, rather than manually format code, I followed this tutorial and setup and an automatic linter: https://www.youtube.com/watch?v=QU3lxjJ0Kbo&t=224s Black Formatter and isort

This will carry forward and save me headaches and time.

Day 018 Turtle GUI

Created a popup that painted a Hirst style dot painting.

Watched the lecture up to the point that Dr. Yu introduced the Colorgram module and then I ran with it, reading the documentation and figuring out how to convert Colorgram object into a needed tuple for Turtle. Created a painting function and extrapolated out the row function from the columns. All-in-all it was a fun project with only minor bugs to fix. Maybe took ~45 minutes to read and code up?

This was an excellent project to make myself read documentation and figure out a new module without handholding.

Day 020 & 021 Snake Game

A true classic that was fun to build.

Adjusted the food class. Named my method plop() and when selecting randint, I chose (-28, 28) * 10 to make the food align better with the snake.

Built snake method grow() on my own ahead of the lecture. By day 021 I understood the assignment and with the introduction of Super Classes I was off an running.

Built class Scoreboard on my own, and then refactored according to the lesson to use CONSTANTS, and separated my score() to extrapolate out the update_scoreboard() method and keep the logic seperated. Still need to read Clean Code

Followed the instructions to change my grow() method.

See gif of the game here: https://x.com/pbrazeale/status/1892655075270484043

Day 023 Turtle Crossing (frogger clone)

Built a capstone Turtle game.

A simplistic frogger clone, but an excellent learning tool to solidify the concepts around OOP and separation of methods.

NeetCode SQL for Beginners (60/75)

Linux Journey Grasshopper (2/8)

https://linuxjourney.com/

Books

The Linux Command Line by William Shotts (144/594)

How Linux Works by Brian Ward (95/366)

LPIC-1 Exam 101 (11/554)