Engineering Windows 7

Welcome to our blog dedicated to the engineering of Microsoft Windows 7

Back from the PDC…next up, WinHEC

Back from the PDC…next up, WinHEC

This has been an amazingly special week for the Windows 7 team.  We’re all incredibly appreciative of the reception of Windows 7 this week at the PDC.  Thank you!

All of us on the team have been closely watching the news reports and blogs of those who have been “kicking the tires” of the Windows 7 pre-beta.  The reception has been fantastic and we’re humbled by the excitement and enthusiasm for the release.  We know we have a ton of work ahead of us to get to beta and then the path to RTM, and the reception has definitely given us an extra special motivation (though we were already pretty motivated).

Next week is our conference dedicated to the hardware partners in the ecosystem we have talked about.  Called WinHEC (Windows Hardware Engineering Conference), we’ll have another series of sessions and keynotes.  Jon DeVaan will be taking the lead as we dive into the details of “fundamentals” and the work we are doing with some of the many partners involved in Windows 7.  WinHEC also has a strong focus on Windows Server 2008 R2 (the server built off the Windows 7 kernel).  These sessions will all be available online as well.

So with all the shows we’re taking a short break from the blog as the folks that do the presenting are also the writers (myself included).

Below is a list of all the sessions on Windows 7 from the PDC.  Please take some time to have a look as the information is very detailed for sure.  How about using the comments on this post to ask questions of the sessions that you’d like to see more details on down the road?  That would be really helpful for us to target our posts.

Many of you have written asking about the beta and how to sign up or download it.  The best source for information on that will be the site which our product marketing team owns and will keep up to date as the beta information is available.  Also note that the Windows Vista blog which is where you will see announcements / news has been updated to reflect the inclusion of Windows 7.  This blog is now known as the Windows Blog.

One of the very fun moments for me at the PDC was an “Open Space” session on the floor of the “Big Room” which was an open-microphone discussion.  Channel9 captured this and might be a fun watch.  See

For those of you interested in the Windows 7 APIs and what’s new for developers there is an overview document that you might find valuable.  See Windows 7 Developer Guide on MSDN.

Thank you very much for all the emails you have sent.  I always share them with the team and really appreciate it.

Presentation URL
KYN02 Day Two #1 - Ray Ozzie, Steven Sinofsky, Scott Guthrie and David Treadwell (Windows 7 starts +17:00 minutes)
PC01 Windows 7: Web Services in Native Code
PC02 Windows 7: Extending Battery Life with Energy Efficient Applications
PC03 Windows 7: Developing Multi-touch Applications
PC04 Windows 7: Writing Your Application to Shine on Modern Graphics Hardware
PC13 Windows 7: Building Great Audio Communications Applications
PC14 Windows 7 Scenic Ribbon: The next generation user experience for presenting commands in Win32 applications.
PC15 Windows 7: Benefiting from Documents and Printing Convergence
PC16 Windows 7: Empower users to find, visualize and organize their data with Libraries and the Explorer
PC18 Windows 7: Introducing Direct2D and DirectWrite
PC19 Windows 7: Designing Efficient Background Processes
PC22 Windows 7: Design Principles for Windows 7
PC23 Windows 7: Integrate with the Windows 7 Desktop
PC24 Windows 7: Welcome to the Windows 7 Desktop
PC25 Windows 7: The Sensor and Location Platform: Building Context-Aware Applications
PC42 Windows 7: Deploying Your Application with Windows Installer (MSI) and ClickOnce
PC43 Deep Dive: What's New with user32 and comctl32 in Win32
PC44 Windows 7: Programming Sync Providers That Work Great with Windows
PC50 Windows 7: Using Instrumentation and Diagnostics to Develop High Quality Software
PC51 Windows 7: Best Practices for Developing for Windows Standard User
PC52 Windows 7: Writing World-Ready Applications
ES20 Developing Applications for More Than 64 Logical Processors in Windows Server 2008 R2

See you on this blog soon enough!


