Microsoft officials at the VSLive conference in San Francisco last month elaborated on where the company is headed with its software development tools, noting the planned Orcas and Rosario releases of Visual Studio, due later this year and the year afterwards, respectively. Prashant Sridharan, Microsoft group product manager for Visual Studio, talks about Microsoft’s tool plans as well as issues such as the level of developer talent available.
This is the tenth anniversary of Visual Studio. You mentioned how it started out as kind of a hodgepodge of different products and how it’s evolved over the years. What do you think of how the platform has evolved over the past 10 years?
We’ve been able to deliver a very productive, very approachable framework for developers. With a combination of IntelliSense and the framework simplicity and elegance itself, developers can be immediately productive using the framework. And as we add new features and new functionality to the framework — things like Windows Presentation Foundation (WPF), Windows Communication Foundation (WCF), and so on — again, they fall into the same ethos of simplicity, approachability, elegance, and so on. Developers can take the skills they’ve learned and continue to grow those skills with the latest and greatest platforms.
What is the status of .Net 3.0, which features WPF, WCF and so on?
.Net Framework 3.0 is available now. Let’s just step back for a second. Visual Studio 2005 shipped with .Net Framework 2.0. We’ve shipped .Net Framework 3.0, which includes WPF, WCF, Windows Workflow Foundation and CardSpace. And then there are no tools for that, which is why we shipped a number of extensions, which are now available on msdn.microsoft.com/vstudio.
These are extensions to Visual Studio 2005 that enable you to target .Net Framework 3.0. .Net Framework 3.5 is the next version of the .Net Framework, and that will ship coincident with Visual Studio Orcas. And when we ship .Net Framework 3.5 and when we ship Visual Studio Orcas, a lot of those tools — like the designer surface for WPF, the designer surface for WCF and so on — all those features and all those tools will be built in Visual Studio Orcas.
What are some of the other new features in .Net Framework 3.5?
It’s the continuation of WPF, WCF, Windows Workflow and so on. [There are] continuing scalability [and] performance enhancements in the framework and the CLR (Common Language Runtime) itself, and I’m sure there are a number of other features as well. I think the biggest feature, the biggest new feature in .Net Framework 3.5 is LINQ, the Language Integrated Query, which provides much better programmatic access to databases and data sources.
Has Microsoft sold a million copies of Visual Studio 2005?
Over a million professional developers [are] using Visual Studio 2005 today, that’s from our internal tracking studies. It’s a pretty significant number, given where we are in the release of Visual Studio. I think it speaks not only to the solidity of Visual Studio itself, but it also speaks to the maturity of our industry.
In what way?
Developers are more amenable to taking on the latest and greatest technologies, more willing to trust Visual Studio as a tool that they can pick up very easily.
Is Microsoft planning anything that goes as far as open source? NetBeans and Eclipse are open source, you can go get them for nothing. How much is a copy of Visual Studio?
Well, so there’s a couple of things or misnomers there. I think if you look at tool features, Eclipse versus Visual Studio, I think you’ll find that [with] the programmer productivity tools there, Visual Studio may be better in some areas, Eclipse may be better in other areas. I think you can have a good, healthy comparison between the products.
I think the team-collaboration stuff is where we really differentiate ourselves. Team collaboration in Visual Studio is designed from the onset with integration in mind. We have some advantages where we started with a clean slate. We didn’t have legacy software to service, for example. But to that end, we were able to build integration as the primary feature, and that integration really does enable a greater ability to collaborate, communicate within software teams.
Do you have any take on IBM’s Jazz platform?
I don’t have any take just now.
Who do you consider Microsoft’s biggest rival for the hearts and minds of developers? Java? Scripting languages?
I think there are two levels to that question. The first level is, what’s the platform that people choose? I think there is a large segment of developers that cross multiple platforms. They do development in .Net some days, and they do development in Java some other days, [as well as] development on the web, dynamic languages like Groovy, and so on other days.
It’s based on the factors at hand: what am I trying to solve, who’s the customer or client I’m trying to satisfy. And so I think developers, first they choose the platform. What’s the best platform for this particular task?We happen to think that .Net’s a great platform for the vast majority of development tasks, but obviously developers are pretty discerning individuals, and they’re pretty smart, and they’re able to make that decision. So that’s the first and primary decision that developers make.
The second decision they make is then: what tools do I use? Obviously if you choose .Net, the best tool for you to choose is Visual Studio. If you choose a Java platform there are several tools to choose from, Eclipse and so on. If you choose one of the dynamic languages or web platforms there are several tools to choose from in that area as well. There’s a really good level of competition, both on the platform front as well as on the tools front.
We happen to believe strongly in .Net. If you look at all the surveys and research that’s been done .Net is far and away the most popular platform that developers choose today... Developers choose .Net Framework for mission-critical applications more than they choose Java. The research is the research. We’re not commissioning and our internal research proves the same thing, but the research is the research.
What about the retirement of the Visual J# language?
Less than 2% of our customer-base was using J#. [We were] spending resources on something where the customer base is that small. Those resources could be better spent on something that 100% of developers need, like quality tools or testing tools.
Does that mean there’s not a big call for people to move Java applications over to .Net?
I would disagree with that. I don’t think people, or developers, necessarily move applications or port applications. I think developers choose a platform and begin developing on that platform. And I think with web services and some of the standards-based interoperability that all of the development platform vendors have chosen around SOA and SOAP and so on, interoperability is there at the protocol level. Developers evaluate all those platforms, [and] they choose the best platform for the task at hand. They’re again choosing .Net over Java. There are also shops that are building Java applications. They need to interoperate.
Why do you think they’re choosing .Net over Java?
I think it gets back to the inherent productivity of the framework, the great set of tools that we have, [and] the incredible ecosystem that we have. Not just our partners, but also our consultants, system integrators and so on... I’ve got best friends who run consulting companies, and their .Net practices are doing extraordinarily well.
It’s very easy to on-ramp developers into .Net, it’s very easy to get them familiar with the tool, the tool is very high quality, the tool is very approachable, very usable, very easy to install. So there’s a low barrier to entry, and developers can be very successful very quickly with the product.
What about the Rosario and Orcas releases of Visual Studio? You mentioned refactoring and LINQ.
That’s [in] Orcas, what you just mentioned is all Orcas. Rosario is different. So what’s in Rosario? Rosario focuses on three primary areas. [The] first area is around organisation, collaboration. And so what I mean by that is with Team System we helped your teams collaborate more effectively. And in most organisations you have many software projects and, therefore, many software teams working on those projects. And so the tools that we want to build will help you aggregate the data and the intelligence you’re gathering across all those different teams, and then bubble that up to see how well your organisation is performing.
Now those software teams often have people that overlap multiple projects and they also have people who aren’t technical. They might have business analysts, they might have designers, [and] graphic designers. They might have documentation writers and on and on and on.
There are multiple disciplines associated with the software project. And so our goal is to help bubble up the data around all of that team and all those various teams and how they interoperate, [and] how they interact, what’s your resource allocation, how well are you performing, how effective are they.
Rosario’s already focused on ALM (Application Lifestyle Management). Is there any developer productivity enhancement planned for Rosario?
Rosario is focused only on Team System. Rosario is a Team System release — a major release of Team System. And it’s based on Orcas, and it’s a release of Team System. Organisation collaboration is one element of it. Another element of it is testing. So again, [we are] doing for testers what we’ve done for developers over the last 20 years — not just the product, but also the ecosystems, the user groups, the resources [and] the websites.
What are you going to be doing for testers?
It’s not only [about] building tools, great functional UI testing tools, test case management, lab management, things like that, but also building out a healthy community, user groups, events, conferences, as well as magazines, content, online. Everything you see today around developers.
And this is all part of Rosario?
And that’s all part of the Rosario mission, the Rosario vision. And then lastly, getting back to our roots as well, which is building really advanced tools for developers. Not forgetting that the developers are bread and butter. Developers are our home base.
What new developer tools are featured in Rosario?
Advanced analysis tools. We can do things like McCabe analysis which can show you the cyclomatic complexity. We can analyse where the performance bottlenecks are, where your code keeps calling itself, for example, to show you how efficient your code is.
You mentioned a shortage of IT talent. This is a very sensitive subject. What’s going on? Is there a shortage of developers?
I don’t think there’s a shortage of developers. I think there are a lot of developers. I think there’s a shortage of qualified developers on the latest and greatest platforms, on the latest and greatest tools, [and] taking advantage of the latest advances in terms of the web and the operating systems.
Our mission is: if you’re a developer and if you’re a development organisation, we’re going to give you great tools to be as successful as you possibly can. We’re going to give you great resources, we’re going to give you great everything in terms of events, user groups, content, samples, white papers, the list goes on and on.
Our mission is to make every developer successful on the Microsoft platform.
What about Microsoft efforts to attract new developers?
There are lots of non-professional programmers in the world, and these people are not competing [for] software development jobs for Java developers and C# developers, not by any stretch of the imagination. But they demand a level of customisation [and] a level of personalisation out of their operating system and their applications.
You see that today with kids growing up — and the kids were born on the web — who customise their MySpace, customise their IM and on and on and on. You see that every day.
Those kids, when they graduate, they may not be computer scientists, but they will be very computer-savvy and very technology-savvy.
They will demand a level of customisation out of their applications and their operating system.
Our goal is to make sure we provide the tools to help make them successful.