The "Ecosystem"

The "Ecosystem"

In the emails and comments, there are many topics that are raised and more often than not we see the several facets or positions of the issue. One theme that comes through is a desire expressed by folks to choose what is best for them. I wanted to pick up on the theme of choice since that is such an incredibly important part of how we approach building Windows—choice in all of its forms. This choice is really because Windows is part of an ecosystem, where many people are involved in making many choices about what types of computers, configuration of operating system, and applications/services they create, offer, or use. Windows is about being a great component of the ecosystem and what we are endeavoring to do with Windows 7 is to make sure we do a great job on the ecosystem aspects of building Windows 7.

Ecosystem and choice go hand in hand. When we build Windows we think of a number of key representatives within the ecosystem beyond Windows:

PC makers

Hardware components

Developers

Enthusiasts

Each of these parties has a key role to play in delivering on the PC experience and also in providing an environment where many people can take a PC and provide a tailored and differentiated experience, and where companies can profit by providing unique and differentiated products and services (and choice to consumers). For Windows 7 our goals have been to be clearer in our plans and stronger in our execution such that each can make the most of these opportunities building on Windows.

PC Makers (OEMs) are a key integration point for many aspects of the ecosystem. They buy and integrate hardware components and pre-install software applications. They work with retailers on delivering PCs and so on. The choices they provide in form factors for PCs and industrial design are something we all value tremendously as individuals. We have recently seen an explosion in the arrival of lower cost laptops and laptops that are ultra thin. Each has unique combinations of features and benefits. The choice to consumers, while sometimes almost overwhelming, allows for an unrivaled richness. For Windows 7 we have been working with OEMs very closely since the earliest days of the project to develop a much more shared view of how to deliver a great experience to customers. Together we have been sharing views on ways to provide differentiated PC experiences, customer feedback on pre-loaded software, and partnering on the end-to-end measurement of the performance of new PCs on key metrics such as boot and shutdown.

Hardware components include everything from the CPU through the “core” peripherals of i/o to add-on components. The array of hardware devices supported by Windows through the great work of independent hardware vendors (IHVs) is unmatched. Since Windows 95 and the introduction of plug-and-play we have continued to work to improve the experience of obtaining a new device and having it work by just plugging it in—something that also makes it possible to experience OS enhancements independent of releases of Windows. This is an area where some express that we should just support fewer devices that are guaranteed to work. Yet the very presence of choice and ever-improving hardware depends on the ability of IHVs to provide what they consider differentiated experiences on Windows, often independent of a specific release of Windows. The device driver model is the core technology that Microsoft delivers in Windows to enable this work. For Windows 7 we have committed to further stabilization of the driver model and to pull forward the work done for Windows Vista so it seamlessly applies to Windows 7. Drivers are a place where IHVs express their differentiated experience so the breadth of choice and opportunity is super important. I think it is fair to say that most of us desire the experience where a “clean install” of Windows 7 will “just work” and seamlessly obtain drivers from Windows Update when needed. Today with most modern PCs this is something that does “just work” and it is a far cry from even a few years ago. As with OEMs we have also been working with our IHV partners for quite some time. At WinHEC we have a chance to show the advances in Windows 7 around devices and the hardware ecosystem.

Developers write the software for Windows. Just as with the hardware ecosystem, the software ecosystem supports a vast array of folks building for the Windows platform. Developers have always occupied a special place in the collective heart of Microsoft given our company roots in providing programming languages. Each release of Windows offers new APIs and system services for developers to use to build the software they want to build. There are two key challenges we face in building Windows 7. First, we want to make sure that programs that run on Windows Vista continue to run on Windows 7. That’s a commitment we have made from the start of the project. As we all know this is perhaps the most critical aspect of delivering a new operating system in terms of compatibility. Sometimes we don’t do everything we can do and each release we look at how we can test and verify a broader set of software before we release. Beta tests help for sure but lack the systematic rigor we require. The telemetry we have improved in each release of Windows is a key aspect. But sometimes we aren’t compatible and then this telemetry allows us to diagnose and address post-release the issue. If you’ve seen an application failure and were connected to the internet there’s a good chance you got a message suggesting that an update is available. We know we need to close the loop more here. We also have to get better at the tools and practices Windows developers have available to them to avoid getting into these situations—at the other end of all this is one customer and bouncing between the ISV and Microsoft is not the best solution.

