Visual Studio Shell (not Visual Studio's hell)

Pop along to Sourceforge and you’ll find many different programmers’ editors, many of which have been abandoned long before they’re ready for use. There’s not really any point developing an editor, when toolkits like Scite exist. The same is true of IDEs, when there’s the extensible Eclipse IDE to use. As a result it’s been gaining more and more market- and mindshare with development tools vendors around the world.

Despite its many excellent features, Microsoft’s Visual Studio was starting to look a little left behind. The Visual Studio Integration Programme (VSIP) let developer tool vendors add features and functions to Visual Studio, but it wasn’t open to the whole community and included royalty payments to Microsoft.

Redmond is aiming to change the game with the upcoming release of Visual Studio 2008, and the introduction of a new programme – the Visual Studio Shell – announced at Microsoft’s TechEd 2007 event in Orlando. This will make the key editing and design tools available to anyone who wants to use them, opening up the old Premier Partner Edition to the whole world. With over 8 million Visual Studio developers, that’s a hefty market of coders who will already be well along the learning curve before they even start to use your tools.

Developers will be able to choose two different ways of working with Visual Studio Shell: integrated and a new isolated mode. The combination of integrated and isolated modes will be familiar to anyone working with the Eclipse IDE, where Adobe provides Flex tooling as either a standalone Eclipse-based Flex Builder or a set of components that can be added to an existing Flex installation.

The integrated approach is intended for language vendors (and will work very well for dynamic languages targeting Microsoft’s DLR). If Visual Studio isn’t present on a target system, the Visual Studio Shell will install as Visual Studio with your language features ready to run. If Visual Studio is already present, your languages and tools will become additional projects alongside Microsoft’s own languages. You’ll get the same effect when installing Visual Studio on a machine that’s already running a Visual Studio Shell application. Integrated applications won’t be able to brand the shell, and it will retain its Visual Studio identity. Developers will be able to integrate their own compilers and their own debugging tools.

There are also no restrictions on whether vendors can charge for Visual Studio Shell-based products. As Microsoft’s Group Product Manager for VSIP Developer Marketing, C. Joe Marini, said, “there’s no charge, no royalty fee, no licence fee – but if they choose, yes, they can charge their own customers. We have existing partners who will charge for what they build with Visual Shell.”

Isolated mode is for applications that don’t need to be part of Visual Studio, but do want to take advantage of the Shell’s tooling. Visual Studio Shell will offer all the features of Visual Studio Standard edition, so developers will be able to take advantage of its text editor, the multi-pane explorer and inspector development environment, its graphical design surface and its source code management tool integration. Microsoft expects that this approach will be used to ease the development of tools that target more than just traditional developers – especially tools that use visually-based declarative programming techniques.

Visual Studio Shell will have a simple license with few restrictions, and Microsoft is currently intending to be a click-through before development code can be downloaded from the MSDN web site. The Visual Studio Shell programme will be royalty free, so hobbyist developers will have access to the same tools and technologies as larger tools vendors. The license terms are still to be fully determined, but it’s likely that Visual Studio Shell developers won’t be able to use the compilers and tools that come with the .NET framework – so you won’t be able to use Visual Studio Shell to develop your own C# development platform.

There won’t be any restrictions on the platforms you can target with Visual Studio Shell, so there’s the possibility that we’ll see it used to target mini and mainframe applications as well as desktop and mobile devices.

The download will come with an SDK. To help you get started the SDK will contain an example of an integrated solution based around Microsoft’s IronPython. Sample code for the isolated mode hasn’t been chosen yet, but it will have a similar example, showing how to take advantage of the features, including working with graphical design templates and domain specific languages.

As business analysts and designers gain more development responsibilities, this will become an increasingly important piece of the Visual Studio Shell market, and one where we should see it becoming more and more popular. Marini is optimistic about the applications it will allow developers to build, “I’m absolutely sure someone will use it to do something I have never heard of or thought of...”

Microsoft has made a smart move with the announcement of the Visual Studio Shell. It’s also the only move they could have made at this point. It may not be too late for the Visual Studio Shell to become a player in the Windows development market place.

Certainly Microsoft is lining up an impressive array of partner companies that have said they will be using Visual Studio Shell when it’s made available for existing VSIP partners with beta 2 of Visual Studio 2008 - with language vendors being joined by home automation platforms. It’ll be interesting to see just how many independent and small developer tool vendors pick up on it when the release of Visual Studio 2008 makes the Visual Studio Shell generally available. ®