Leave a Comment
  • Please add 5 and 7 and type the answer here:
  • Post
  • OK, my comment seems to have disappeared, so let me take it on portions, hopefully getting all of it delivered that way.

    Very exciting presentation (the first one)... I still haven't watched the all, but if they are as half as exciting and jaw dropping as the first one, it's a very interesting set of presentations surely.

    I want to make some notes I've seen in comments here before and in the presentation.

    1. Windows... it appeared they are gone and replaced by thumbnails in the appropriate quick launch item. I think this is too much of a risk to take with the task bar. Users (me included) are too used to having Windows in the task bar and click from there. Having them be over the respective quick launch item is then counter intuitive. In addition, I may not be completely sure what was the program, but know the window title (e.g. did I opened "Yahoo!" in IE or Firefox?). It will be nice if windows were also visible on the right of the quick launch as is now + are arrangeable as the quick launch buttons are and have been already. Doing that will also enable custom (user based) task grouping of windows. For example, I may arrange all of my entertainment apps on the right (WMP, ICQ, IE with "latest MP3s") and all of my development tools (VS, IE with "MSDN" opened, etc.). With the current model, I'm forced to think in terms of "application" not in terms of "task". There are cases when I do want to think in terms of apps though, so having both models around is the best option in my opinion.

  • ..continuing from part 1...

    2. OOBE. It was mentioned before "why don't you make Aero the default theme?". Now, I know that the reason is Drivers - you can't know if the hardware is capable enough because you can't recognize everything, and it's impossible to be compliant with future and thus unfamiliar hardware. I'd like to propose a solution that is also a panacea for another common theme - OEM crapware, and how it damages Windows' reputation. Upon Windows installation, prompt the user to insert a "Driver installation FDD/USB-HDD/CD/DVD/HD-DVD/BR" and start the installation of drivers and utilities from there. Be sure to inform the user what was detected, provide a short description of each, and give them the option not to install it.

    - Benefit for hardware manufacturers - be able to ship drivers that work with a fresh Windows installation, letting the OS take full advantage of their hardware.

    - Benefit for OEMs - be able to ship utilities and common programs directly out of the box and being able to update them separately rather than updating a full "Recovery CD" image.

    - Benefit for end users - the ability to easily opt out from OEM crapware and use up the full potential of their new machine.

    To make this work though, OEMs will have to be persuaded to use a common installer, like MSI, to install both drivers and utilities, and use a common place for description (say, the MSI file itself?). You must make serious commitments into finding out if they are ready for that, and address their concerns if they're not by providing new free utilities for MSI generation and edition that address those concerns. The more customizations you allow in MSI installers (and MSI creators respectively), the better.

  • ...continuing from part 2 (last one)...

    3. Learning center. No matter what you do, there will always be people who can't intuitively grasp your UI until they read about it and/or spend a whole day with it and/or get it presented by a live person. You can help this type of people by providing a place in the welcome center for them to go to and read about the new stuff. No, not just the major features, but the "minor" UI improvements and what are the new equivalents of old things.

    An example - for my tech savvy father, having to first go to the "Network and Sharing Center" is counter intuitive. He's used to just right click on "Status" and see/edit the settings from there. We're (both) managing a small network, so we have to look and alter these settings often. For me, going to the center is fine, as it also shows some additional information which we previously had to reverse engineer by performing various pings, namely, whether we're connected to the internet or just the local network, and also what networking features are enabled (sharing, discovery, etc.). It appears I'm one of the few though, as other colleagues (from other firms that is) also say the same thing as my father. Yet, when I show them the equivalent (after going to the center, click "status", or if the network is not connected, right click on that second last item, and you'll get to the control panel place) they seem "relieved" and start to appreciate the new model more. If you can give these sort of instructions up front, you'll certainly save savvy users a lot of time to learn Windows 7, and thus show it to the less savvy users (who don't ever bother reading anything anyway).

    Hope you can comment on one or more of those in a future blog post. Thanks.

  • I watched keynotes and sessions all weekend long. On a notebook running Windows 7 (Build 6801). The quality of the build is stunnig!

    And I liked what I saw in the videos very much. You're doing a great job - everything is better than I was expecting. Forget all comments, just keep doing what you're doing. Even the usually boring keynotes were really interesting. Thanks, Steven and all the others.

    But I could really use a Windows 7 activation key... I "lost" mine :)

  • I'd like to "cancel" my first comment (almost). I watched another presentation in which I saw the real quick launch in more detail. So what I thought is quick lanch were really the Window groups.

    Still, are the window reordering and thumbnails available even with window grouping off? Hope they are. I never really liked this application grouping, exactly because I group my Windows based on tasks most of the time.

  • Winhec go in streaming like PDC?

  • The new show desktop feature is nice, but has an important problem.  As implemented, it shows your windows as outlines, but leaves your gadgets visible.

    1) Why do you show the window outlines?  Is that useful?  If you have lots of windows open, that could make it difficult to see what is below.

    2) Leaving the gadgets there makes it very difficult to see the icons below.  (Can you click on icons through the window outlines?)  You'll have to place your icons (or gadgets) in such a way that they never overlap.

    3) Autoresizing windows when the mouse hits the side of the screen is likely to cause lots of problems for people who didn't want their windows to stay on the screen and be resized.  What if you just want to move your window part way offscreen and not dodge the sides of the screen?  That takes a lot more work!

    4) Remove the word Windows or Windows Live from the front of every program.  It makes it hard to find programs when every program begins with the same one or two words, and it provides no useful information.  We know we're running Windows.  Really.

    5) Power options: balanced vs power saver: It's clear that power saver will save me power, but what is balanced,exactly?  Does that mean that it saves me some power?  That it saves me no power?  What if I want to run my system as fast as possible right now even if it drains my battery faster?

    6) Previews: You have a split pane between a preview and the files being displayed.  Consider that this may not be the best layout for displaying previews.  You'll notice that there is lots of vertical space above and below the thing being previewed that isn't being used.  If you rearrange things a bit, you could show a much larger preview with the same number of folders (or more folders) visible at the same time.  For example, perhaps the preview could be in the bottom right corner.  That would leave almost the entire window space available to see files too.

    7) Not so fond of the seafoam icon color for the notification area icons.  Perhaps we could choose the colors of those icons?  As they are, I'd be tempted to hide them so that I didn't see the seafoam all the time.

    8) On notifications - there are a few programs (Outlook and the power warning come to mind) that display an icon that does...nothing.  There's no indication of why the icon has appeared.  Sometimes, there is even a pop noise, but no indication as to why.

    9) Turning off individual icon notifications - awesome!  Some programs (HP's Radia client comes to mind) change the name of their icon all the time so you can't do this.  (Under XP, there are icons that I simply can't even hide!)  You should be able to turn off all icons for programs, not just specific icons.

    10) It would be great to be able to magnify individual programs, rather than the entire screen.  I'm not talking about magnifier type magnification.  But maybe just scaling of certain programs.

    11) I like that the cheesy corporate curvy mesmerize your mind lines have disappeared.  This looks much nicer.

    12) Display: You should remember screen resolutions, icon positions, window arrangements, etc. so that when you change the displays you are connected to, you automatically restore the settings that you had before.  When using multiple monitors, I'm always fighting with Windows to keep things arranged as I want.

    13) Icons: Please let me keep the trash where I want.  Arrange icons shouldn't move the trash unless I want it to.  ie. Separate arranging of special folder icons from files so that I can keep things where I want.

    14) Device stage seems like a way for companies to market to me, from what I've read about it.  I hope this isn't the case...

    15) Ribbons: I love the ribbon, but please be sure to place icons near text that actually relates to their action.  Example) Outlook 2007's encrypt mail icon is so close to text for another function that I have a hard time finding it, because it looks like the icon is related to something else.

    16) Can you add blocking of per program outgoing connections too?  Some programs should never be allowed to access anything!

    17) Homegroup: It looks like I'm either sharing all pictures/documents/videos/etc, or nothing at all.  Better sharing granularity is really important here.

    18) Credential manager: how are credentials protected?  Are they AES encrypted?  Are they stored as plaintext?

  • Part 2:

    - Notepad: I would like to be able to change the notepad tab width. It should be 4 by

    default and not 8. Code coloring also. And support for more encodings (and to save with

    other encodings). Possibility to see what line separators are used (and be able to change


    - Telnet installed by default.

    - Built in FTP graphical client (and a better ftp.exe)

    - Multiple desktops, or an "endless" desktop that could be dragged with zoom some cool zoom


    - "su/sudo"/user elevation in powershell (I haven't tested 2.0 yet).

    - Calendar gadget should be integrated with windows calendar.

    - No more ugly gadgets like the cpu-meter.

    - More optional desktop effects like compiz (but no ugly or tacky effects like the burning

    or wobbly windows. Keep it professional).

    - Windows resource kit tools ship with windows 7.

    - RAR format file support.

    - Exposé-ish feature, or some alternative in addition to flip 3d.

    - Built in webcam utils.

    - More 'longhorn concept'-animations as people have previously written here somewhere.

    - Ways to manage symbolic links graphically

    - Backup feature should allow restoring to other disks in case of disk failure. When a disk

    fails, people normally buy a bigger disk of a different brand. I had to use the old norton

    ghost (which is better than the new one by the way) to backup my disk.

    - Some way to move app windows that resides on a secondary display back to the primary

    display when the secondary disp in not on (or not working).

    - SVG for IE.

    - XML notepad should be included, but enhanced first.

    - mklink.exe must be supported in powershell

    - Rework most of the screensaves, including starfield which should look something like

    - A stopwatch app (gadget maybe?)

    - Native SSH connectivity support (in powershell maybe?)

    - Probably alot more... Good luck!

  • Part 3:

    - File content search (in vista pre-sp1) doesn't work. Does it in sp1/2? Anyway, make it

    more like XPs file content search, or just better than XPs.

    - The 'add font' dialog should be upgraded. I'm sure you've heard this before.

    - cmd.exe should be replaced by powershell.

    - Some way to show how much space each folder in the current view uses. I had to develop my

    own quick'n'dirty implementation:

    - Include donkey.bas, nibbles.bas and gorrilas.bas in windows 7 ported to .net in their

    original form (and maybe new versions as well if time is on your side). Yes, I'm serious. Do

    it, today. Some people would love windows 7 JUST because of that.

    - A new sound recorder. The vista one in vista doesn't really cut it. I want to be able do

    to what I could in sndrec32.exe. Speed up stuff and save in whatever format I like.

  • Part 1:

    - RDP screen as an extended desktop!

    - Some way to better manage "nested" RDP sessions. Like when computer 1 is connected to

    computer 2 that in turn is connected to computer 3.

    - Text difference tools, like som random diff app I found: Altova DiffDog.

    - Get some sort of Quick View back.

    - Ncurses, ansi.sys stuff in .net for cool retro console apps

    - File copy queueing and pausing. Just add an advanded-button to the copy-gui.

  • I don't understand why people are saying that Aero isn't the default theme. I have installed Vista on many different PCs and as long as they have hardware that can run Aero, it is the default.

  • @UserOfManyOperatingSystems: Device Stage is not about marketing messages. Check out the Device Stage description and screen shot at (It's near the end of the page).

    From what I read there, it sounds like it will be a useful feature.

  • @WindowsFanboy

    Normally, that would be right. However, Windows can't know if the video card is capable enough up front. It needs drivers for that (or the video card must be exactly one that is recognized). So, until you install drivers and refresh your systems' grade, you get the "Vista Basic" theme, which is essentially Aero without transparancy and animations (and Flip 3D, and thumbnails, etc.). Users that don't bother installing drivers unless they're asked to are the same users that won't bother changing the default theme and/or refresh their grade.

  • The new taskbar looks good. I still prefer the old way, but the task group is no longer as bad as XP, so I will give it a try.

    One thing comes to my mind. Language bar. What about language bar? It is one of the most annoying thing I have to deal with in my task bar. The width changes based on different language and its feature settings. It is far from consistent. Would you be replacing language bar with Jump List and or even buttons in the thumbnail window?

    And could there be an app icon I can hovor and show all my opened windows? The icon will show how many windows I have opened too. You know. Like traditional taskbar feature turned into one app icon and use thumbnail for traditional global task switching. At least this will help me adapt the new taskbar. Also I think such app is kinda cool.

    The new taskbar is in the right direction. Good job guys.

  • boen robot, you are mistaken. I have installed Vista on several machines with geforce 8-series GPUs, and the only one that came up on vista basic initially, was one running a geforce 8600GT (which didn't exist when vista shipped). However, on the first reboot of the machine, aero was automagically enabled. Windows sucked the correct driver via windows update, and installed it silently.

Page 2 of 8 (108 items) 12345»