Our second challenge is in providing new APIs for developers that help them to deliver new functionality for their applications while at the same time provide enough value that there is a desire to spend schedule time using these APIs. Internally we often talk about “big” advances in the GUI overall (such as the clipboard or ability to easily print without developing an application specific driver model). Today functionality such as networking and graphics play vital roles in application development. We’ve talked about a new capability which is the delivery of touch capabilities in Windows 7. We’ve been very clear about our view that 64-bit is a place for developers to spend their energy as that is a transition well underway and a place where we are clearly focused.

Enthusiasts represent a key enabler of the ecosystem, and almost always the one that works for the joy of contributing. As a reader of this blog there’s a good chance you represent this part of the ecosystem—even if we work in the industry we also are “fans” of the industry. There are many aspects to a Windows release that need to appeal the enthusiasts. For example, many of us are the first line of configuration and integration for our family, friends, and neighbors. I know I spent part of Saturday setting up a new wireless network for a school teacher/friend of mine and I’m sure many of you do the same. Enthusiasts are also the most hardcore about wanting choice and control of their PCs. It is enthusiasts sites/magazines that have started to review new PCs based on the pre-installed software load and how “clean” that load is. It is enthusiasts that push the limits on new hardware such as gaming graphics. It is enthusiasts who are embracing 64-bit Windows and pushing Microsoft to make sure the ecosystem is 64-bit ready for Windows 7 (we’re pushing of course). I think of enthusiasts as the common thread running through the entire ecosystem, participating at each phase and with each segment. This blog is a chance to share with enthusiasts the ins and outs of all the choices we have to make to build Windows 7.

There are several other participants in the ecosystem that are equally important as integration points. The system builders and VARs provide PCs, software, and service for small and medium businesses around the world. Many of the readers of this blog, based on the email I have received, represent this part of the ecosystem. In many countries the retailers serve as this integration point for the individual consumer. For large enterprise customers the IT professionals require the most customization and management of a large number of PCs. Their needs are very demanding and unique across organizations.

Some have said that the an ecosystem is not the best approach that we could do a much better job for customers if we reduce the “surface area” of Windows and support fewer devices, fewer PCs, fewer applications, and less of Windows’ past or legacy. Judging by the variety of views we've seen I think folks desire a lot of choice (just in terms of DPI and monitor size). Some might say that from an engineering view less surface area is an easier engineering problem (it is by definition), but in reality such a view would result in a radical and ever-shrinking reduction in the choices available for consumers. The reality is engineering is about putting constraints in place and those constraints can also be viewed as assets, which is how we view the breadth of devices, applications, and “history” of Windows. The ecosystem for PCs depends on opportunities for many people to try out many ideas and to explore ideas that might seem a bit crazy early on and then become mainstream down the road. With Windows 7 we are renewing our efforts at readying the ecosystem while also building upon the work done by everyone for Windows Vista.

The ecosystem is a pretty significant in both the depth and breadth of the parties involved. I thought for the purposes of our dialog on this blog it is worth highlighting this up front. There are always engineering impacts to balancing the needs each of the aspects of the ecosystem. Optimizing entirely along one dimension sometimes seems right in the short term, but over any period of time is a risky practice as the benefits of a stable platform that allows for differentiation is something that seems to benefit many.

With Windows 7 we committed up front to doing a better job as part of the PC ecosystem.

Does this post reflect your view of the ecosystem? How could we better describe all those involved in helping to make the PC experience amazing for everyone?

People at desks all over the world who have no choice in what they use day to day, but represent the bedrock of experience of your products.

Nor do you include their representatives to you: the IT support professionals.

I think if you concentrated more on the experience of those shackled to your particular design of rowing bench you would have a better product and some of the more hysterical observations of the people you have named would never have happened.

I estimate that the groups you have identified represent a small percentage of those who live in your ecosystem day in day out. They are the predators and the scavangers. Do you design a meadow for the sheep or for the wolf? The henhouse for the chickens or the fox?

You talk about developers, but MS seems to favor VBScript and C# -languages it created. Let's face it, *every* developer writes Javascriptm, so why not broaden the devleoper ecosystem by making this language a first class language for Windows 7 and other Microsoft products.

To be a first class language, you need to provide documentation and examples of use of all the major subsystems in the language. I mention Javascript, but other scripting languages should be considered, even if Microsoft doesn't provide the interpreter.

