My first computer was later than most, in 1997. My parents were too blue-collar to have ever needed a computer in the mid-80s to late 90s so mainly it's been PC-based architectures for me
I have self-taught myself C++ and C# programming in general, starting in 2005, and eventually gotten more fond of doing more graphics programming. Prior to that I was making web pages in HTML and PHP. I actually got my Bachelor's in Art, and specialized in electronic visualization (my current job title is website developer). That said, I did take some CS courses, but it wasn't enough for me to get a minor in it, and I had already spent almost 6 years in college by then. It did help me fully understand object-oriented programming.
The programming journey has been an on-and-off-thing for me. Six years ago I picked up OpenGL and found a lot of intermediate-advanced topics overwhelming. I made a simple 3D pong and abstract space shooter, and then went back to 2D graphics. Two years later I tried out DirectX and got farther ahead this time. My newfound knowledge in object-oriented programming made things easier. I finally built a small engine (or should I say, framework) with which to load models and textures with and it used my .obj parser.
After that I decided to delve into a new language. For me the language of choice was C#, as it was supported by XNA and set out on a goal to get a game on Xbox (which is still ongoing). Things picked up a lot since then. Although XNA was higher-level than native DirectX, it let me focus on learning and applying more complex features, and currently working on an engine alongside a game that uses it.
It's still a tough road ahead of me. I didn't take any classes on multi-variable calculus, statistics, and whatever linear algebra I had to understand, I picked it up along the way. A lot of technical papers on rendering techniques sure sound interesting, but half the time the math goes over my head. I'm not sure exactly how I will enter the game industry, if at all. I would like to get a C# programming job, but breaking into a new language professionally feels a lot like getting your first programming job. They usually already expect you to have done it at a previous job. Closest I got was for a junior C# Unity programmer job, but I lacked enough experience for it.
Also, despite my web profession, I don't really do anything with Flash or the newer real-time web APIs like WebGL. Perhaps down the road I will try to marry the web programming and game programming realms in some way.