VB.NET for Whidbey Aims to Wow
Chris Dias, group program manager for Visual Basic .NET at Microsoft, talks about the present and future of the language, including the target audience of this tool.
PM: The VB development team serves a lot of masters. Can you describe, in a nutshell, whom this tool is for?
CD: We have a wide audience that we need to provide services for, but these users do have one important characteristic in common. They are looking for the best combination of productivity and power.
We spend a lot of time reviewing how VB developers work, and we try to provide tools that suit how different types of VB developers use their tools. It's critical that we make things easier for developers, but it's just as critical that we provide the features and capabilities for high-end VB developers.
PM: What is there about Whidbey that will compel VB6 developers to move to this version of VB.NET?
CD: What we want to nail in Whidbey is the wow factor that was present in VB1. There are a lot of reasons people haven't moved to VB.NET from VB5/6. Part of it was a messaging problem. For example, there are some people who've looked at VB.NET and see it as this tool for creating Internet applications. But some developers aren't doing Internet applications, so they think VB.NET has nothing in it for them.
But the fact is, VB.NET has some great rich-client features. We're working on making sure that message comes through loud and clear. The Windows Forms team is doing some great stuff; repositioning windows is incredibly intuitive in Whidbey. Plus, there are highly cool new features such as My.Classes and a code snippet manager, not to mention the reinstatement of edit-and-continue.
PM: Part of the promise of VB.NET was to make Web services simple: point and click and build. But Indigo appears to make them complex again. Is this driven by criticisms that Web services are lacking in security, transaction processing, and reliability?
CD: The Indigo team is building the right Web services infrastructure for the platform. It is powerful and flexible as it should be, and at the same time, those guys are thinking hard about making it easy to use. From the VB team's perspective, we're going to look at what Indigo provides and build an incredibly easy experience on top of what they deliver. The specifics of this are not worked out yet. The team is heads down on Whidbey and will in the near future be looking at Indigo and Longhorn.
Again, we're pushing our teams to do the right thing, which is to build a platform with the requisite robustness and security. From there, we can add the necessary interfaces and hooks to make the tools easier or more productive to use directly from VB.
PM: Please sum up what My.Classes are.
CD: My.Classes are essentially another namespace inside VB.NET. The primary goal with these classes is to provide a quick and easy way to find common functionality in the Framework through IntelliSense. IntelliSense is a great tool for people to navigate and learn how things work. People often start at the top of a list of IntelliSense commands and try each one of them. But the current breadth of the Framework makes it difficult for people to find things. It's not that it's hard, but it's big. So what we're trying to do with these classes is provide people a simple way to find the common functionality they need.
PM: I don't have the cite handy, but I believe Gartner projected recently that C# developers would equal or surpass VB.NET developers as soon as 2007 or so. If that came to pass, would that mean that VB had failed in its goal of being a broad-based tool for developers of all skill levels?
CD: I don't think it would be significant at all. What we're trying to do is provide a language and a tool that appeal to a set of developers. If it turns out that C# appeals to a larger number of developers than VB.NET does, but that we appeal to VB developers in the right way, then that's fine. If VB.NET users love the tool and are productive with it and create a lot of terrific applications with it, that's great.