Windows 7 beta 1 is rumored to be released in December, currently in USA we have a little financial crisis (and people think more about "normal" things and don't work so good in such atmosphere), we don't see any excellent posts on this forum (like - yes, we will make such and such architecture changes), only "I'm a PC" campaign...

Does Microsoft have enough power for making system with new kernel and architecture ? I have bigger and bigger doubts. It looks more and more, that Windows 7 can be Vista SP2 - no separating apps from each other, no known Windows XP interface, no Windows XP performance...

And I don't want to write FUDs here.

Market is changing - EA has notified, that DRM is wrong (see Spure game issue), more companies are joining it, DirectX 10 is not so popular (we have consoles from various manufacturers), etc. etc.

Microsoft must notify it. If not, PC will be less and less used. Maybe it will be better for end users, maybe not. We will see...

@marcinw, you hit the point - I totally agree with you. When I read this post about ecosystem, I felt the same way as I felt when I saw the first episode of Microsofts campaign with Bill Gates and Seinfeld.

i think there will be no big changes and it is already too late to discuss anything if Windows 7 beta will already appear in december this year.

This was a great read, but hope the comittment is there at the RTM for Windows 7. Personally, I hope this release of Windows gives the user more control in certain aspects, for instance:

a reset Windows 7 to its default settings settings. Meaning, when I buy an OEM branded computer, I can remove all the third party programs that OEM’s often include without having to reinstall the OS from scratch, this should not affect device drivers. But even virus protection software must be removed in the reset process. Let me the user; decide what I want to put on my computer. IE 7 has a similar setting.

I know that 64-bit is the future, it offers a user more access to memory and opens up new possibilities for applications. But of course, there are trade offs in the fact that 64 bit applications need to be there and at the same time, 64 bit applications use more memory. Which means, if I buy a Tablet PC in 2010 with Windows 7, I should have a respectable 64 bit experience, this applies to bundled applications, device driver performance and of course system specifications. I see some efforts towards, for instance, I am typing this on my friends HP Pavilion dv2000 laptop with Vista Home Premium 64 bit and 4 GBs of RAM, so I feel like she is well on her way to having a good experience. But I must go back to the control aspect, consumers want choice and control, they want to be able to make Windows there own and you need to work with OEMs, ISVs and IHVs to make them aware of that. I hope user experience is a topic for the upcoming to PDC and WinHEC conferences.

I don't agree with those who says that "a line should be drawn", that "w95 software are a thing of the past" etc becquse it ceqtes bloat.

To the contrqry I think the compqtibility mode selection "back to w95" is an excellent idea.

Seriousely, how much bloat can be a "w95 mode" or a "w98 mode" while all the complete w9x versions combined accounts for less than half of a Vista install? Here we are talking of a few libraries.

In fact w95 era or look alikes software are cool and I use them often. Their main advantages are that they are often stand-alone, small, open instantly and without useless cheese. Call me an enthousiat if you want, but that's the way he crucial processes on my computer runs full speed.

I don't see why a perfect software written 10 years ago shouldn't work on new computers just because it's too old. That's silly.

If the API's are slightly different (same call, different response) then let's use the backward compatibility mode. I still have to find a program that needs it, but it's the best idea Vista came up with IMO.

No, if your team can team up for a brainstorming about how to reduce bloat, HDD footprint and redundancies, I'm sure you will write on the white board for 8 Gb of stuffs in less than 10 minutes. :-)

What creates the bloat is, as some posters put it already, hundreds of tutorial videos, a compound of several versions of .NET, Vista itself, games... and the drivers database.

Let's talk about these drivers. I'm not the first one who, already with XP again on Vista, had issues installing the right driver because windows wanted to install its own one. Given that 99% of the time new hardware come with a driver on a CD-rom, let's first ask for this CD, then only ask for the installation DVD if we don't have the hardware CD. No need to keep zizabytes of drivers on the HDD. Especialy when we buy a new piece of electronic only once in a while. OEM without installation disc, could be sold with a driver databse on an external disc.

OEM, to whom we asked to talk with so that they stop the malpractice of installing malware.

We are all part of the ecosystem, and the small consumer we are at the lowest level of the food chain (just above whales dung -LOL-) don't like predators, you know.

First, you need to talk to hardware makers and get them on board to jettison old hardware models. For instance, the majority of desktops today still sport PS2 ports for keyboards and mice, which just adds to hardware that needs to be supported in legacy mode. I cannot fathom why this continues to exist. In fact, most hardware partners are not being very innovative at all at the moment - virtually every system is exactly the same. Dell has finally started doing something with its Studio line, we have a few more All-In-Ones, and we're beginning to see netbooks. But other than that, there's been zero innovation in the last 5 years especially on desktops.

As regards software, you might ask your own people why Office is not available in a 64-bit version. If you want to drive adoption of this, which should have been a goal of Vista and has to be a goal of Win 7, then you need to make your best apps available on it to run natively. I see the hardware makers are finally shipping 64-bit OS Vista with their latest machines with SP1; about bloody time.

MS doesn't help itself. How many mail clients do you have (or have done in the last 5 years)? I bet even you don't know. You need to provide ONE mail client for light use (local app) and ONE mail client on the web, and ONE mail client for heavy/corporate use to be used to replace the complete dogs breakfast you have now, fully backward compatible with all past versions and able to migrate safely, and clean all the old stuff out completely. This is just one example of the bloat you have perpetuated.

Hardware driver loading etc. is still a farce; it doesn't work half the time. You need to get things to fail gracefully and 'auto-find' when drivers get added after the initial connection. People want to attach hardware FIRST, then install software SECOND. Still WAY too many reboots, which tells you no-one has any confidence in the driver model or the ability to change/update drivers on the fly.

Based on the current M3 screenshots and info I've heard from my sources, this blog is basically a waste of time to the public (or breath if we were talking face to face).

You might be reading what we write but are you taking the information, advice, and critiques and actually using it? I think the latest M3 release answers that question.

The next release of Mac OS will allow me to install Mac OS X on my PC. My PC wasn't supported on the current Leopard because NVidia had not created drivers yet. This will be resolved in Snow Leopard and I will be making the switch.

I've made my living developing on Microsoft platforms and technology. Heck, Microsoft probably paid for my house. It's time to move on though. Too much was promised in Vista and then cut at the last minute. I'll see you all on the flip side (or on the way back up the stairs).

It so happens that I purchased Mac OSX family pac for an old Macbook Pro and yes there are ways to install it on Intel hardware without buying a Mac. I just consider myself ahead of the curve in that regard.

I used to be a Windows enthusiast but lost hope when they axed WinFS and nearly tossed out .NET 3.5 from the Windows SDK. I can see right through this blog about as clearly as I can see through the windows in the glass theme. Enjoy the next release. I am sure it will be everything you wanted and more.

if you wont talk to other S.O. go in the Forum Blog and site of Stereotype.

If Microsoft did half of stupidity that makes Apple, the fire would, Bill would be crucified in the same cross with Ballmer, would be sentenced to 20 years of electric chair, there would be popular riots, floods, hurricanes, landslides, glacial eras.

Instead, and not risk anything ever thanks to the "distraction" of certain autority.

Discussing quality technical, value for money, versatility of products that are purchased because Apple products, whatever, or why imposed, or why are cool, or because of fashion, I discovered to be a huge waste of time.It is more than a year that I'm dedicating to find a single reason why it is worthwhile to give up Vista switch to Leopard, paying market prices outside, suffering harassment of any kind,

Security, ease of use, stability myths that have been falling at the event.

While in the past could be justified (shortcomings in Windows), now are largely simple slogan "catchstupid" without foundation.

Often exchange the incompetence of those who install / use Vista, with limits of s / o Microsoft that would prevent this or that, while the other side, there is a race without an end to those found evidence of any kind for any shortcoming were to submit any Apple product, which comes to paint as innovative solutions limits elsewhere would be intolerable, So while a device driver written with the feet, generates intolerance towards Vista, accused, in effect, be unable to correct the defects programming drivers written by others, the inability to use devices, or absence of application software for OSX environment is seen as a strategic choice projected winner in the future.

Ribbon UI isn't the best for smartboard or multitouch usage and hope do see more options with it like left or right down or up of the screen...

Win7 should or has to be same fast as WinXP if you lower down effects and new functions what take down the processing power.

Hearing rumors about Apples Snow Leopard is making me question how good will WIn7 actually be without using hardware max usage potential...

+++++ If drivers get updated immediately like system updates.

+++++ If balloons and tooltips wait when applications initialize completely then old systems don't crash so often...

+++++ If fewer folders and fewer junk files with system updates , new program installs then it would be a wize move and rule for system because I hate do find weird files that are unnecessary do be laying on my disk when that update or that program is already installed or removed.

+++++ UI must be easy do customize with self made pictures and colors.

+++++ Small size and many choices during install from the CD

+++++ During install from CD should have animated video for tutorial and setup of text size , picture , programs , settings...

+++++ Games should work with 1024mb ram because on Vista it made games slow without 2 gig ram....

+++++ Don't forget that size matters and people like do see it small on HDD and SSD and ram usage

+++++ Make sysinternals software integrated in soem way into OS because taskmanager and Defraggler has do few options

+++++ Give TaskManager or Process explorer with many craphic colors so people understand more how much is prefetched and how much of it is in real use by the programs