I tinker in C#. There is allot of existing code now for it that can save me time. The .NET framework and having large debugged libraries available is nice, but there are still tradeoffs.
Vb6 is a dead language according to some definitions. In reality though, since it still works, its actually one of the most stable languages you will find. No break neck innovation, no one is whipping up new features that keep your head spinning. Its a stable environment. We know what it does, we know what it doesnt do, and there is a load of public code available for it.
If you aren't familiar with the VB6 IDE, here is a quick video:
One gripe with vb6 was that it needs the 1mb vb runtime installed in order to run on a system. Also if you wanted other features such as listviews, or progress bars you had to include references to external ocx or dll files which made distributions harder.
.NET actually took that mess to a whole new level. At the present moment I have 4 seperate versions of the .NET runtimes installed on my system each taking up hundreds of MB of disk space, and each requiring at least 20-30 minutes to download and install.
How about all of the fancy features of .NET compared to the basic class structures of vb6? Honestly I find vb6 simpler and more direct. Typing in .NET code is very verbose, as you walk your way through the different classes and enums. Also all of the advanced object oriented class features such as polymorphism. They are stressed allot, but in reality you can write an awful lot of code without having to use such features. Complexity and error are closely related.
Granted there is some liability in using VB6 for new products. There may come a day when it will cease to operate or bugs crop up in future operating systems, or more likely, that you will need some capability that cant be done in VB6 cleanly.
How is it that a decade latter, I still find myself reminiscing, and ranting on the new architecture? I guess to me, VB6 is still my perfect "get shit done quick" language due to its directness and simplicity. I am also lucky that I only really write research applications.
A danger of new technologies is that they tend to thrash about in the evolution process. Thank god i didnt start developing any code for windows phone! They have had several complete incompatible shifts in technology over the years and the phone still has poor market share.
Its amazing how many boutique programming languages are out there. This even extends to corners of the .NET framework such as WPF.
Mastery is being able to obtain a simple elegant answer even while interfacing with a complex (or even chaotic) system. Stability is virtuous.
Read more here: Visual Basic 6.0 superiority over .NET and the anger towards Microsoft