That's right! If you haven't already heard, Windows Vista Service Pack 1 (SP1) is finished, complete, in the can, DONE! As of yesterday, February 4, 2007, SP1 is officially released to manufacturing (RTM) - which means that OEMs (Original Equipment Manufacturers) like Lenovo, Dell, HP, etc, have the final code. However, as Mike Nash, Corporate VP, Windows Product Management, tells us in his blog post, SP1 will not be available to the general public (a.k.a. you) until Mid-March. The reason? Those pesky IHV drivers. It seems some of the installation executables for various Vista drivers are written such that they would need to be reinstalled after upgrading to SP1. We figured John Q. Public wouldn't like that experience, so we are working closely with the IHVs to get the issue fixed. Again, look for general availability in Mid-March with Automatic Updating turned on for SP1 in mid-April. For more information, here's a couple of links for your reading pleasure:
Mike Nash's Post
More About SP1
Dr. Thomas Shinder makes some excellent points about how difficult it can be to enact good security. Even something as seemingly straightforward as installing Windows Server 2008 Core to reduce your attack surface can harbor hidden perils. What hidden perils? Well, misconfigurations are inherently more common when managing a server strictly though the command-line interface (CLI). But, the good doctor says it far more eloquently than me. Check out this post as well as several other high quality posts on Dr Shinder's Windows Security blog.
http://blogs.windowsecurity.com/shinder/2008/01/29/server-core-management-a-potential-security-issue/
I just got an email from someone who had watched one of my old ISA Server 2006 webcasts. She had a couple of interesting, if somewhat basic, questions and I thought I'd share the email with you.
From: <...email address omitted...>
To: Shawn Travers
Subject: ISA 2006 Web Caching
Shawn,
I was watching your webcast on ISA server 2006 and have a few questions. Actually I just setup a new ISA server 2006 for a branch and I'm confused about how the following issues are addressed:
- How to clear the cache?
- When the cache directory is full, does it overwrite it?
- How do I view the contents of the dir1.cdat file. In order words, how can I see what URLs are being cached? Where does it keep the list?
Thank you for addressing these issues for me.
<...name omitted...>
From: Shawn Travers
To: <...name ommitted...>
Subject: RE: ISA 2006 Web Caching
Dear <...name omitted...>,
Thanks for taking the time to view my webcast and for emailing your questions. I did some quick digging and have answers to your questions. Please let me know if there is anything I’ve missed….
1. To clear the cache, disable the cache through ISA Server Management, and then delete the cache storage file, such as Dir1.cdat (the default name of the ISA Server cache file). There is a cache file in the Urlcache folder on each drive that is configured for caching. After you delete the cache file, enable the cache in ISA Server Management. There is also a sample script that describes how to clear the cache programmatically. For information, see "Deleting Cache Contents" at the Microsoft TechNet Web site. In ISA Server 2006 Enterprise Edition, this tool must be run on each array member.
2. If the cache content file is too full to hold a new object, ISA Server removes older objects from the cache, by using a formula that evaluates age, how often the object is accessed, and size.
3. Try this to view the URLs in the cache in real-time: http://www.microsoft.com/downloads/details.aspx?familyid=b9ecfcd3-c13f-4447-83ed-add9a8ea45db&displaylang=en
Hope this helps, and enjoy ISA 2006.
Shawn Travers
IT Pro Evangelist
Microsoft Corporation
See, who says I don't do security posts?
Okay, this post is for the less technical among us. As part of a team project, I created a nice, little Camtasia recording a while back to help people make a standard user account in Windows Vista, but I never had the opportunity to publish it. So, since I'm on vacation and I can do whatever I want, I thought I'd post it now. I didn't want the video to go completely to waste, not that it's amazing or anything but it did take me a while to learn Camtasia and put it together. But, first, I'll include a few words about why standard user accounts are important and why they should be used by every single person who logs onto a computer. After that, you can find the links at the bottom of the post.
Standard user accounts (restricted accounts, basic accounts, non-administrator accounts, least-priviledge accounts, or whatever you want to call them) are essential to good security. Whenever anyone is browsing the web or checking email, they should be logged on as a standard user. This way, even viruses that are not detected by your virus scanning software will be unable to infect you. By using a standard user account, you greatly limit your security risk exposure. Malware (spyware, adware, viruses, worms, etc) will not have permissions to install themselves onto your computer, and that's a very good thing. You'll especially, definitely, without a doubt want to use them whenever you are performing high risk activities like, for example, browsing to less-trusted websites or opening attachments to emails that you are not 100% sure of. You shouldn't open those attachments or go to those sites at all, but, if you have to, being logged on as a non-administrator will hugely reduce your risk of infection.
So, what do you do if you need to install a program or change an administrator-level setting? You have two options....either log off and back on as an administrator (usually the first account you created when you bought your computer), or right click on the installation executable or setting and choose "run as administrator" from the drop down list.
Also, if you want to use the new parental controls in Windows Vista, you'll need to create a standard user account for each or your children (and, of course, make sure you set the password on the administrator account to something they don't know and won't be able to guess). When your children log on with their standard user account, they won't be able to turn off parental controls, and you will be able to monitor what sites they are visiting and what they are emailing to friends or writing to each other through instant messenger. You can also restrict what games they can play based upon the game's ESRB rating.
Well, now that you know why standard user accounts are so important, here's a quick video to walk you through the process of creating one. Unfortunately, you may need to click on this link a few times before it works. I've noticed the streaming media server has been a bit glitchy lately. If you can't get it to work, I've got a low fidelity version on MSN's Soapbox Beta.

