Visual Basic's Next Chapter ByPeter Coffee 2005-10-24
Article Rating: / 0
Rate This Article:
Add This Article To:
Opinion: Visual Basic isn't flashy, but it (still) gets the job done.
Next month will see the next chapter of a saga that began with Microsoft's Visual Basic (through Version 6.0), took a dramatic turn with the early '00s Visual Basic .Net and will reach a climax with the forthcoming Visual Basic 2005. If you're not a developer, you probably don't know that these names refer to substantially different languages. From me, that's not a criticism, just an observationsome developers aren't merely aware, but angry.
Click here to read about the developers demanding continued support of Visual Basic 6.
ADVERTISEMENT
That ire can blind those people to the purpose of Visual Basic and the reasons that it's a good developer strategy to keep pace with its continuing reinvention. It's VB's role to make Windows development the path of least resistance for those who know what they want to get done: VB's past was driven by that, not by computer science doctrines about why to create a new programming language or how to make it a good one. VB's future relies on more and better science, but it's still a tale of pragmatism rather than purity.
Visual Basic 1.0 put the Windows API where you could see it. Later versions introduced mail-enabled applications and multitier abstractions. With pluggable user interface controls, the long-promised scenario of a marketplace in objects came closer to reality under VB than under any other languagedespite shortcomings of incompleteness and lack of object-oriented rigor. By the time we'd gotten to VB 6.0, it was an effective tool for assembling components built with other, lower-level tools, encouraging platform-oriented coders to build modules business-oriented developers would apply to specific needs.
Startling to many, therefore, was the degree to which Visual Basic .Net was not an upgrade; it was a replacement. "Visual Basic .NET ... is not merely Visual Basic 6.0 with a few new features added on. Instead, Visual Basic has been thoroughly redesigned and restructured," declared Microsoft Program Manager Ed Robinson on Page 1 of his 547-page book, "Upgrading Microsoft Visual Basic 6.0 to Microsoft Visual Basic .NET" (Microsoft Press, 2001).
VB .Net opened doors to a new workplace of full object orientation, multithreaded applications and the many facilities of the .Net Common Language Runtime environment. In the process, it left behind more than 100 previous VB features or behaviors, some of them listed at vb.mvps.org/vfred/breaks.aspa site whose URL reflects the nickname Visual Fred that some programmers coined to show their Opinion that Visual Basic .Net might be many things, but it wasn't really Visual Basic.
The pseudonymous Doctor Dobb's Journal columnist Verity Stob ironically retorted in late 2002 that the Visual Fred camp "objects to Microsoft's vile and underhanded attempt to remove subtle traps from VB .NET, to clean up baffling and ambiguous syntax, and to erase pointless inconsistencies." True, many developers who'd built large collections of intellectual property in Visual Basic wished that Microsoft would not break the container in which they'd stored their work; others, though, welcomed the company's willingness to focus on possibility rather than preservation.
Visual Basic 2005, which we'll see released next month, makes enormous improvements in abstractionnotably, with "My Namespace," which compresses formerly complex code into simple expressions. Automatic recognition and correction of coding errors also takes a big jump in VB '05. Some of the dynamic development convenience that was beloved by many in VB 6.0 will also return (but with less mess under the hood) in VB '05and the visual tools get better as well.
Click here to read more about Visual Studio 2005.
Substantial changes are already being telegraphed for VB 9.0 that will make it much more powerful in ways that reflect developers' increasing sophistication in wanting rich access to data. And many people will complain about the resulting need to keep learning.
I don't get excited about chances to work in VB. It's a pickup truck of a languagenot a sports car like C, not a Humvee like Ada. But pickup trucks do a lot of the work in the real world, and VB will keep doing a lot of the work in the cyber-world as long as Microsoft keeps reinventing it to meet changing needs.