What is the difference between VB 9, VBx and Silverlight? (Scott Wisniewski)
I recently received an email from a customer asking for clarification as to what the difference was between VB 9, VBx and Sliverlight. In particular, it seems as if we have been releasing so much information about cool new stuff that at least a few people have become confused, making them a bit nervous about the future of VB.
The customer had also expressed some concerns about upgrading from VS 2005 to Orcas (VS 2008), particularly because he was considering making an upgrade from VB 6 to VS 2005 and wanted to make sure he would be able to take advantage of Orcas when it was released.
I figured there may be other customers that have similar concerns, and so thought this would make a good blog post, particularly because it’s been a while since I’ve posted anything (J).
As a result I’ve included a few of the questions he asked (paraphrased) below, along with my answers.
I hope this helps.
What is the difference between VB 9 and VBx? Which one is the next version of Visual Studio?
Visual Basic 9 is the next version of Visual Basic. Visual Basic 10, or VBx as it’s sometimes called, is the version of Visual Basic that will follow VB 9. Currently VBx is in very early stages, and is a long way off from production. In fact, most of our development team is actively working on VB 9.
Why on earth would you start talking about VB 10 before you’ve even released VB 9? This is confusing.
The product cycle for VB 9 is starting to wind down. We recently released Beta 1 of Visual Studio Code Name “Orcas”, and are currently working on releasing Beta 2. As the product cycle starts to wind down, our language design team is starting to think about what the “next next” version of the product will look like. They do this mainly as a way to “keep the pipeline moving”. If they had to wait until VB 9 was 100% complete before they started thinking about VB 10, then there would end up being a significant delay from when we finished VB 9 until we could start working on VB 10. This is because designing a product, and coming up with a plan to develop it can be extremely time consuming. It requires us to come up with a design, create a schedule, make any necessary organizational changes, and ensure we have the right staffing levels, all before we start coding. By “overlapping” the early design work for VB 10 with the “end game” work for VB 9 we are able to better “bootstrap” the whole process, thus making the transition from one project to the next as smooth as possible.
As our design team comes up with designs they like to release information about them as early as possible. The earlier we can get information out to our customers, the earlier we can get feedback about the things we are doing. This helps us to build the products that actually meet our customers’ needs. One thing we’ve managed to learn over the years is that the best possible way we can learn what it is that our customers want is to engage with them early and often.
As a result, near the end of a product cycle we will release information about our plans for the version of the product to follow the one we are currently working on. This gives our customers the chance to comment on it and let us know what they think. We then take that feedback and use it to develop a more complete plan for what we want to do.
What is VB 10 going to be like? What is this Silverlight Thing I keep hearing about? Is Silverlight a replacement for Visual Studio?
Our plans for VBx and Silverlight are still very rough and are nowhere near complete. As our customers start to use VB 9 and provide us with feedback that data will drive exactly what we end up doing in VB 10. That being said, however, we do have some rough ideas of the things we would like to do.
Silverlight 1.1 is a new light weight version of the .NET Framework that will allow you to develop rich applications that run in a web browser using .NET languages. The basic idea is to allow you to replace client side java script with .NET enabled languages, allowing you to write both the client side and sever side portions of your web applications in the same language. It also allows you to use WPF (windows presentation foundation) and WCF (windows communication foundation) to create extremely rich and interactive web applications in a way that is much easier than what is possible using HTML, Ajax, Java Script, or Flash.
VB 10 is going to be the version of Visual Basic that will follow VB 9 (the “next next version”). It will include new features designed to make VB a really great language for developing SilverLight apps, as well as enhancements to many of the new feature we are delivering in VB 9, such as Linq. You should still be able to do all the things with VB 10 that you could do with both VB 9 and VB 8.
The migration from VB 6 to VS 2005 is non-trivial. If I upgrade to VS 2005 will I able to use VB 9 when it comes out, or will I have to scrap all my work? What about VB 10? Should I be worried about the future of VB?
The transition from VB 8.0 to VB 9.0 should be smooth and relatively painless. We have gone to great lengths to ensure this.
Our plan is to also make the migration from VB 9 to VB 10 equally painless.
Although the migration from VB 6 to VB.NET is a bit tough, we are actively working on making that easier as well. We have been releasing a “VB Interoperability Toolkit” that allows an application to be gradually migrated from VB 6 to VS 2005, rather than requiring the whole thing to be migrated at once.
You can get more information about it here:
As far as the future of VB, you should definitely not be worried.
Microsoft is committed to VB, and making it a great language for developing applications for our various platforms. The future of VB should be a bright one!