If you have downloaded and used any of my programs you'll know instantly that I am not a professional programmer. I started writing VB programs because I don't like paying for a program that has 10 other things that I don't need. All of my programs, now and in the future, will be centered around this idea. Hopefully, they accomplish one task and do it fairly well. Plus I found that I totally enjoy the entire programming process --- planning, researching, desgning and de-bugging.
I study VB6 by downloading free programs and studying the code [This is NOT intended to be a plug but if you happened to be interested in this sort of thing Planet Source Code is a fantastic site (www.planetsourcecode.com)] and by buying books. After I study the code I usually find features that are new to me and that I could probably use in a future program. But I wait until I need that feature in a program before I write that program. In other words, when I learn a new feature I don't immediatley write a program around it.
After downloading/buying several programs over the years I have come to detest the idea of the programmer/company playing games with my computer. What I mean is that the program will write values to the Regsitry, may or may not allow you to delete the program after you're done with it and generally leave files behind that just take up space. I understand that some of these things are necessary but most of the time when I delete a program there are always files/directories left behind. I have had as many as 10 empty directories on my drive serving no purpose whatsoever. I then have to go in and manually remove them. I'm not saying I know more than they do but to me that's sloppy and unprofessional. If you pay for my program then the least I can do is delete everything that I put into your computer. None of my programs do any of these things.