Developers quick to adopt .NET 2.0, slow to leave Visual C++ 6.0

The Code Project is a popular resource site for Windows developers. It has polled its users on what programming language they use; see here for the details. Three points to note:

Visual C++ 6.0 still has high usage – nearly on a par with Visual C++ 2003 and 2005 combined. 19.78% vs 20.34% at the time of writing. I wonder if C runtime issues are a factor here. Visual C++ 6.0 is the last version that links to the standard mscvrt.dll; see Visual Studio 2005 DLL Hell for more details. That’s why I still have it installed on my machine. If that’s not it, I’d be interested to know why so many are still using this old product.

By contrast, there has been rapid C# 2.0 adoption. 18.93% C# 1.x versus 44.32% C# 2.0. I can understand this; .NET 2.0 is considerably improved over 1.x and there is little reason not to switch.

Finally, there is a decent showing for Delphi at 24.54%. No surprise here; it’s a fantastic tool for Win32 coding. I guess the problem for Borland is that many are still using Delphi 7.x or earlier versions.

Note that the percentages add to more than 100% because programmes use mulitple tools; and that this is not a reliable snapshot of anything other than Code Project’s community.

Funnily enough, I have just started using Visual C++ 6.0. As you know I’m a VB/VB.NET/C# programmer but I have decided to learn C++ for several reasons:
* My brain needs to be stretched again
* There will still be a need for C++ skills regardless of how ‘managed’ teh Vista API becomes
* I’d like to learn to program to a high degree of control of the machine.

So why Visual C++ 6.0? Well, the copy I have fell off the back of a lorry, but I’d choose this in preference to VC++ 8.0 as there is ONE lagnuage to learn instead of two: the latter’s managed extensions are almost a second langauge in their own right. I also DON’T see the popint in using a low-level language if you are going to circumscribe what you do with it by using a mostly managed interface to interact with the machine.
I am ploughing through Ivor Horton’s excellent book on learning VC++ 6.0 and this convinces me that there will always be a need for the Office-model of document/view application programming, and that MFC’s future is assured.