I have been programming for about 10 years. My first experience with programming was with GWBASIC in "CIS101: Introduction to Computers" class at Southwestern College. I was immediately hooked. I started by taking every programming class I could find. I even took RPG-II -- and enjoyed it!. Soon, I switched majors from Biology to Computer Science.
Now I write almost everything in C++. Windows programming is my specialty. At home, I currently use Microsoft's Visual Studio 97. I used to use Borland C++ 5.0 (version 5.5 is now freeware) with OWL, and I've used just about every win32 class library, including Zinc, zApp and Starview.
MFC isn't bad in practice. This was the first place I ever saw
... in production C++ code, though!
UGH! Now that I've learned COM, I've gotten more or less used to that.
delete this;
...
Like the Windows API itself, there seems to be a kind of perverse logic and coherence in MFC. I guess.
On the other hand, the MSVC IDE is fairly awesome. As always, Microsoft figured out how to do it right in the end. I have found the IDE to be extremely easy to use and customize, in most cases. I do have one complaint: I really detest the way the resource editor adds all kinds of garbage to the resource files it creates, and refuses to edit normal resource files. Yech.
If you are interested in seeing what my skills are, refer to my résumé page, although I'm definitely not looking for a job.
In order to stay current, I used to read several programming and computer-industry-related journals. Nowadays, I am just too busy to read about programming. I learn what I need to as required. One thing I've noticed is that it gets easier to learn new things when you (a) have been programming for a while, or (b) have a ridiculous deadline to meet and your boss is breathing down your neck.
People ask me all the time how to become a win32 programmer. Really. I'll just be walking down the street, and someone will stop me and ask me, "How do I become a Win32 programmer?" It's really embarrassing.
Just kidding! Actually, it is usually asked when I hang out in the #winprog channel on IRC (my nick is t_gypsy). I always advise people to avoid MFC until they have a good grasp on API-level programming. The way to do that is by reading "Programming Windows," by Charles Petzold. Besides being more or less useless for the types of application novices tend to write (small applets, dialog-based apps, l33t password stealers), MFC is not that easy to learn well, and the effect of writing bad Win32 programs using bad MFC code is the same effect you get when you multiply 2 fractions.
I don't really know of many Windows programming web sites. One of my friends from #winprog, theForger, made a really nice introductory tutorial, and there is a nice FAQ there too.