Lots of good technical starting points here. I don’t want to prematurely discourage you, but before you get into any code, evaluate your problem solving abilities. If that is an area you struggle in, work on that first, or at least in conjunction with programming basics.
I’ve worked with engineers who have all the code skills, but when faced with a complex issue, struggled to break it down into it’s simplest components and wound up with a messy, over-engineered solution.
I thought satisfactory at first too, but fluffy tailed hogs and lizard doggos don’t seem to give a shit that I just built an oil pipeline and two dozen oil refineries in their home.