PDC stuff

I watched the PDC keynote yesterday.. or at least everything up to the code walkthroughs. I was very happy with some of the improvements comming in office 12, but not much in the Vista demos excited me (probably because I’ve been see’ng the stuff for while). The UI improvements promise to be good, I’m especially the quick “What’s my next meeting?” on the mail page. What I’m estatic about is the LUA features, or the “How we don’t always run as admin“ features.

Other things for me to check out:

Larry Osterman explains the Layering Quality Gate

Larry Osterman recently explained the Windows Vista layering quality gate. There is a big poster in 26 that plots out all the components, what layer they live at and how they connect to lower layers. It’s amazing to look at.

Fellow Time Travelers

BrentBlog reminds me of the constant effect that we redmondites are always dealing with. Windows XP was a sureal experience, all the new features and experiences were well grooved familliar friends when it finally came out.

Since then, the feature work seems to have gotten “completed” further and further from when it finally ships. All the feature work we did for Windows XP sp2 was done for almost a 3/4 of a year before it was released, and the Windows Server 2003 sp1 work was done even earlier then that. Even now as Longhorn Beta 1 marches to completion, my team has finished all of our big features months ago, and Longhorn still has a way to go before shipping. Some of this is a measure of Window’s not quite speedy code velocity, and some of it is that my team works on infrasturcture peieces which gets done much earlier then a lot higher level/user facing OS components, but most of the time is integration and stabalization. 

I also agree about how fustrating it can be to have fixed so many customer pains that we hear about, but only in a product that you haven’t shipped yet. Working on IIS6 was the most extreme version of that feeling I’ve experienced. It’s a feeling I’ve seen mirrored by MVPs when they tells us about a product problem and we tell them that we have fixed it in the next version.

However, even with the pain it can be to dogfood pre beta software, working here is an experience of living a couple years in the future.

Network Access Protection

Just a quick heads up on a products a lot of my work friends on that has been announced publically. It’s Windows Network Access Protection. The basic idea is that a client connecting to a network is put on a restircted network till it has proven that it’s a safe machine (up to date with patches, running anti-virus, AV signatures are up to date, etc). This restricted network has enough access to do things like update the AV signatures and so forth. It’s a pretty nice idea for all thoose corperate laptops that slip around the firewall and screw your internal network.

Xen released as Cw aka Comega

Don Box points out that you can now download the Comega compiler that contains Xen (X#) and Concurrency extensions. Xen is what happens when you take databases and xml and make it fundimental to a OOP language.

The problem facing the programming language designer is not only identifying the “heavily used APIs” and “common programming patterns” mentioned earlier but also tastefully realizing them as first-class language features or constructs. Bolting on random features leads to language bloat, potentially destroying any coherence the language may have had. In addition one hopes that by promoting a feature from an API it will be better supported given its existence in the language.

In our opinion three areas that are ripe for liberation from their lowly API status are (a) data-access, (b) concurrency and (c) security. [Programming with Circles, Triangles and Rectangles]

Training and Test Post

This week I’m taking some training by OSR on advanced driver development. I’ve been testing drivers since I started at Microsoft, but rarely from the kernel directy. As a result I have a fisheye’s view of the kernel that I hope to correct.

In the process of explaining how PnP works they showed off thier tool Device Tree, which is also distributed as part of the DDK. I couldn’t find a copy of the DDK for immediate download (although MSDN has a online copy of the docs), one could order it for just the shipping and handling. One of the cooler things about the recent DDK is that is comes with prefast, a nice tool finding some types of bugs in both drivers and normal code.

It was suprising to hear that people have trouble setting up a kernel debugger for windows kernel development. After noticing a prety good description of how to do it by Jolyon Wright, I feel I can only add two points and quick and dirty step-by-step guide. You can find the debugger on microsoft.com and the builtin “bootcfg” command line tool is a nice way to avoid the whole attrib thing when editing the boot.ini.

Here is the minimum setup:

  1. Connect the two machines via a NULL modem cable. Notice which serial ports you plugged the cable into.
  2. Choose a machine to be the debugger. Install the debuggers on this machine. Run windbg. Hit ctrl-k and put in the serial port you are using on that machine with a speed of 115200.
  3. On the other machine the debugee, run bootcfg. Run something like this: BOOTCFG /Debug ON /PORT COM1 /BAUD 115200 /ID 2
  4. Reboot the debugee and wait for debug spew to show up in windbg.
  5. hit the break button in the debugger (ctrl-break). Type .symfix and hit enter. Wait for the symbols to load from the internet’s symbol server and hit g to allow the debugee to continue running.

BTW: This item is a test post, which might get picked up by the Microsoft Community page.

A Hrefhttpwwwnytimescom20021017technologycircuits17bluehtmlex1035432000ampen9974de4cd6c54763ampei5007amp

Bluetooth, Do You Read Me? Wireless Typing and Clicking. Microsoft’s Wireless Optical Desktop for Bluetooth is not just another wireless computer keyboard and mouse. By Michel Marriott. [New York Times: Technology]

Microsoft Polishing Net Serv

Microsoft polishing .Net Server software. The company is putting finishing touches on the second release candidate, or near-final testing version, of Windows .Net Server 2003, sources say. [CNET News.com]