Jim Allchin, group vice president of platforms at Microsoft, discussed his vision for RSS, workflow and other new technologies at Microsoft's recent Professional Developers Conference. Allchin also said that Windows Vista's appeal to IT professionals will rest largely in Microsoft's "improvements of the basics," which will ultimately help them save money.
Q: At the recent conference, Microsoft showed lots of new tools for building consumer-focused applications. In what ways will you be helping corporate developers build better enterprise applications?
A: First, Windows Vista alone with today's current apps will be a system that I think corporations will see great value in. And it's up [to] us to prove that, and we really haven't gone to try to show that yet. But we've invested so much in improvements in the basics, whether it be in the resilience, in the reliability or in the security work that we've done, deployment, servicing, I think all of those improvements alone will offer great value to reduce costs for the IT professional with today's apps.
Then if you have a new app, you can do all sorts of cool visualisations that I think will be very appealing to the knowledge workers. There's a saving cost in making it simple for the IT professional, making it more secure, making it faster and then adding new applications for new, richer visualisations, or making things like ad hoc meetings more productive. Those sorts of things will get excitement from the knowledge workers. So most of the work that is going to be applicable to the IT professional community will be in terms of our improvements of the basics -- just engineering excellence and attempting to save money for them.
Q: But will Windows Vista represent a giant leap in the enterprise space, comparable to what you're talking about for the consumer space?
A: I don't remember a release in the last 10 years other than Windows 95 that had something for all the audiences in it. Each of 'em had specific advantages. This one is sort of across the board. When you talk about enterprises, I view enterprises in terms of two buckets. One is helping the IT professional, making their jobs easier and saving money, preventing them from having to worry about more patches and making the performance of what they already have better, reducing the complexity of the images that they're managing and on and on.
The flip side of that is for the knowledge worker and thinking about where there's a basic set of capabilities we're going to put in the system that might help them, some simple experiences like Windows collaboration. But more importantly, do we have the right platform for things like Office to add new productivity that they're interested in and to make sure that the two together shine? If you have a corporation [that's] thinking about a redeployment and sees great value in things like Office, we think the combination of Office and Vista together for a deployment might make great sense for a knowledge worker. Both are independent, but in terms of an actual deployment, it might be simpler to roll it together in terms of the deployment.
Q: You referred to RSS for use beyond the browser. Can you provide more details about your vision for RSS as it relates to corporate IT and the enterprise?
A: RSS has a whole set of advantages in terms of being able to subscribe to information that can flow in. And we have some demonstrations that are quite powerful in terms of being able to gather feeds from the line-of-business environment and being able to drive those into, say, the sidebar or your own applications so you can monitor what's happening.
The thing that we've done is take RSS beyond the simple aggregators and feed-demon-type systems to where it's an actual platform. So you can select the feeds that you want, regardless of whether they're from the Internet or intranet, and unify the different, disparate feeds into a standardised XML definition, index all of that and then pop those up for APIs so that the developers can take advantage of it. It's up to the invention of a line of business or something like Office or others to take advantage of those APIs. I think that that will happen. We'll foster an incredible amount of innovation now that we're putting this platform in place.
Q: How is this different than push technology?
A: This is a little bit different than push. It's more a pull-type environment. But conceptually, the idea of a standardised set of items that you can then manipulate that's coming from lots of different sources, that's a powerful idea if you don't think about it as, "Oh, this is a news feed," if you really think: "This is an information feed that I can program to." If you remember back to the PDC of 2000, we talked about making the Internet programmable. And this is just another piece of it. Obviously, we didn't invent RSS. We're just trying to make it available in terms for a platform.
Q: Can you provide some examples of how the Windows Workflow Foundation will work?
A: We had BizTalk, which was a product that did orchestration between line-of-business apps, as sort of a holistic product. What we did was step back and say, "How can we take that technology and make it available to a wider variety of applications who want to do sequencing of operations and how could we help applications that want to do that?" We created a set of DLLs [Dynamic Link Libraries] that an application can link to that will help the application set up the events and the flows and the tasks so that the application doesn't have to. The beauty of this is that it's simple. It's sort of like RSS. It's simple, but I think it's really going to help.
So you'll find SharePoint just takes advantage of those DLLs. And Office, for example, can do things like routing documents and appropriate authorisations by using the Windows workflow framework that's available in the SharePoint system. But it doesn't have to come from Microsoft. The point is that those APIs are available to anybody who wants to do this within their app.
For a composite application, tying together pieces of various business applications, would the Workflow Foundation automatically generate the orchestration? If you have a set of events and tasks and you want to sequence them, the thing that's unique about what we've done is we haven't mandated a particular visualisation of it [or] created a firm set of anything. It's a programming environment that you can create your own events and your own flows in, and we just manage it beneath the covers.
If you're doing line-of-business orchestration, we have a product that can do that. If instead you're trying to build an application that's going to do some sort of sequencing over a long period of time, where you might need to write a compensating transaction if it's long running -- maybe weeks or months in terms of an order -- you can do that in the programming environment that we're creating.
I think the simplest way to think about it is BizTalk is for orchestration between systems and the Windows Workflow is for orchestration if you want to build your own orchestration system within your app.
So the tools and the lack of a runtime to really help you do that has been the limiting factor there. Atlas is this runtime that we think will help people be able to get this sort of next step in terms of richer-reach app, or smarter-with-reach app created.
Q: Is Atlas a reaction to the popularity of technology from companies such as Macromedia?
A: We, as the rest of the industry, are sort of stumbling on how we can take advantage of this. ... It's a step forward. And we think it's compelling. And there are things we can do on it that we didn't demonstrate today but we think we'll be able to do. We've got some other innovations coming for the future.
Q: Are you devoting the same percentage of development resources to security that you have been during the past few years?
A: In terms of the number of people, it's still a very, very large focus. I have a very large security organisation that focuses just on security, but it's also in other areas.
To make user account protection come to pass, it takes user-interface work. It takes work in the operating system itself.
I'll put improvements in quality [as] top of mind for me in Windows Vista -- absolutely top of mind. We're going to have so much capability in the system. But we must have a dramatic improvement in terms of all the isolation technology that we can provide to corporations. We want people to feel safer.
Q: The development process for the new version of SQL Server turned out to take a lot longer than anybody expected. What lessons did you learn from that experience?
A: Good software takes time. It's a humbling lesson. We learned that the deep integration of the runtime itself within the process of SQL, that was hard. That was really hard.
Q: How are you applying those lessons to future development, with what you're doing now?
A: We've got so many developers, so much code and so many audiences that we're trying to handle, so many different variations in terms of hardware and versions on so many different platforms, etc. So a few years ago, I asked a set of people who were from the research team to come and join the Windows organization. We started to re-engineer the way we're building the product, and we did. So much has changed in the way we're building Windows today that it's night and day to go back a few years.
We're using computers to help us build the software much more than we did before. That sounds easy to say. But when we sit down and do a code review, we have a computer doing some analysis at the same time the architect is looking at the code. We're trying to do it right the first time, in the sense that we're trying to keep the problems as close to the developer as possible.