VS.NET Needs a Novice Version
VS.NET is a flexible and powerful programming tool, but a special novice version would expand its audience (and Microsoft's) not only with hobbyists, but in the enterprise as well.
VS.NET Needs a Novice Version
by Patrick Meader
Posted April 26, 2004
Once upon a time, Microsoft liked to boast that there were more lines of code written in Visual Basic than in Cobol. This boast highlighted both VB's versatility and its broad appeal. I haven't heard this boast recently from anyone at Microsoft. Microsoft is now more apt to cite studies and statistics that downplay classic VB's overall reach and use.
It's true that VB had its shortcomings. Longtime developers were always pushing at its edges for more performance and power, and there were issues with scaling up the applications you created with it. At the same time, VB gave you tremendous RAD capabilities, revolutionizing what you came to expect from your programming tools and IDEs. It doesn't matter how powerful your tool is if people don't want to use it. And developers, regardless of experience, wanted to use VB. Many of them still do, and that presents some challenges, both for Microsoft and for those who still use VB5 or VB6.
If it did nothing else, pre-.NET Visual Basic did one amazing thing: It made nonprogrammers productive with a programming tool. It made the person who understood the business rules of his or her department able to create apps of surprising power. VB.NET is powerful as programming languages go, but it has largely taken these novice and part-time developers out of the equation.
I think Microsoft is focused on enabling this person and making him or her productive in Visual Studio .NET. For example, Whidbey includes productivity boosters such as My.Classes and the snippet creator. But it remains the case that you're going to bump up against the framework sooner or later, and mastering even the minimum of what you need to know to take advantage of it effectively can be daunting even for experienced developers. Many experienced developers (including contributors to this magazine) tell us it took them six months to a year to feel comfortable with VS.NET and the framework in particular. Yes, they like it, but the learning curve cannot be taken lightly. Many novices and part-time programmers see this learning curve and run straight back to the arms of VB6. What does inheritance matter to you if all you want to do is create a simple, fast client/server app?
Visual Studio .NET is an impressive, powerful application. However, one of Microsoft's biggest issues with VS.NET has been getting existing classic VB developers and developers outside the Microsoft space to pick up and look at the tool. I think it could overcome this hurdle by offering a free or low-cost version of VS.NET targeted at novices and small-department employees. I'm not talking about the limited version that ships with some books, but a desktop equivalent to Matrix, which Microsoft has created for ASP.NET, and which has achieved some success in getting ASP.NET in front of future Web-oriented developers.
This novice version of VS.NET would give you the core VB.NET and C# language syntax and tool features; a stripped-down version of the IDE (IntelliSense is a must); and MSDE or a similar, lightweight database engine. It would also include many beginner-oriented samples. Free or cheap to download and use, this version would place limits on the scope of what you can create with it. The novice version would not include a conversion tool. Rather, it would assume that the user has no foundation in programming. Microsoft should promote this novice version heavily, with a dedicated Web site that includes unique content and sponsored contests to encourage people to do something cool with it. It would also be nice if Microsoft partnered with vendors in the community to create low-cost add-ins that support this version of the tool.
Eric Rudder, senior vice president of Server and Tools at Microsoft, told me in an interview last year that classic VB was in the enterprise long before many in the enterprise realized it was there. I'd add that it will be there for a long time after Microsoft officially stops supporting the tool. I think Microsoft could ensure the same for VS.NET, but it will have to do more to capture the mindshare of the sometime programmer. So far, Microsoft's approach to promoting VS.NET has been more top-down than bottom-up, targeting IT and CIOs more than the individual developer. A version of VS.NET targeted to novices specifically would enable Microsoft to target the enterprise from the top and the bottom, at both the IT and developer levels.
Do you think a novice-oriented version of VS.NET would be useful? Tell me at [email protected] or discuss this in the Talk to the Editors of Visual Studio Magazine forum.