Vista_Standard_User_Account_Creation - Hi Res (Unreliable, sorry)

Vista_Standard_User_Account_Creation - Low Res (More reliable)
Thanks for checking it out.
If you're already convinced that the Powershell is right for you, skip ahead to the section: "Getting Started with the Windows Powershell". However, if you still need some convincing, read on. So, in case you haven't had a chance to use the Windows Powershell yet, I'm here to tell you - It is a nice powerful tool for automating repetitive tasks in Windows. If you find yourself doing many of the same tasks day after day via the GUI and it's starting to wear you down, you will almost certainly benefit from spending a few minutes learning the Windows Powershell, or at least stealing the scripts from the repository (See Step 5 below)! You don't have to get deep to start saving yourself a lot of clicksteps - just spend a few minutes going through my walkthrough and download one of the sample scripts. I think you'll find you'll be able to give yourself back several hours a week. Check out steps below on how to get started with the Windows Powershell...
Did you know?
The Windows Powershell 1.0 can....
- perform what-if analysis (to help you decide if you really do want to run a certain command or script)
- perform "do while" and "do until" loops
- accept runtime input via the command line. So, for example, you could create a tool to give you information about a specific Windows Service, and it would ask you which Windows Service you were interested in via the command line interface.
- autoComplete using the Tab key (so you don't have to remember every noun-verb command - just tab 'til you find the right one.)
The Windows Powershell 1.0 uses...
- It's own scripting language. That's right, it's not VB Script, C# or any of the others. It's new. If you want to know why, read the documentation linked to in step 3 below.
- the .NET object model, so all output from the Powershell is treated as an object which can be manipulated and piped into other methods
- or, actually, is used by the Exchange Management Console. The Exchange functionality in the EMC is just an add-in to the Windows Powershell. It adds Exchange related tasks, like move-mailbox, to the Powershell.
In addition, if you'd like to learn more, please check out the webcast I just delivered on the Windows Powershell 1.0. It should be available in streaming format here in the next few days. It's called "TechNet Webcast: Prepare Yourself for Windows Server 2008 (Part 7 of 8): Windows PowerShell and Manageability Improvements."
Getting started with the Windows Powershell:
- DOWNLOAD: Download Powershell 1.0. (It's about a 5.0MB download)
- INSTALL: Double-click the downloaded .msu to install the Powershell. There are different .msu's for Windows XP SP2, Windows Server 2003 SP1, and Windows Vista. Make sure you get the right one for your OS. (Windows Server 2008 has the Powershell built in.) The Powershell only runs on Windows, so if you need to run it on another OS, you'll need to build a Virtual Machine and install the Powershell into it.
- READ: Read the Powershell 1.0 Documentation. The documentation is automatically installed along with Powershell and is very helpful, especially at first. If you've never worked with Powershell before, you'll want to read these. The first thing you should read is "GettingStarted.rtf", which is a nice, easy to follow, 32-page overview. Then, you can graduate to the 116-page "UserGuide.rtf". Finally, if you get past all of that, see the "Other helpful links" at the bottom of this post. If you want to read the documentation without downloading the Powershell, you can find it here: Download the Powershell 1.0 Documentation Pack.
- PLAY!: Open a Powershell Command Window and try a few simple, interactive commands (e.g. "write-host This is a test." or "get-childitem <AnyFolderPath>"). It's really quite easy to get used to. I've typed a couple below that you might want to try.
-
HOW TO RUN SCRIPTS - THE EASY WAY: Now, take your Powershell experience to the next level by running scripts! And, if you ask me, the best way to run scripts is to start with someone else's scripts, and build from there. So, go get some sample scripts from the Microsoft Powershell sample script repository online. Of course, you can write your own scripts from scratch, but the sample scripts are so powerful and easy that I recommend you start there. Don't try to recreate the wheel when you don't have to.
------> Microsoft's Sample Powershell Scripts Repository <------
Alright, Shawn, but how do I run those blasted scripts? I keep getting error messages. Well, here's how...
-
First, change the executionpolicy setting. The default executionpolicy setting is restricted, and it will prevent all scripts from running, allowing you to run the Powershell only interactively. (If you want to know why we do this, check out the "go" link below just before step 2.) If you want to run scripts, even the ones you create, you'll need to change that setting. Here's how you do that:
-
Then, just copy and paste the sample scripts directly from the Microsoft repository website into Notepad. Save the file with any name and a .ps1 extension (you'll need to get rid of the .txt extention as shown in the screenshot below.)

-
Run the script from the Powershell prompt. For example:
-
Now that you've got one script under your belt, you can try some other examples of sample scripts from the website. Here is a list of the available sample scripts.
-
Active Directory - Sample scripts for managing Active Directory and Active Directory objects.
-
Applications - Sample scripts for managing software and applications on servers and client computers.
-
Desktop Management - Sample scripts for managing such things as desktop settings, computer startup and shutdown, and System Restore.
-
Hardware - Sample scripts for managing and monitoring computer hardware.
-
Logs - Sample scripts for managing event logs and plain-text log files.
-
Networking - Sample scripts for managing and monitoring network configurations and network applications.
-
Operating System - Sample scripts for managing and monitoring the Windows operating system.
-
Other Directory Services - Sample scripts for managing directory services other than Active Directory.
-
Printing - Sample scripts for managing printers, print jobs, print servers, and other parts of the Windows printing infrastructure.
-
Scripting Techniques - Sample scripts demonstrating a wide variety of scripting tips, tricks, and techniques useful to script writers.
-
Searching Active Directory - Sample scripts for searching Active Directory.
-
Service Packs and Hot Fixes - Sample scripts for retrieving information about service packs and hot fixes installed on a computer.
-
Storage - Sample scripts for managing files, folders, file systems, and storage devices.
-
Terminal Server - Sample scripts for managing Windows Terminal Server.
Well, that's it - by now you should be off and running with the Windows Powershell 1.0. I tried to go through all the basics here just to get everything working, as well as some of the gotchas you might run into. Still, it's a big world once you start to go deep into the Powershell, so here are some more helpful links that will get you to that next echelon. If you have any thoughts or questions, please feel free to post a comment.
Other helpful links:
The Windows Powershell Blog Team Site
The Windows Powershell Script Center
Windows Powershell Help on TechNet - Check it out!
Windows Powershell Owner's Manual - Highly recommend - there is a TON of information very easily accessible from here and it starts you off on the bunny slope.
Thanks!
If it's been a while since you've needed a boot disk for your Windows machine, you may just be struggling with how exactly to do it. It's not like the old Windows 98 boot floppy where I could just go into Windows Explorer and make one with a couple of quick clicks of the mouse. However, you need not worry, since the current process is surprisingly well documented by Microsoft.
What may seem, at first, to be a complex task is actually fairly simple. There are essentially seven steps to create a bootable DVD or bootable UFD (USB Flash Drive), all of which are command line based. While the seven steps are relatively straightforward, the Microsoft article outlining those steps has a slightly obscure title: "Walkthrough: Create a Custom Windows PE Image." Anyway, this Walkthrough, for all intents and purposes, is a step-by-step how-to for creating a bootable DVD disk.
Walkthrough: Create a Custom Windows PE Image <- Start Here!!!
Almost everything you need to know can be found by clicking on the link above. (For the things I think perhaps should have been included in the Walkthrough, see below.) If you follow the steps from the Walkthrough, you'll essentially make a disk that will boot into a nice little command prompt. From that command prompt, you can manipulate your Windows files, including copying them off to another hard drive for backup or recovery. Another nice thing about the WinPE environment is that USB disks and drives are automatically detected and accessible from the command prompt. They'll automagically be given their own drive letter when you plug them in because of that wonderful thing known as plug and play. So, you can copy your data to/from just about any drive you want to, including flash drives, with ease.
From your new WinPE boot environment, you can also use the ImageX tool, which is included in your bootable DVD if you follow Step 4 from the Walkthrough article. ImageX could be called from the command prompt to capture your entire hard drive into a snapshot .wim (.wim is Microsoft's Windows Image format - roughly akin to .gho or .pqi files) file. It makes a pretty fair backup of your entire drive, but for novices you'd be better off just using the CompletePC backup that's part of Windows XP or Windows Vista Backup.
Now, if you don't like booting into a command prompt interface, you can include the Windows Recovery Environment (WinRE) in your WinPE image. That way, when you boot to your new disk, you'll see something that looks just about identical to the GUI you'd see when booting to a Windows Vista Installation disk. It takes a bit more work, but you may find it's worth it to have a nice friendly set of recovery tools.
How to add the Windows Recovery Environment to your WinPE Image <- Add a WinRE to your boot environment
Or, add your own recovery and troubleshooting applications to the WinPE environment by following the steps in the next link. Might I recommend copying your favorite virus scanning software (Forefront Client Security, for example) into your WinPE boot disk? That way, you can scan for viruses while the OS is not running - a truly beautiful way to make sure everything is cleaned up so your OS boots without a hitch.
Add extra software to your WinPE environment
As the link above states, just copy the application files you'll need into the C:\winpe_x86\tools directory. If it's an application that needs to be installed and not just a bunch of simple .exe's, you may not be able to run the application from the WinPE boot environment. It's gotta be files you can copy, paste, and run - in other words, relatively simple stuff, folks.
IMPORTANT DETAILS YOU MIGHT NEED TO KNOW THAT AREN'T EXPLICITLY DETAILED IN THE WALKTHROUGH ARTICLE
So, remember I said the Walkthrough tells you almost everything you need to know? It wouldn't be a Microsoft article if we didn't leave out a few simple steps we assume everyone already knew how to do. But me, personally - I like to spell it out to the nth degree so there is no opportunity for confusion. So, here goes.
First thing I'd like to point out. You'll need software to burn the bootable DVD. Yeah, I know it seems obvious, but I don't care - I'm mentioning it anyway. You can't use the DVD burning software that comes with Windows Vista. You've gotta get a DVD burning application that's specifically designed to burn .iso and .img files (Nero, for example). And, by the way, let me help you out here - ANY DVD burning application worth its salt today can do this. So, you don't need to spend a lot or worry about which one you get. A perfect choice if you're cheap like me? Use DVDBurn from the Windows Server 2003 Resource Kit. You can grab it here:
Windows Server 2003 Resource Kit <- Get this for the free DVD Burn Utility
So, what's the first thing you'll need to burn? Well, the Windows AIK, actually. It's downloaded as an .img file, so you'll need to burn it to a DVD (using DVDBurn). Once you burn it to DVD, click on setup and you'll have all the tools referenced in the Walkthrough article. DVDBurn will also be used to burn the .iso file that is created at the end of the walkthrough. (Yes, this .iso is your bootable DVD).
The walkthrough article doesn't tell you where to get the Windows AIK. It just assumes you have it. I hate that - treat me like I'm an eight-year-old when I'm learning something new - that's the way I feel. So, here is the link to the FREE download for the Windows AIK. It's a big 992MB download, by the way, so now might be a good time to grab a cup of joe.
Download the Windows AIK <- This has all the tools talked about in the Walkthrough. You need this to get started. It's critical!
The walkthrough tells you how to create a bootable UFD at the end of the article, but I haven't had great success with this. The diskpart commands are all there and they work, but I keep having issues with the fat32 formatting. I think my UFD's are just cratering, but if anyone else has experience with this, please let me know and I will post an update explaining any gotchas or tips and tricks.
By the way, here's another great article from the folks at svrops.com that covers the Walkthrough and explains many of the why's an how's. You might find it helpful as well.
More explanation of Windows PE and customizing images
Well, I'm sure I'm missing a few things as well , but I'm tired and can't think anymore tonight. So, I'll close this rather lengthy post out. Please feel free to let me know what I missed with a friendly comment. :)
Thanks for reading and HAPPY BOOTING!
I'm presenting two TechNet events and two Angelbeat events in Texas this week, and I've gotta say - the folks I've met have been wonderful. Generally, they've been friendly, forthright, and enthusiastic - not to mention saavy when it comes to technology. Another reason I've loved the people here: the attendees at my Fort Worth TechNet event gave me the highest evaluation score average I've received in quite some time (8.37/9.0)! So, in light of what a nice time I've been having, I decided to do something I don't normally do on business trips; I decided to do some sight-seeing. 
Now, I should add there is another reason I decided to see the sights. Mark Steel, my best friend outside of St. Louis, somehow convinced his daughter that I would be a good candidate to help her with her school project. So, about a month and a half ago, I received a large manilla envelope with some rather unusual contents inside. Mark's daughter had mailed me a crayon colored, exceptionally emaciated, boy sporting a large, disarming smile, a razor-thin but impeccably colored toothbrush and a two-dimensional tube of generic toothpaste. Yes, you guessed it: I had become the latest unwitting recipient of a Flat Stanley. Since it was truly an honor to be selected as Flat Stanley's travel companion, I immediately set off to ensure that Stanley would have the best vacation ever! Subsequently, I have taken Flat Stanley all over the Midwest with me on my travels, and I'll be honest with you - he might just be the best travel companion I've ever had. He doesn't eat much, which would explain his incredibly gaunt profile, he never needs to stop for a bio break on long drives, and he is a spectacular listener - he never interrupts and he smiles at all my jokes.
So, seeing as we had an hour or two to spare after my Angelbeat presentation in San Antonio, I decided to brave the rush hour traffic and head downtown on IH-35. Stanley and I would spend some quality time visiting the local sights, and, in San Antonio, that can only mean one thing: The Alamo. And, before I offend anyone, I'm sure there are plenty of other great sights in San Antonio - this just happened to be the only one I've ever heard of.
At the Alamo, Stanley and I learned that Texas was its own sovereign nation for a couple of years, and even had it's own flag, with one lone star on it - which, come to think of it, might have something to do with how Texas got its state motto. Remind me to check into that. Anyway, we took lots of fun pictures, a couple of which I have included here for your viewing pleasure. We spent about an hour walking the grounds, visiting the Shrine, the Barracks, and, of course, the gift shop. Stanley opted not to buy anything, since he was flat broke. (I couldn't resist.)
It made for a fun and relaxing day, and I felt like a kid on a field trip. Please feel free to post your comments, especially if you've ever had any experiences with this illustrious traveler. I am going to miss him, since I'll be sending him back to his home in Chicago soon. But, I'm sure his best friend will be happy to have him back, and I know she'll let me visit him from time to time. If not, I'll be sad, but I can always think fondly on our trip to San Antonio and I'll simply say to myself: "Remember the Alamo."

I've been published on the TechNet website! If you get a chance, please take a look at my security viewpoint article, "Security: Less is More," when you get a chance. It's a quick read.
http://go.microsoft.com/fwlink/?LinkID=106172&clcid=0x409
Thanks!
How to apply updates to .wim images when they are NOT running
Okay, so, when you find someone who is doing it right, like Mark Minasi with his Windows Networking Newsletters, you just have to let people know. His Newsletter #65 came out a while ago, in September of this year, but I wanted to make sure you didn't miss it. In his article, he explains in simple terms how to apply hotfixes to Microsoft .wim files easily, quickly, and free. Just scroll down to "Tech Section: Getting Hotfixes Onto A Windows Image the Easy (and Free) Way" and start reading.
Applying hotfixes to .wim images: http://go.microsoft.com/fwlink/?LinkID=106142&clcid=0x409
How to modify the registry of a .wim image when it is NOT running
Also, you should check out John Baker's blog post about editing the registry in a mounted .wim image. John Baker from my team actually references a blog post by Michael Greene, a Windows Product Specialist. Thanks to John and Michael. Very cool stuff:
http://go.microsoft.com/fwlink/?LinkID=106143&clcid=0x409
I've got a cool opportunity for everyone. For a limited time, you can use the code at the bottom of this post to get $100 off a new TechNet subscription. This code is good even if you were a TechNet subscriber in the past and have let your subscription lapse. (Sorry, this is not valid towards renewals, which are already sold at a discounted price.)
This is the biggest discount I've ever seen (it comes out to nearly 30% for a TechNet Plus Direct subscription.)
TechNet Plus subscriptions, for those who are not aware, are essentially DVD's sent monthly (for one year, at which time it can be renewed) that include just about everything a Microsoft IT Professional could want. It includes software (Windows client and Server, Office, other server products, service packs, Beta software, etc...) whitepapers, the Microsoft knowledge base, troubleshooting, fixes, and much more! Here's a more complete list:
Full-version Microsoft software licensed for evaluation purposes Select Microsoft beta software releases Subscriber Downloads Complete Microsoft Knowledge Base Service packs, security updates, drivers, and utilities All the Microsoft Resource Kits Product facts, product overviews, and tips and techniques Evaluation and reviewer’s guides Microsoft Seminar Online CDs and technical training materials Deployment guides, white papers, case studies, and much more
TechNet Plus Direct Subscription standard pricing: $349
Your price with the code: $249
Here's the link to purchase a subscription: http://go.microsoft.com/fwlink/?LinkID=103127
And, HERE's the code: TMSAM12
The Forefront Server Security Management Console (FSSMC) is set to release to manufacturing on October 10th! It will be available solely through Micorosoft's volume licensing program around that time. FSSMC stands to be a very solid and necessary addition to the Forefront suite of products.
For those of you who aren't familiar with the FSSMC, essentially it provides for central configuration, deployment, and updating for all Forefront server security products. It enables IT administrators to manage servers remotely, generate comprehensive reports, and receive outbreak alerts. You might think of it as being very similar to the server-side functionality in FCS (Forefront for Client Security), if you are familar with that functionality.
For those of you who are running or planning to run any combination of Forefront Security for Exchange Server, Forefront Security for SharePoint, Antigen for Exchange, Antigen for SMTP Gateways, or Antigen Spam Manager, you'll want to take a close look at the FSSMC. As an FYI, Forefront Server Security Management Console does not support Sybari Antigen 8.0 or earlier products.
If you are interested in learning more about the features included in the FSSMC, check out: http://www.microsoft.com/forefront/serversecurity/mgmt/features.mspx.
Also, I highly recommend you check out the webcast being put on by Kelli Cook, a security product manager and resident expert on the FSSMC. The webcast will be delivered on October 19, 2007 at 11:30am Pacific Time. For more information and to register, check out: http://msevents.microsoft.com/cui/WebCastEventDetails.aspx?EventID=1032352491&EventCategory=4&culture=en-US&CountryCode=US
I'm not going to try to break any new ground with this blog. To break new ground I would need think myself some kind of revolutionary genius, and, quite frankly, I'm not that. I'm not a genius; I'm not revolutionary; And I'm not ego-centric enough to think that I could evolve the world of blogging to a new world order. No, like many of you reading this right now, I'm a simple mind - a confused mind at times - and, as such, my goal is simply to stand on the pinacle of what others have built and shout.
Put simply, this blog will be comprised of my technology revelations - a compilation of all those little "Ah-Ha's" that each one of us has every day, but frequently don't take the time to write down. What you'll find here are the kind of "Ah-Ha's" that might save you some time researching the web. Or, even better, the kind of "Ah-Ha's" that answer those nagging questions that fester and stew for months or even years - you know the questions I'm talking about - they're the ones that feed a vague fog of IT mis-knowledge in the back of your mind - that fog that tugs at your brain's "Oh, no" muscle whenever a so-called IT superhero broaches that topic.
I will attempt, in my rather dimwitted, simplistic way, to clarify what is fuzzy, blurry, and disconnected, like a daily dose of Claritin-D. I don't think in a complicated way, so you won't find complicated revelations. Rather, they will speak in a language you know and help make connections to the things you already understand. In my blog, I'll also attempt to answer questions compiled from attendees at my presentations across the United States. My attendees ask great questions about Microsoft software, and so I'll include them here - like an FAQ on whatever topic I'm presenting that quarter.
Anyway, I hope you enjoy my revelations, and I want to thank you in advance for spending your time with me and with Microsoft. Microsoft's customers are the best in IT. I've always said that; I mean it; and it's true. By the way, I'm also a gamer - so don't be surprised if you see a bit of this mixed in.