Single Player Blackjack Terminal Game

Hey guys,

This was my first off-platform coding project and I decided to make a single player blackjack game. See the project repo for the code and readme.

Being my first sizable self-led project, I found my biggest struggle to be planning/structuring my code and staying organized. As such, I found myself running into issues that would require me to refactor large chunks of my code, or work around them in obnoxious (and probably poor practice) ways.

One way this showed up was in redundant functions or separating processes that could probably be worked into the same function. I also got a bit lost in my use of global variables vs just feeding function arguments where they belong.

It ended up functional but quite a mess if I do say so myself. One element I would like to add is the ability to double a bet for one of the player’s hands after they split. In its current form, that didn’t seem like something I could accomplish without a lot of rewriting.

My biggest requests for feedback:

  • What are some things I did that would be considered poor practice? What should I have done instead?
  • How can I plan something like this better, before I even start coding?
  • What’s best practice in regards to git commits? How often should I commit?
  • Obviously anything else you notice that would help me write cleaner, better code! :slight_smile:

Thanks!