I also have a deep passion for computer graphics and game programming. After learning how to program in Python, I began learning “C++ through game programming”. The games were text-based games… but still loads of fun, and very satisfying.
Not long after that I became hungry for some proper graphics. I dabbled with “Allegro 5” for a while which I used to make 2D games, and then ended up settling on OpenGL as a way of getting into proper 3D graphics, which I learnt by setting myself the challenge of programming my own RC Flight simulator.
I doubt there’s a programmer alive today that doesn’t spend time searching online as part of their job when it comes to problem solving. Other than working my way through two excellent books, all of my knowledge and understanding, I’ve acquired through Googling and experimenting with code… no college or university education in programming, and no teaching or tutoring from anyone else.