|
There's a petition up at www.ClassicVB.org, asking Microsoft to provide an extension to VB6 support and a new version of VB using the VB6 syntax.
When Microsoft brought out VB.NET in 2001, it was so incompatible with the previous version of Visual Basic (VB6) that for all practical purposes it was a completely new language. Microsoft provided a migration wizard, but it wasn't all that much use, as it simply commented out large chunks of code that it didn't know how to handle.
Mainstream support for VB6 is due to finish at the end of March, 2005 (this month!), and there is still no practical upgrade path for substantial VB6 projects. There are billions of lines of VB code out there which need to be maintained and brought forward.
The .NET enthusiasts get all very superior about this, and claim that VB coders are so stupid they can't learn a new language. They also suggest that VB6 applications can be left in VB6 for ever.
The first point is plain silly—any programmer worth his salt can learn a new language at need. The second point is more subtle, but equally wrong. If VB6 is never updated, newer platforms will acquire progressively more features which are inaccessible to applications written in VB6. Eventually, VB6 will not be able to run on modern platforms. So the evil day of rewriting may be postponed for a while, but it cannot be put off for ever.
When a new platfom appears and a new compiler is developed for it, it is expected that some code in an existing language might have to be rewritten in order to use the new platform features, for instance file input-output, user interface, or communication with other programs. But much code just does calculations of one kind or another (sorting, adding etc) and that part of it should not need any modification at all to compile and run on the new platform. But to go from VB6 to VB.NET, much of this code has to be rewritten as well. That costs a lot of money. Many programmers won't mind getting paid to do the same job over again, but their employers won't be so happy at the cost of it, which will of course have to be passed on to customers.
You might think that this is not of all that much interest to you as an Office user, even if you do some VBA coding. But think again. VBA and VB6 are essentially the same language, with only very minor differences. As a VBA developer, I frequently use general-purpose modules written originally in VB6.
If VB6 support has gone, VBA may be superseded in some future version of Office by an embedded version of VB.NET. That means, if your company decides to upgrade Office, they will have to take account of the time and money necessary to rewrite all the VBA code that everyone is using round the organisation. Almost anyone can do VBA code, and by recording macros some people may have created VBA code without ever being aware of it. So, in a large company, the IT people probably have no idea at all how much VBA is out there contributing to the productivity of individuals and workgroups.
I suspect that once they do an audit, IT departments will be shocked to find out how many recorded Word macros, Excel spreadsheets and little departmental Access databases there are around the place. And all of them will have to be rewritten if VBA goes. If you do VBA, that means you will have to cover a lot of this work. If you don't somebody else in your company will.
To avoid this, they may have to postpone that upgrade indefinitely. After all, much of Office is "good enough" for most purposes, and the fact is that the majority of companies only use about 5% of the capability of what they have now.
It will be much cheaper and easier to manage the upgrade process if VBA doesn't get replaced, but is extended with new features instead. That can only happen if Microsoft discovers how important it is to keep and extend popular languages, and not to break them when there is a platform change. To help them understand this, please go to www.ClassicVB.org and sign the petition. Even if you write no VB or VBA code yourself, bring this issue to the attention of your company's IT department. It matters to them and to you.

|