Q&A

Leading Light: S. "Soma" Somasegar

An interview with the head of Microsoft's Developer Division -- S. “Soma” Somasegar.

When S. “Soma” Somasegar joined Microsoft in 1989, he worked as a systems-level programmer in the operating systems group of what was then primarily a “desktop” company. Today he heads the Developer Division during what promises to be one of the most ambitious release schedules in Microsoft's history. “When you think about platforms, the people that are the most important to you are the developer audience,” says the corporate vice president. With Windows Vista, the .NET Framework 3.0, Visual Studio (code-named “Orcas”), VS tool sets, 2007 Office System and ASP.NET 2.0 AJAX on the launch pad, we asked Soma what enterprise development managers can expect from these technologies and his take on the industry trends driving future releases.

You've been at Microsoft a long time.
What attracted you to software development early on?

When I was in school, I was always fascinated by systems-level programming and I got this opportunity to join Microsoft and to work in an operating systems group. For the next 14 years, I stayed in the Windows organization working as part of the development group.

If you look at Microsoft today, we do have a fair number of technologies, products and businesses, but fundamentally in our hearts we are still very much a platform company. When you think about platforms, the people that are the most important to you are the developer audience -- it's all about making developers successful on our platform. So having a chance to come and run a division that builds products and platform technologies is a great mission to be a part of.

In your blog you note that developers are asking you how
they can take advantage of the new features in Vista.
What are key issues they should consider?
I think there are a couple different dimensions. One is developers are divided into three different buckets. There are people who have an application that's running today on either XP or Windows Server or older versions of Windows who want that application to continue running on the Windows desktop. And we have done a lot of work to ensure applications compatibility. We have been telling developers, "Hey, now's the time to test. Let us know if there's anything that we can do." Now's the time to make sure that your application continues to run well on Vista.

The secondary category is, "Hey, I have an application that"s already running on an older version [of Windows] but I really want to make it light up on Vista. I don't want to remake my application but I want to make a tweak here or there that takes advantage of the new features. How do I do that?"

And the third bucket is, "Hey I'm going to write an application from the start, what are the new features that are available in Vista for me?" If you look at it from a developer perspective, there really are a ton of new, exciting features in Vista. For example, the .NET Framework 3.0 connectors, which include Windows Presentation Foundation, Windows Workflow, Windows Communication Foundation and the CardSpace stack. That's all new functionality targeted at developers building modern connective applications. If you want to continue writing in a native application, native code, we have about 7,000 new APIs that we've added in Windows Vista.

You're starting to release some of the tools that
support .NET 3.0 application development, including
the Visual Studio (VS) Orcas September CTP;
can they also be used in VS 2005?

The goal of releasing Visual Studio Orcas is really to enable customers to build applications that are targeted at Windows Vista, at the Office 2007 system and at Web developers. So if you want to use Office as a development platform or you want to write a Web app or you want to write a rich client app that runs on top of Windows Vista, Orcas is going to be the best tool set to deliver that application in a highly productive way. Along the road to Orcas, we're going to make some technologies available.

S. Soma Somasegar
"... most important to you are the developer audience -- it’s all about making developers successful on our platform."
S. “Soma” Somasegar, Corporate Vice President, Developer Division, Microsoft Corp.
We have a technology code-named “Cypress” that we're going to make available by the end of the calendar year or early next year called Visual Studio 2005 Tools for Office 2007 Microsoft System, second edition. Think about it as, hey, Visual Studio Tools for Office lets developers target Office 2007. That's the technology that's going to make it easier for developers to do that and we're going to make that available integrated into Orcas, for example.

We've been doing some work on Atlas -- ASP.NET AJAX. If you want to develop a Web application using the AJAX collection of technologies, we now have a framework and a set of tools that make it easy for you to do that. We've been doing CTPs of that; it's going to be a part of Orcas.

We've been doing some work on designers for “Avalon,” or Foundation. The continuum exists all the way from HTML on one end of the spectrum to Windows Presentation Foundation on the other end of the spectrum. I can use HTML to display my UI. I can use AJAX technologies, or if I want a really, really rich UI that supports running on the fly then I can use [Avalon].

What's your perspective on key trends you see going on
in development, and how Microsoft is evolving its
platforms and tools to accommodate them?

The trends that I see happening are the following: The performance and benefits that you can get out of a single processor, or a single threaded application, I think we're coming to the end of that era. If you talk to the hardware companies -- Intel, AMD and the like -- they will tell you that the future in processing is multi-core and mini-core. But from a software perspective we have a ton of work to do to enable people to write truly parallel programs easily. Parallel programming has always been a hard problem to crack and we've made some progress over the years, but we really haven't hit a breakthrough there. That's a trend that I see in the next three to five years.

Another trend that I see is that there's a class of applications where people really care about the reach. So we need to trade off a little bit of functionality for the developer. People like the friction-free deployment of Web-based applications, so the more we can make it easy for people to have a set of frameworks and tools to enable them to build those types of applications and knowing that if they want to, to make the jump from being a Web-based application to taking advantage of some of the richness of the client, [we can] make it easy for them to provide the mobilization back and forth [that] I think is going to be critical.

Another is Web services -- you can call it Web services, you can call it Service-Oriented Architecture [SOA], whatever it is -- the notion that an application is going to be a set of composable elements that will be running on multiple systems that need to work together in a connected systems world, in a secure, reliable fashion; I think you're going to see more and more of this happening. And so having a platform and set of tools that enables you to do this, that's another one of the trends I see.

What about open source development?
I think we've learned a number of great things; knowing how important the developer community is, this is a lesson for me personally that I got from the open source phenomena. More recently, we've talked about CodePlex from Microsoft. You can call it a shared source or open source site. Basically, it is a site where you as a developer can put your product in, you can open up your source code and you can invite members of the community to participate or contribute and get more control of how you want to run your project, and we've seen some good success with that.

We still need, I think, a boundary between things [where] we want to own the IP and things we want to enable the community to be a part of and have the community provide some of the IP, so to speak, and really benefit the broad community base. We're learning as we go along here, but I think that is one that we can tweak and figure out what works well and what doesn't work.

About the Author

Kathleen Richards is the editor of RedDevNews.com and executive editor of Visual Studio Magazine.

comments powered by Disqus

Featured

  • Compare New GitHub Copilot Free Plan for Visual Studio/VS Code to Paid Plans

    The free plan restricts the number of completions, chat requests and access to AI models, being suitable for occasional users and small projects.

  • Diving Deep into .NET MAUI

    Ever since someone figured out that fiddling bits results in source code, developers have sought one codebase for all types of apps on all platforms, with Microsoft's latest attempt to further that effort being .NET MAUI.

  • Copilot AI Boosts Abound in New VS Code v1.96

    Microsoft improved on its new "Copilot Edit" functionality in the latest release of Visual Studio Code, v1.96, its open-source based code editor that has become the most popular in the world according to many surveys.

  • AdaBoost Regression Using C#

    Dr. James McCaffrey from Microsoft Research presents a complete end-to-end demonstration of the AdaBoost.R2 algorithm for regression problems (where the goal is to predict a single numeric value). The implementation follows the original source research paper closely, so you can use it as a guide for customization for specific scenarios.

  • Versioning and Documenting ASP.NET Core Services

    Building an API with ASP.NET Core is only half the job. If your API is going to live more than one release cycle, you're going to need to version it. If you have other people building clients for it, you're going to need to document it.

Subscribe on YouTube