Random Disconnected Diatribes of a p&p Documentation Engineer
So we're out of the noughties and into the tens, and I suppose I should decide on some New Year (or, more likely, recycled from the last several years) resolutions. Of course, one of the nice things about being a married man is that you generally don't have to spend a lot of time trying to think of suitable topics to be resolute about. You can usually rely on "the better half" to provide some useful direction in these matters. Suggestions such as losing weight, getting more exercise, giving up smoking, going to bed earlier, and generally increasing the possibility I might live to see old age.
But surely there are some more useful (and easier to keep) resolutions that I can come up with as we traverse into a new decade? Ones that there's at least a sporting chance I can keep until the middle of January? Having spent some inordinate amount of time pondering, I've come up with my own personal list. Feel free to borrow any that fit your lifestyle and situation.
One of the joys of living in England is the plentiful opportunities for amusement (and sometimes even amazement) due to the proliferation of daft laws and rules emanating from our near-expired Government. According to an article in last week's newspaper, it's now illegal to sell a grey squirrel. It's nice to know that the appropriate level of law and order is being enforced in these troubled times. But best of all are the ramifications of the "Elf and Safety" laws (as they are affectionally known) that now blight almost every aspect of our lives.
I suppose it's kind of related to the area of computing I moan so vociferously about on regular occasions - protecting people from doing stupid things. I can understand that when I buy a potted plant at a garden centre, the stick that holds it upright has to have a big flat plastic cap on the top so I don't accidently poke my eye out, and I suppose it's logical that a packet of peanuts needs to carry a "May contain nuts" warning.
So it follows that the computer software I use should also protect me from doing stupid things such as forgetting to save the document before closing Microsoft Word, or accidently formatting my system drive. Thankfully, with some very minor exceptions, we don't yet have multiple "Are you really, really sure you want to do this" dialogs. Though I wonder how long it will be before you need to tick a checkbox to agree to some legal contract each time you delete a file, in order to protect the software publisher from being sued for loss of data.
And I see that MSDN is doing their bit to help me avoid installing the wrong version of software, or even following inappropriate advice in TechNet that might not be compatible with my O/S version. Whilst browsing for a fix for a problem on my Windows Server 2008 boxes the other day, I was presented with a big warning sign saying "This article applies to a different version of Windows than the one you are using. Content in this article may not be relevant to you. Please visit the Windows Vista Solution Center".
Err... thanks. Yes, I do tend to avoid browsing any Web sites from the browser on the server. Especially as I'm usually logged on as an administrator (so I can actually do stuff), and the browser on the server has the Enhanced Security Configuration enabled so almost no Web site actually works anyway. Instead, I use my old non-domain desktop machine (which, perhaps surprisingly, is not running Windows Server 2008?) for general browsing. But I suppose you have to admit that maybe it does prevent some incorrect updates being applied.
I guess the question is: how far should a company or organization have to go to protect people from themselves? Should it be illegal to sell scissors to anyone who doesn't have suitable training in their use and a certificate of proficiency (issued, no doubt, by the Department for Protection from Sharp Kitchen Implements)? Likewise, should computer users be forced to sign a statement absolving the manufacturer of liability before they can edit the Registry. Should there be a law against fiddling with virtual memory settings unless you are a certified engineer (suitably registered on some national database)? Anybody want to take a bet on how long it will be before these actually come to pass?
If you think these are daft rules, how about the one that comes into force next year with regard to tobacco advertising. It will be illegal for cigarette packets and the associated display paraphernalia to carry any advertising at all. Somebody pointed out that the name of the brand is "advertising". I guess it will save the manufacturers money as all brands will be sold in plain white boxes. And, according to the new law, from under the counter. I'll probably have to sneak in to the shop in a large overcoat and dark glasses, and whisper conspiratorially to the shopkeeper. "Pssst... John... quick, gizza packet of the white things... here's a fiver... no questions asked...".
But I suppose what kicked off all of this wild holiday rambling was the following picture I recently came across in the newspaper. Tragically, quite a few passengers were hurt in the accident.
However, what caught my eye and got me wondering was the sign on the front of the bus. I can accept that, on "elf and safety" grounds, they'd need to display the warning that the bus was not in service so that people wouldn't hurt themselves trying to get on it when the door is ten feet off the ground and the seats are ninety degrees out of kilter with their normal position. But the bus was obviously "in service" when the accident happened (unless all the injured people were stowaways). So, who - and at what stage - did they change the sign on the front?
Is there a standing instruction in the London bus driver's handbook that says that the first task in case of accident is to change the sign? Maybe there is a team of London Transport elf and safely inspectors who shadow each bus in case of an accident, and can be on the scene in minutes to change the sign. Or perhaps the Metropolitan Police have a directive that enforces this as the first task when arriving at an omnibus accident. Or could it be that - like modern mobile phones - the buses are equipped with a motion detector that automatically updates the display when it detects more than a pre-specified angle of rotation?
I'm convinced that there are millions of Windows users out there who spend a large proportion of their time just sitting staring at their computer, without actually running any programs. Maybe they can't afford to buy the latest cool applications. Or the ones they've got don't work on Windows 7. Or perhaps it's a just a new incarnation of Zen meditation techniques. How else would you account for the increasing focus on, and proliferation of pretty background pictures and animated wallpaper? Even to the extent of having a different one every time you turn on the machine?
OK, so I spend plenty of time just sitting staring at a computer screen, but in most cases this is displaying either a recalcitrant chunk of code, or some half-written Word document that seems to be going nowhere (a bit like this post, I guess). Maybe that's the point where I should hit "Show Desktop" and just relax as the calming scenes of flowers and landscapes lull me back into a more productive and positive frame of mind. Though the fact that my new Windows 7 box just has a plain green Windows 2000-style background doesn't particularly promote that remedy. I remember reading once that using a wallpaper eats up valuable memory and slows down your applications. Though I guess, running 64-bit Windows 7 with 8 GB of memory installed means this may not really be an issue any longer...
However, there is one thing that I am weirdly particular about: drop shadows on desktop icons. Perhaps they make it easier to read the icon captions when you have a glorious full-color photo of the Grand Canyon on your desktop. But they sure look ugly and make it harder to read the text when you don't. Despite the natural tendency to look for the setting to turn them off in the various Themes, Colors, and Windows Appearance dialogs, everyone knows that you can get rid of them by opening the System Properties dialog, going to the Advanced tab, clicking the Settings button in the Performance section, and unchecking the last but one option. I mean, surely that's the obvious place to find the setting.
And, while you're in there, you can turn off other stuff as well to make your machine go faster; or just so it behaves in a way that you, the user, want it to. Do you need your menus to slide or fade? Do you really want your windows to animate when you minimize them? Is it vital to have your combo boxes slide open and scroll smoothly? I don't know about you, but these seem to be options that I, as the user, should be able to specify. It's hard to see why only an administrator can decide if I need to see shadows under my icon text.
But, if you have finally bowed to the pressure to stop running everything as an administrator, this actually is the case. You can only change system settings if you have admin rights for your account. That makes sense because the same dialog allows you to fiddle about with the paging file (virtual memory), restore the system, allow remote access, and change the computer name. All tasks that you probably don't want ordinary users to play with when they get bored looking at their wallpaper. Perhaps there is a Group Policy setting you can specify? I've searched the GPO templates and the Web, but I can't find one.
So on my new Windows 7 box, after several days getting everything installed and configured, I followed the usual route to the System Properties to turn off the awful black icon drop shadows; as I usually do on all my machines. But now I'm an enlightened non-admin user, I have to enter the admin credentials to get to the settings. Most of the settings in this dialog are applied computer-wide, such as virtual memory and the computer domain membership, so that makes sense. But some are user-specific display settings, yet I can only change them under the context of an administrator-level account. So when I get there, changing them makes no difference. Well actually it does, but not for me. As I'm running the dialog under the admin account context, the changes I make are - of course - applied to the admin account settings.
However, after performing my usual process of wildly clicking on (and swearing at) every part of the UI I could find, the answer became clear - if not exactly obvious. You just type Performance in the Start menu search box, select Performance Information and Tools and click Adjust Visual Effects in the left-hand list. All of the visual effects settings are available, and apply to the currently logged on user. The other settings that require Administrator permission to change are all disabled. Easy! Probably if I'd looked in the Help file first I'd have found the answer.
Of course, it's just possible that nobody else in the whole world cares about drop shadows on their icons. Except, maybe, the millions of people who will buy a computer this Christmas just so they can stare at the wallpaper...
I watched some property development program on TV the other week about a "contemporary" new house with a "streamlined yet powerful" design. The comment from the presenter was that it looked like "a big box with windows". Aha! That's what I've just bought! Though mine was delivered in a cardboard box with Dell labels on. But, at last, I'm Windows 7 enabled! Perhaps you can tell from the increased productivity and heightened user experience of this post.
Or maybe not. Probably because I'm writing this on the old XP box, while the new one laboriously installs endless patches and the several tons of software I need just to make it worth getting out of bed in the mornings. I mean, how can a new machine built only three days ago already need 15 patches just for the operating system? I imagine that, after I install all the applications and other stuff I need, it will spend the whole of next week installing patches for these. All I can say is "Thank heavens for WSUS".
Mind you, it's strange how - despite spending hours figuring out what spec you actually need (or just want) for a new machine - you can end up being surprised at what actually arrives. As usual, my recent purchase is a Dell box, configured through their Web site. You spend ages wondering if you can afford that extra 2GB of memory, what size drive to specify, whether you need a different DVD drive, and a mass of other features and add-ons. There's even an option with the box I ordered to specify any of more than a dozen better graphics cards, one of which adds over $1,500 to the total price. I guess you'd expect that to be somewhat "better" than the standard one I chose - but, there again, I don’t tend to play Tomb Quake or Halo Raider very often.
However, the one thing you probably don't look at in the basic specs is the physical size of the machine. OK, so I did when I ordered a couple of new servers last year, but that's only because my sever cabinet is not very deep and I needed to find something a bit smaller than the standard sized boxes. And you'd think I'd have learned my lesson after the contretemps I had with the old XP box that this new one is replacing. I bought that from the Dell Outlet, spending time choosing one that had the performance I needed at the time, without ever wandering what the "C" after the model number meant. Until it arrived in a padded envelope.
Well, yes, it is a big bigger than that. But not much. It turns out that the "C" meant "compact". It's a small and very pretty silver machine (Hawkwind, anybody?), but runs extremely hot and is incredibly noisy (again, a bit like Hawkwind if their last concert I went to is anything to go by). And it refuses to recognize Vista and Windows 7 as being anything other than programs designed to initiate the blue screen of death; which is why it's finally being retired after I've spent some five years coping with its various vaguarities.
So I made sure the new box is not some weird compact thing. It's described on the Dell site as a "Mini Tower" case with "Vertical Orientation" (you get to choose vertical or horizontal, through surely if it was horizontal it wouldn't be a tower?). But it turns out to be about the size of a football field. Well, at nearly two feet high and deep, nine inches wide, an weighing more than my old 24" CRT monitor did, it certainly is no compact machine. I don't know if they loaded it onto the truck with a fork-lift, but it took two of use to haul it indoors and upstairs to the office. I might even have to put blocks under the desk feet so I can fit it underneath. Thank goodness I didn’t specify "Horizontal Orientation" or I'd have had to move my desk next door to make room for it.
Still, it is a nice piece of kit. Running the 64-bit edition of Windows 7 and tons of disk space and processing power to spare. Though I suppose it will be out of date by next month.
I can't honestly say that I've ever been much of a patron of the dark arts. Mind you, a few years ago I was fascinated to see a chapter for a book on ADO.NET that I'd written come back from review with fifteen paragraphs about devil worship in the middle of it. I was about half way through editing this when I suddenly realized it sounded unfamiliar, and seemed to have little to do with asynchronous data access and stored procedures. I assume that the reviewer had got their Ctrl-somethings mixed up, and I still can't help wondering if there is a Web site out there somewhere that has a detailed description of the behavior of a DataReader in the middle of an article about witchcraft and sorcery.
Anyway, it seems that I have a friend and colleague who actually is a "dark arts" expert. At least he is when the dark art in question is Cascading Style Sheets (CSS). OK, so I long ago accepted that we needed a way of separating style from content in Web pages, and I don't know of any other technology that accomplishes this as well as CSS does. I mean, you can even do dynamic styling in response to UI events and all kinds of clever stuff with it. I'm still amazed at sites like Zen Garden where changing the style sheet actually makes you believe you navigated to a different page.
Yet all my attempts to use CSS to achieve a design that doesn't look like a 1985 Web site (with everything centered and in Times Roman font) seem to result in a page that only works on a 42" screen, or requires you to scroll a mile and a half downwards then read it with your head on one side and one eye closed. It's like they designed the language to be impenetrable to mere humans. I mean, I can fix DNS servers, edit the Active Directory, administer Group Policy, understand design patterns, and I even know a fair bit about enterprise application design and development. But I can't even get margins or padding to work most times in CSS (probably 'cos I don't know which I should be using), and end up with nbsp's and transparent GIFs all over the place. Or (horror), tables for layout...
So when I discovered that a site I manage for the local village residents group was broken in IE8 (and, obviously, had always been broken in Firefox), I put off trying to fix it for as long as possible. The site is based on the Microsoft ASP.NET Club Starter site, and a glance at the stylesheet with its myriad of clear thises and float thats meant I'd probably need to stock up with a month's worth of coffee and cold pizza. After a couple of hours randomly changing stuff (the usual geek's approach to fixing things you don't understand) I'd reached the point where the entire site was totally incomprehensible.
So I emailed my pal Dave Sussman, who has spent the last several years of his life doing clever Web stuff with CSS and other complicated technologies. I know he's good at this kind of thing because he hasn't phoned me for ages to complain about rounded corners and designers generally. And, you know what? Within ten minutes I got the answer. Just take out a clear something or other, or change a margin this to a float that, at it would "just work". And he was, of course, absolutely correct.
Mind you, he admitted he'd resorted to using one of his dark art tools - a wicked device called "Firebug", which does sound like something used by wizards or witches. I'm not sure if he dances around the fire naked at the same time, but I'm too polite to ask...
...that is the question. Whether 'tis nobler in the server cabinet to suffer the outrageous lack of valuable new functionality, or to take arms against the powerful improvements to the core Windows Server operating system. And by opposing, manage without them? To sleep (or hibernate): perchance to dream of an easy upgrade. I guess you can see why I don't write poetry very often - it always seems to end up sounding like somebody else's.
So the disks for Server 2008 R2 dropped through my letter box the other week, and since then I've pondered on whether to upgrade. It's less than a year since I spent a whole week crawling around inside the server cabinet installing two sparkly new servers running Windows Server 2008, upgraded the networking, set up four virtual machines on Hyper-V, and generally dragged my infrastructure screaming and cursing into the twenty-first century. And now it seems it was all to no avail. I'm out of date and running legacy systems all over again.
OK, so I assumed that there would be a Windows Server 201x at some point, and that I'd once again fall by the wayside, but I never expected it to be this soon. While the hardware might not last out the next decade, I kind of hoped that I'd just have to drop the VMs onto a couple of new boxes when the existing ones decided it was time for the bits of bent wire and plastic to give up the ghost. But now it seems the ones and zeros need to be replaced as well. Maybe they're nearly worn out too.
So I printed off all the stuff about fixing upgrade problems (with the fair assumption that - if they exist - I'm going to find them), read the release notes, and then tossed the disk into the drive of the standby machine. At least if I break that one I can reinstall from a backup without interrupting day-to-day service. Of course, it would also be an interesting test of my backup strategy, especially as I've not yet had the misfortune to need to resurrect a Windows 2008 box using the built-in backup and restore feature.
After a few minutes rummaging about inside the machine, the installer produced its verdict. OK, so I did forget about domain prep (it's also the backup domain controller), but it also said it needed 18+ GB of free space on Drive C. Not something I was expecting. But I have 17GB free, so I could probably move the swap file to another drive (there's over 100GB available there), but would that break the upgrade? And the VMs have a lot less free disk space. I'll need to grow the partition for them, and then try and shrink it afterwards - otherwise it will take even longer to export backups. Hmmm, not such a simple decision now is it?
One thing is clear, next time I order any machine I'm going to specify it with 4 x 1 terabyte drives. I seem to spend my life trying to find extra disk space, even though the current boxes have nearly 400 GB in them. And they spend 99.9% of their time with the performance counter showing 1% load. It's a good thing I'm not trying to do something enterprisy with them.
So with it looking likely that I'll be confined to my legacy version of Windows 2008 for the foreseeable future, I decided to review what I'd be missing. Maybe it's only a facelift of the O/S, and there are just a few minor changes. Well, not if you look at the "What's New in Windows Server 2008 R2" page. There's tons of it. Pages and pages of wonderful new features that I can drool over. But do I need them? I guess the one area I'm most interested in is updates to Hyper-V, and that list seems - to say the least - a little sparse. I don't need live migration, and I'm definitely convinced that, with the minimal workload on my systems, I don't need enhanced processor support or bigger network frames. And dynamic virtual machine storage won't help unless I stuff the box with bigger disks.
The one feature I would like is the ability to remove the redundant connections* that Hyper-V creates in the base O/S (see "Hyper-Ventilation, Act III"), but I guess I can live without that as well. So what happens if I don't upgrade? Will I become a pariah in the networking community? Will my servers fall apart in despair at not getting the latest and greatest version of the operating system? Will I be forever dreaming about the wonderful new applications that I can't run on my old fashioned O/S? Will I still be able to get updates to keep it struggling on until I get round to retiring?
Or maybe a couple of bruisers from the Windows Server division will pop round with baseball bats to persuade me to upgrade...
* Update: In Windows Server 2008 R2 you can untick the Allow management operating system to share this network adapter option in Virtual Network Manager to remove these duplicated connections from the base O/S so that updates and patches applied in the future do not re-enable them.
I'm not quite sure how she did it, but this year my wife managed to convince me to follow the latest weekly pandering to public opinion that is "The X Factor" - our annual TV search here in Britain for the next major singing and recording star. I did manage to miss most of the early heats; except for those entrants so excruciatingly awful that my wife saved the recording so she could convince me that there's a faint possibility I don't actually have the worst singing voice in the world. Though I suspect it's a close-run thing.
And I have to admit that some of the finalists do have solid performing capabilities. There's a couple of guys in the "over 25s" section that really look like they could actually make it as recording artists. Though, to really tell, you probably should watch (or rather, listen) with the screen turned off so you aren't distracted by the accompanying (and very talented) dancers, the audience madly waving banners, and the pyrotechnics and light shows that accompany every performance. I mean, it's supposed to be all about the voice.
And here we come to the crux of the matter. After one particularly controversial decision where a young lady with probably the purest and most versatile singing voice was voted off, the show's owner Simon Cowell said that "he trusts public opinion" and that he "wouldn't organize a show like this if he didn't". Unlike what seems to be the majority of the baying public out there, I actually agreed with his decision. If the show is supposed to be about finding the best artist based on the opinions of the "Great British Public", then they should be allowed to make the decisions.
What's worryingly clear, of course, is that the public don't actually vote based on the principles of the competition - they vote for their favorite. I suspect that the tall and attractive blonde lady gets a lot of votes from young men, and the teenage lad (who, to be honest, doesn't have the greatest voice) gets a lot of votes from teenage girls. Meanwhile my wife wanted the guy with the mad hairdo who looks a bit like Brian May from Queen (and is a very passable rock music singer) to win. Or maybe the one who wears funny hats.
But more than anything, you have to assume that a great many people vote - mainly out of spite - for the act that Simon Cowell (currently Britain's most hated person) has been trying to get voted off for the past many weeks. Rather like the last TV-based ballroom dancing contest where the lumbering overweight TV reporter actually had to resign from the competition because it was clear that he was the worst every week, but the public kept voting him in.
And here we come to the crux of the matter. Who is best placed to choose the optimum outcome for any activity that involves choice? The principles of democracy suggest that allowing everyone to have their say, and choosing the most popular outcome, is the way to achieve not only popularity, but success as well. It's based on the assumption that everyone will make a logical choice based on their situation, and the resulting policy will therefore satisfy the largest number of people and achieve the optimum outcome. Though that doesn't appear to be the way that the People's Republic of Europe works, where the public gets no choice, but that's a whole other ballgame.
In our world of technology development generally, and particularly here in p&p, we rely on public opinion a great deal. We use advisory boards and public votes to figure out the future direction and features for our offerings, and to provide an overall guide for the optimum direction of our efforts. In theory, this gives us a solid view of the public opinion of our products, and ensures that we follow the path of improvement in line with need and desires.
But is this actually the case? If 6.5 million people watched "X Factor", but only a few thousand voted, is the result valid? Could it be that most people (like me) have an opinion on who should win, but have neither the professional ability to make a properly informed decision on their real talent, or who just can't be bothered picking up the phone? In a similar way, if only 35% of the population actually vote in a general election, is the result actually valid? Is it only the opinionated or those with an axe to grind who influence the final outcome?
Its worrying if this trend also applies to software development. When we run a poll, send out questionnaires, or consult an advisory group, are we actually getting the appropriate result? If the aim is to widen the user base for a product, is asking people who already use it (and, in many cases, are experts) what they want to see the best way to broaden the reach and improve general user satisfaction? No doubt there's been plenty of study in this area from polling organizations and others associated with statistical modelling, but it's hard to see how you adjust numbers to make up for the lack of input from a very large proportion of the population.
In particular, if you are trying to make a product or service more open to newcomers, and widen the user base to include a broader spectrum of capabilities, how do you get to the people who have never heard of your product? Is asking the existing expert user base, and perhaps those already interested in learning about it, the best way? And, if not, how else can you garner a wider range of non-biased opinion?
Mind you, I reckon the Geordie with the big teeth will win...
Usually the only time I feel like digging a big hole and climbing in is when I make some inappropriate remark at an important social event, or tell a rather too risqué joke during a posh dinner party. However, since I never get invited to posh dinner parties, and extremely rarely have the opportunity to attend any "cream of society" gatherings, I've so far avoided the need to invest in a new shovel. And, not being a polar bear, I don't have a tendency to view large holes in the snow as suitable resting places for the winter either. In fact, even though I'm quite adept at sleeping, it turns out I'm a rather late convert to the notion of hibernation.
As we've probably already reached the "what on earth is he rambling on about this week" moment, perhaps I need to mention that I'm rambling on about my recent epiphany in terms of turning off the computer at the end of a working day. Maybe it's because of the many years working with operating systems where you could quite safely just pull the plug or do the BRST (Big Red Switch Time) thing, yet be confident that the whole caboodle would happily start up again fully refreshed and ready to go the next day as soon as you applied some volts to it.
None of my old home computers, Amstrad PCWs, or DOS-based boxes ever minded an abrupt termination of electricity (except you lost whatever you forgot to save), and the Wii and other more consumer-oriented stuff we have also seems to cope with being abruptly halted. But not Windows Vista (and, I assume, Windows 7). You get those nagging reminders that you've been naughty, and a threat that it will spend the next four hours rummaging round your system just to see if you did any damage. I suspect this is probably just a long "wait" loop that prints random stuff on the screen, designed to teach you a lesson.
Of course, when XP was king, we were offered the chance to "Hibernate", and sometimes even "Sleep" rather than turning the thing off. I don't know if anyone actually made this work reliably - it never did on any of the laptops I've owned, and the XP-based Media Center box we had up till recently only managed it through some extra bolt-on hardware and software. Even then, I had to reboot it at least once a week to let it catch up again. So I've been extremely reticent about anything other than a proper "shut down" at the end of each session.
But recently I've noticed that colleagues seem to be able to shut the lid and briefcase their laptop, yet have it spring almost instantly into life when they open it up again; and without burning a hole in the side of the bag, as my tiny Dell XPS tried to do last time I attempted this. Aha! It turns out they are running Vista. Maybe the time it takes to actually get started from cold (even if you hadn't been naughty last time you turned it off) was a contributing factor to their hibernation behavior...
For me, matters came to a head with the machine we use to view the signal from the IP camera that my wife uses to watch night-time wildlife (foxes, badgers, etc.) in our garden. Like most software written by companies that actually specialize in hardware, the viewer application is quirky - and that's being kind. It won't remember connection details, has no automation facilities, and accepts no startup parameters. The only way to get it running is to mousily fiddle with the UI controls. There aren't even any shortcut keys or a recognizable tab order, so my usual kludge of using a program that generates key presses won't work either.
This means that, even though I can enable auto login for Windows (it's not part of my domain), I can't get the **** viewer to connect automatically at startup. It was only after a lot of fiddling about that I decided to try hibernating the machine with the "login when waking from sleep" option disabled, so you only have to close the lid to turn it off, then hit the power button to get back to watching wildlife. And, amazingly (to me at least) it seems to work flawlessly. The only time it actually gets turned off is when it needs to reboot for an update patch.
Suitably impressed, I enabled Sleep mode on the new Media Center box; which runs Vista Home Premium Edition. I managed to get the screensaver I adapted some while back (see The Screensaver Ate My Memory) to run on Vista. It shows assorted photos from our collection for a specified time and then terminates, allowing the machine to go to sleep. Yet it reliably wakes up in time to record scheduled TV programs, collect guide data, and do all the other complicated stuff that Media Center seems to require (to see how many things it does, just take a look in Task Scheduler).
So, somewhat late to the party, I'm now a confirmed sleeper and hibernater. My laptop is happily slumbering away (though not in a large hole) as I write this - on another machine obviously. And the incredible thing is that it comes back to life faster than my (somewhat dated) mobile phone does. In fact, it takes the Wii box, the consumer DVD player, and the TV longer to get going than my laptop. I've even got my wife's tiny Vista-based laptop set up to hibernate so she can get to her vital email inbox more quickly. Maybe we're at last reaching "consumer-ready" status for computers? Though I'd have to say that I haven't needed to reboot my phone three times in the last month to install updates.
And while we're on the subject of screensavers (yes we are), I still can't figure why I had to completely rebuild the one that worked fine on XP to make it run on Vista. The problem was that it has a series of configuration settings, which include the path to the root folder containing the pictures to display. It saves these using the VB built-in persistence mechanism, which quite happily remembers the settings each time you open the configuration window. But when Vista fires up the screensaver after the requisite period of inactivity, it suddenly forgets them all again.
At first I thought it was to do with the weird path mappings Vista uses for the Public Pictures folder, but no amount of twiddling would make it work (have you ever tried debugging a screensaver?). And I can't find any sample code that shows how you get to it using environment variables. However, after a lot of poking about in the code, it seems that Vista may actually run the screensaver under a different account or context from the current user context (though I haven't been able to confirm this), so the user-specific settings you make in the configuration window can't be located. Finally, after applying my usual large-hammer-based approach to writing code (I made it store and read the settings from a simple text file in the C:\Temp folder), it works again.
At last I can sleep (and hibernate) easy...