Category Archives: windows

Why Internet Explorer users get the worst of the Web

Microsoft’s Chris Wilson has a post on Compatibility and IE8 which introduces yet another compatibility switch. IE8 will apparently have three modes: Quirks, Standards, and Even More Standard.

Here’s the key paragraph:

… developers of many sites had worked around many of the shortcomings or outright errors in IE6, and now expected IE7 to work just like IE6. Web developers expected us, for example, to maintain our model for how content overflows its box, even in “standards mode,” even though it didn’t follow the specification – because they’d already made their content work with our model. In many cases, these sites would have worked better if they had served IE7 the same content and stylesheets they were serving when visited with a non-IE browser, but they had “fixed their content” for IE. Sites didn’t work, and users experienced problems.

In other words, so many web pages have “If IE, do this” coded into them, that pages actually break if IE behaves correctly. Alternative browsers will do a better job, even if IE is equally standards-compliant, because they do not suffer the effects of these workarounds.

Microsoft’s proposed solution is to make the supposed Standards mode a new quirks mode, this time frozen to IE7 compatibility, and to force developers to add a further meta tag to enable the better standards compliance of which IE8 is capable.

It actually goes beyond that. Aaron Gustafson explains the rationale for the new X-UA-Compatible meta tag which enables web developers to specify what browser versions their page supports. The idea seems to be that browsers parse this tag and behave accordingly.

This sounds uncomfortable to me. Versioning problems are inherently intransigent – DLL Hell, the Windows GetVersion mess – and this could get equally messy. It is also imposing a substantial burden on browser developers.

Has Microsoft made the right decision? Trouble is, there is no right decision, only a least-bad decision. Personally I think it is the wrong decision, if only because it perpetuates the problem. It would be better for IE to do the correct thing by default, and to support meta tags that turn on quirks modes of various kinds, or an option in browser preferences, rather than doing the incorrect thing by default.

Still, Wilson makes a case for the decision and has some supporters. Nevertheless, he is getting a rough ride, in part because the IE team has failed to engage with the community – note for example the long silences on the IE blog. Why is Wilson telling us now about this decision, as opposed to discussing the options more widely before it was set in stone, as I suspect it now is? Even within the Web Standards Project, some of whose members assisted Microsoft, there is tension because it it appears that other members were excluded from the discussion.

Another point which I’m sure won’t go unnoticed is that Wilson makes a good case for using alternative browsers. IE users get inferior markup.

Technorati tags: , , ,

Changing the motherboard or storage controller underneath Windows XP and Vista

Can you change your motherboard without reinstalling your operating system? Sometimes you can, sometimes you can’t. Last week I decided it was time to upgrade the desktop PC on which I do much of my work. The old motherboard was nearly three years old – an Intel 915PBL, which I purchased in order to run 64-bit Windows XP. At the time I was indignant because the BIOS swallowed a full 1GB of my RAM.

Technology has moved on, so I purchased an Intel DP35DP board (I still have a high regard for Intel’s manufacturing quality) and a core 2 quad Q6600 processor. I appreciate that this is now not quite leading edge, but it has been out long enough to be a reasonable price. So I backed up my files, performed the motherboard surgery, and switched on.

For sure I was not depending on being able to continue without reinstalling the operating system. This is not a supported procedure. On the other hand, I figured it would be interesting to try; and so it proved. After all, I’ve had enough trouble installing things like Visual Studio 6 and Adobe Creative Suite 3, not to want to repeat the experience.

My desktop PC is a little complex. There are three SATA drives and three Windows installations. One is Window XP x64 (the original installation); one is Windows XP Pro 32-bit; and one is Windows Vista Pro 32-bit. I work mostly in Vista. Initially, none of these worked with my new motherboard. Attempting to boot Vista caused an immediate restart, and both XP installations blue screened.

The key problem is the storage controller. Typically, you will get a STOP 0x0000007B if your new motherboard has a different storage controller than the old one. The above link is to a Microsoft knowledgebase article for Windows XP, and you will see that it suggests two solutions. One is to perform an in-place upgrade, also known as a repair install. This is where you reinstall Windows to the same location, and it sorts out the device drivers and other critical problems without blowing away your documents or applications. The other is to do a new clean install – not really a fix, more an admission of failure.

Vista no longer supports repair installs. More on this later.

Note that the main issue is getting Windows to boot. Once it does boot, you will likely get all sorts of device errors, but these can usually be fixed. Fixing stuff if you cannot boot at all is more challenging.

Health warning

Since you are still reading, I assume you are in one of two categories. Either you are inquisitive about the innards of Windows; or you have a problem because Windows will not boot. Here’s my disclaimer. The steps I describe below are not supported, guaranteed ways to rescue Windows; and if you experiment with a working Windows installation, you could break it. If you try any of them, it’s at your own risk.

The AHCI problem

Intel’s new boards usually have three settings for the SATA controller. One is IDE, which is best for legacy compatibility. One is AHCI (Advanced Host Controller Interface), which is best for features. The third is RAID, which combines AHCI and a sort of hardware RAID (sometimes known as fakeRAID because it isn’t really hardware RAID, but never mind). Intel boards used to default to IDE, but this one defaulted to RAID which is now Intel’s recommendation. Even if you only have one drive, you can easily set up RAID later if you start with that setting. If you plan to install Linux, you might be better off with plain AHCI.

Repair Install on XP x64

For my first experiment, I tried a repair install on XP x64. It did not go well. There was some minor awkwardness. Intel supplies the crucial RAID drivers on antiquated media called floppy disk. You need this during Windows setup (press F6). However, the motherboard has no Floppy Disk connector; you have to use USB. Luckily I have a USB external floppy which came with a laptop some years ago, so that bit worked. Unfortunately, the repair install seemed to hang on a screen which said “Installing Devices” and promised to complete in 35 minutes. I left it overnight and it said the same thing in the morning, though it had not technically crashed and who knows, perhaps it would have completed one day.

If you ever hit this issue, read this thread. What you have to do is to restart the machine and press F8 to get the advanced startup options. Timing this may be tricky, since setup configures itself for immediate startup. If you get really stuck, find some way to edit boot.ini to insert a delay. Once you have pressed F8, choose the Debugging mode. The repair install will now complete within a sane time. There’s another solution discussed in the thread I’ve referenced above, which involves identifying which device is causing the hang and then preventing setup from attempting to install it; but the Debugging option worked fine for me.

As it happens, I didn’t discover this fix until later. I got diverted by 32-bit XP.

Fixing 32-bit Windows

After getting stuck on XP x64, I took a look at 32-bit XP. The X64 repair install had mucked up the boot menu; but that’s easy to fix from a recovery console. Being a little discouraged, I decided to try the legacy IDE settings for the SATA controller. Good old XP Pro then started, no hassle, no need for a repair install. It detected various new devices, and I ran the Intel driver utility from the CD that came with the motherboard. I also had to reinstall the NVidia graphics driver. My first success.

First attempt with Vista

Vista on the other hand still would not work. It is less amenable than XP to controller changes; I gather this may be something to do with speeding up the boot process by disabling “unnecessary” drivers. Anyway, it blue-screened irrespective of the setting for the SATA controller. It was then I discovered that Vista has removed the option for a repair install. What you do instead is to boot from the setup CD or DVD and choose the option to “Repair your computer”. Then it runs a Startup Repair wizard which tries to fix your Vista. I tried this on all the SATA settings, and it failed. On the first try it thought it might have succeeded and invited me to restart Windows, but it still blue-screened. On subsequent attempts the wizard made some lengthy disk-checking efforts only to inform me that I had a corrupt volume and should give up.

I’m not impressed with Startup Repair. I think XP’s Repair Install is brilliant, and Vista’s Startup Repair is brain dead. I’ll explain shortly.

You can do a sort-of repair install with Vista by “upgrading” an existing install – but you can only start an upgrade from within the instance of Windows that you want to upgrade. In other words, if you can’t boot then this is not an option. Do NOT do an over-the-top clean install. You will lose all your settings.

At this point I nearly gave up and did a clean install of Vista. I still had the nagging thought that if only I could get Vista to load the right storage controller driver, it would probably start up. So I left it for the moment and went back to 32-bit XP, my success story. I wanted to discover if I could switch to the SATA RAID option without breaking it.

Switching an installed Windows OS to AHCI or RAID

This thought led me to an illuminating discussion. This explains that if you want to switch Windows to use a different storage controller, for which the driver is not installed, you do so by manually copying the driver to system32\drivers; and editing the registry so that Windows can use the new driver when booting. For this to work, you need to know the hardware ID of your controller. This is something like:

PCI\VEN_8086&DEV_2822&CC_0104

One way to find this ID is to clean install a second copy of Windows to a temporary location, and then look at the storage controller properties in device manager. Alternatively you can experiment with some likely values, or try several at once. The discussion I’ve linked provides some reg files which show the critical entries.

This looked interesting, so I followed the steps in the first post of the thread, shut down, then restarted with the BIOS setting changed to AHCI. Success – XP Pro started, and I was able to run Intel’s driver setup to clean up the installation.

Getting more confident now, I found the hardware ID for the RAID controller (the hardware ID changes when you change the BIOS setting) and added that to the registry. The actual driver is the same. Success again – XP now started using the Intel Matrix Storage RAID.

XP was done now, especially as I also discovered the fix for x64 described above. But Vista, the one that mattered to me most, was still broken. Nevertheless, I now had a much better idea of how to fix it.

Offline registry editing

Now is the moment to mention a little-known feature of the Windows registry editor. 99% of the time, you edit the Windows registry from within a running instance of Windows. However, the registry editor has an entry in the File menu called Load Hive. The way this works is not particularly intuitive. You select the root of HKEY_LOCAL_MACHINE, then choose Load Hive and navigate to a registry database file that is not part of the active registry. In my case, the hive I needed to load was SYSTEM, located in System32\Config. You may possibly know this if you have ever had to recover Windows when it will not boot because of registry corruption. When you click OK to load the hive, the registry editor prompts you for a key name. Enter something like “Vista Repair”. The loaded hive then appears as a sub-folder under HKEY_LOCAL_MACHINE.

There is no Save; simply make the edits you want, then select the top level of the loaded hive – eg. “Vista Repair” – and choose File – Unload Hive.

This had to be worth a try. I booted my poorly machine into Windows XP, then went to another machine on the network running Vista. I copied the SYSTEM hive from the broken Vista across the network, made a backup, then loaded it into registry editor. Finally, I manually made the changes pretty much as in the reg file used to migrate XP to a new storage controller, though what I actually did was to pattern the changes on an existing storage controller entry in the working Vista registry. Note that an offline registry has no “Current Control Set” hive. This is actually a runtime link to ControlSet01. So, for offline editing, you edit ControlSet01.

I also made the normal registry fix for enabling AHCI on Vista. Then I unloaded the hive and copied it back to my broken Vista. I also added the actual driver to system32\drivers, of course. In my case the driver is called iastor.sys, from Intel’s floppy disk.

Vista boots

The result was amazing. I restarted the PC with the new motherboard, and instead of a blue screen I got:

Press CTRL+ALT+DELETE to log on

Nothing much to add now. I logged  on, installed various drivers, and everything works. I have a quad core CPU:

and an Intel RAID storage controller:

Vista itself seems fine. It is solid and significantly faster than before, as you would expect.

Thoughts on Vista Startup Repair

Despite my success, I’m not impressed with the Vista Startup Repair. First, why couldn’t Microsoft’s wizard do what I did manually? Second, why has the excellent Repair Install option disappeared from Vista? Vista’s repair and restore options seem to presume that the hardware has not changed; yet I’d have thought a replaced motherboard would be one of the more common scenarios where you would want to repair a Vista installation.

The whole business of changed hardware is something of a dark secret in Windows backup and restore. In an enterprise environment it is not so bad, because you have redundancy, and a single failed machine (server or workstation) should not be a problem. Something like Small Business Server is different, because typically this is a single, business-critical machine. If your 2-year old Small Business Server box disappears in the night, and you purchase a new box and stuff in your backup tapes, it will not necessarily be easy to restore.

Still, I must also credit Windows with considerable resilience once it can find a working storage controller driver. It pretty much sorts itself out after that.

Coming next: a clean install of 64-bit Vista. It makes sense.

PostScript:

Anyone interested in this esoteric topic is also advised to read this article on ArsTechnica and this related thread. Note the advice on removing non-present devices from device manager. There’s also this Microsoft article (non-Vista) which is a variant on the Repair Install. Let me also note the main area of uncertainty regarding repair installs: it may not be safe with regard to recovering a fully patched system. In principle you can re-apply service packs or hotfixes, but what if Windows Update thinks a hotfix has already been applied when in fact it has been undone? It’s a good question and I’m not sure at the moment what the answer is.

The Microsoft article above also makes an interesting point about OEM licenses. If you replace the motherboard with something other than the same model, it is considered a new computer and OEM licenses cannot be transferred.

My Mac day: Jobs of the print variety

While Steve Jobs was extolling the merits of thin laptops (I prefer small to thin, but tastes differ), I was in the depths of /var/log fixing a print issue with a friend’s Mac Mini and her LexMark printer.

It was almost the same issue as described here by Ted Landau, though I got there a bit quicker thanks in part to his post. Symptom: you hit print, but get a printer stopped message. You can restart the print job but it immediately stops again.

It wasn’t obvious what was wrong, especially as the printer passed all its self-tests including printing its test page. There were no clues in the OS X GUI. The USB cable was OK.

I was helped by familiarity with other Unix-like operating systems. The first thing to look for is an error log, and in this case there was one sensibly located at /var/log/cups. It told me that a cartridge change had been detected and the new cartridge was not yet aligned, a condition that the driver treated as a fatal error. At this point the user confessed that the black cartridge was new, and that the printer had not worked since. However, she had run the alignment utility, several times in fact. Getting warm.

In Landau’s case, there was old ink in the cartridge bay preventing a good connection. In my case, the cartridge itself was faulty; a replacement worked fine. The deceptive aspect is that the cartridge had ink and could print; it just could not register its alignment for some reason.

Landau has a little rant about this:

Neither Lexmark’s nor Apple’s software were able to get the relevant error message to pop up anywhere where a user would be likely to see it. Having no message at all in the Printer Queue and having the key message buried in a cups log file is not the ideal situation.

His underlying point is correct. The cuddly GUI hides huge complexity. Windows is the same of course.

The point I will make is that both operating systems do a poor job of surfacing error logs. In Windows most logs are accessible through the Event Viewer GUI, but only advanced users find this. When a hard drive fails, you sometimes find that the event log (presuming you recover it sufficiently to read it) has been reporting bad blocks for ages, but the user was unaware.

In this case I suspect the real issue is Lexmark’s poor driver, which could have reported this problem in a sane manner.

How did we fix computers pre-Google?

Technorati tags: , , , ,

Becta’s report on Vista and Office 2007: wise advice, or mere polemic?

I read Becta’s report on Vista and Office. Becta is a UK government agency supporting IT in education. The report is a ponderous affair and tells us that XP still works, so why bother with Vista; and that Office 2007 saves by default in a tiresome new format that few other applications can open; and that free office suites like Open Office work well so why pay for something else?

All this is fair enough; but I’m surprised that Becta didn’t spot a couple of other things. One is that Office 2007 can easily be set to save by default in the old Office binary formats that pretty much everything can read. The other is that while ODF is indeed an ISO standard, it is also pretty awkward from a compatibility point of view.* So I’m surprised by this recommendation:

When specifying new systems, schools and colleges should normally insist on the desktop having access to office productivity software that is capable of opening, editing and saving documents in the international standard ODF, and setting it as the default file format.

I suppose the idea is that if kids come home with their homework on a USB key and find that their documents will not open on the home PC running Microsoft Office, that they just download and install Open Office. Fair enough I suppose; but why not just use .doc and .xls?

The report adds:

Becta did not conduct technical assessments of the merits of either the existing international document standard (ODF) or the proposed second international document standard (OOXML).

There is however a lengthy discussion of the inadequacies of the half-baked ODF converter add-in which Microsoft has sponsored. I agree; but I’m not sure why it merits so much space.

I would have found it interesting to see a bit more examination of the merits or otherwise of the ribbon UI in Office 2007; better, worse, or indifferent for education? What about overall usability and functionality versus Open Office? It would also have been good if Becta had considered the large market share Microsoft Office enjoys, especially in business. Like it or not, it is relevant to this discussion.

I didn’t see much attention given to security, which is perhaps the biggest single reason for adopting Vista versus XP (it could also be a reason not to use Windows at all). This is not only a matter of Vista being more secure, if it is, but also that it aims to fix the insecurity of Windows long-term by fostering well-behaved applications that will enable future versions of Windows to be more tightly locked-down. Not interesting in education? I’m surprised, since when I talk to IT people in education, security is one of their chief concerns.

I find myself wondering whether this is really a document aiming to offer wise and objective guidance to schools, or a more polemical report promoting ODF and open source in education.

I reckon there is a good case for promoting open source in education. However, considered as a report on Vista and Office 2007 this is a poor effort.

*PS: It is interesting to see what Asus has done with its Eee PC, which  actually gets an oblique mention in Becta’s report:

We have also noted the emergence of low-cost innovative ‘mini-notebooks’ that have been brought to the market running a version of Linux and a range of Linux-based applications including OpenOffice.org.

On my review Eee, which was supplied by RM for the education market, Open Office is set to save in the Microsoft formats by default. I imagine that Asus wanted to make the Eee fit seamlessly into a Microsoft environment if necessary. It must have been a conscious decision, since an untweaked Open Office install uses the Open Document formats by default.

Technorati tags: , , , , ,

8GB Asus Eee PC from April 2008, Windows or Linux

RM has announced an upgraded version of its popular miniBook, also known as the Asus Eee PC. The details:

  • 1GB RAM (up from 512MB in the current version)
  • 8GB solid state drive (up from 4GB)
  • Same 7″ screen, webcam and built-in mic, speakers
  • Prices “in the region of” £229 + VAT for Linux, £259 + VAT for Windows XP Home
  • Available from April 2008

I would assume that the same machine will also be available from other vendors, with small price variations.

The Eee is already a great machine and having more space is nice, though it’s a shame that the biggest weakness of the Eee is not yet being addressed: the limited 480 pixels vertical resolution of the screen. This makes some applications and web sites hard to use, since few are designed for this size of screen. In some cases dialogs appear with no buttons; in other cases there is little working area left because of the space taken up by toolbars or header and footer panels.

Why Windows? RM says:

The introduction of the Windows based miniBook means that schools that already have curriculum software which is Windows based can add this to the miniBook. Also, schools with Microsoft Volume License agreements have a route to upgrade to XP Pro and enable network connection using Windows.

I can see that there is demand for this. On the other hand, Windows needs some tweaking in order to work at its best on the Eee. One of the issues is that frequent writes to the solid state drive are reckoned to reduce its life, so it makes sense to configure Windows without a swap file as well as cutting out unnecessary components.

Will the Windows Eee, which costs £30.00 more (plus VAT), come with an equally generous suite of bundled open-source applications, such as Open Office, as found on the Linux version? It will be interesting to see, though I doubt it.

It will be fascinating to see how take-up of the Linux and Windows versions compares, both in the education market, and more widely. I’d suggest that Linux is better suited to the device, but Windows has familiarity, compatibility, and arguably ease of use advantages. It will be a shame if Windows ends up dominating on the Eee, as it has given a boost to the visibility and adoption of Linux on the desktop.

SharePoint’s secret sauce

Just before Christmas I spoke to Daz Wilkin, Microsoft Developer Platform Evangelist, about Office development and Sharepoint. I’ve wanted to catch up on Sharepoint for some time, since it is achieving significant usage. Here’s a recent study which claims that:

the number of SharePoint applications in place today will quadruple over the next 12 months

Wilkin says that:

SharePoint is approaching becoming a billion dollar business for Microsoft. It’s vastly exceeded all of our estimates.

I suspect that journalists, myself included, have given Sharepoint insufficient attention. One reason is that it is a slippery product to describe and seems to straddle several categories, such as portal server, smart file store, and workflow platform. “I don’t think Microsoft has done a bang-up job in being able to articulate it. It is many things to many people,” says Wilkin.

Another problem is the confusion over SharePoint Portal Server (paid for) and SharePoint Services (free add-on for Windows server). You can find a point-by-point comparison here. The free SharePoint Services, on which Portal Server is built, are surprisingly rich. Once you have them installed, which can be a little painful, you get instant wikis and blogs, shared documents with versioning, permissions, and the ability to open and save directly from Office applications, shared calendars and tasks, and online forums. Here’s the settings panel for a shared document store:

Site options including content approval,versioning,permissions and check out 

It’s a shame that document versioning is off by default, but there is plenty of value in these features. Note we are mainly talking intranet rather than internet, though hosting SharePoint is a growing industry and it is also core to Microsoft’s own hosted service efforts.

Why is installation painful? Well, you need Windows Server, and if you want to use ASP.NET for something other than SharePoint on the same box, it needs a bit of tweaking. For example, if you run Exchange and install SharePoint Services, it breaks Outlook Web Access. On my server I got round this by adding a second host name in local DNS, pointing to the same machine, and using this for the SharePoint site using IIS host headers. Real-world businesses either install SharePoint on a separate server, or have Small Business Server which builds it in, so this is mainly an issue for journalists and the like. Perhaps this is a small factor in why SharePoint gets less coverage than it should; it is not something we can just pick up and use like Office itself.

So why is SharePoint taking off? According to Wilkin, it is about “group productivity”. He talks about how SharePoint deals with the classic document review process. Emailing documents around a company and getting numerous edited versions back is a hassle. Apparently Microsoft itself is now using SharePoint more intensively, and users just check-out a document, make changes, and check it back in. He adds,

…If you then combine that with the ease with which you can check that document into a workflow, and then have it automatically routed around the organization, and then very naturally combine that with data going in and out of backend systems whatever they are, that to me is the magic. Customers tend to get the value more quickly than some of the ISVs.

Visual Studio 2008 has support for SharePoint projects and this is something I plan to write about soon. If anyone has been doing SharePoint and/or Workflow Foundation development, I’d be interested to know how you found it.

Why I haven’t seen the best of Bill Gates

I’ve been covering Microsoft for enough years to have seen and heard Bill Gates on numerous occasions. But I’ve not done so for enough years to have seen the best of him. I gather from other journalist friends that until maybe the early nineties, Gates was excellent value for the IT press, showing his technical side and chatting in-depth about some of the details of his products. Note this comment from Joel Spolsky:

Bill Gates was amazingly technical. He understood Variants, and COM objects, and IDispatch and why Automation is different than vtables and why this might lead to dual interfaces. He worried about date functions. He didn’t meddle in software if he trusted the people who were working on it, but you couldn’t bullshit him for a minute because he was a programmer. A real, actual, programmer.

Sadly I was a little too late to see this side of Gates. Microsoft grew too big; Microsoft execs grew too distant. In the keynotes I’ve heard, he talks about the company vision and the state of computing and leaves the technical details to others to explain. He occasionally takes questions, to which he typically gives long, circuitous answers, a favourite technique used by senior execs with, I suspect, the goal of reducing the number of questions that can be asked and answered in the time available. Nonetheless I respect him for steering the company through its path from the early days of DOS through to having its products installed on nearly every desktop and in nearly every home.

What prompts this post? billg is retiring in July and confirmed this at CES:

It’s the middle of this year, in July, that I’ll move from being a full-time employee at Microsoft to working full-time at the foundation.

This isn’t news; it’s in line with a previous announcement in June 2006; even the date, July 2008, was announced then.

Technorati tags: , ,

2007: the most commented posts, and a bit of blog introspection

Here are the posts that received the most comments on ITWriting.com this year:

Vista display driver takes a break (220 comments)

Outlook 2007 is slow, RSS broken (173 comments)

Annoying Word 2007 problem- can’t select text (101 comments)

Why Outlook 2007 is slow- Microsoft’s official answer (95 comments)

Adobe CS3 won’t install (35 comments)

Delphi for PHP first impressions (33 comments)

Irony: Outlook Web Access more usable than Outlook (29 comments)

Audio in Vista- more hell than heaven (25 comments)

How to speed up Vista- disable the slow slow search (24 comments)

Adobe AIR- 10 reasons to love it, 10 reasons to hate it (24 comments)

Ubuntu Desktop not used in business (21 comments)

Miguel de Icaza on ODF vs OOXML (19 comments)

Visual Studio 6 on Vista (16 comments)

Microsoft Silverlight vs Adobe Flex (16 comments)

Vista vs XP performance- some informal tests (14 comments)

Slow Outlook 2007- the comments keep coming (14 comments)

This is mostly down to Google, everyone’s favourite source of tech support. The most commented posts are about problems with Windows and Office, and reflect the number of people searching for a solution who land up on this blog. Only a tiny proportion of readers actually post a comment, so the top few posts above are evidence of a large amount of frustration.

I highly value the comments, especially when they form a reply or clarification from the organization which is the subject of the post – like this one from Zoho.

A few more stats

FireFox usage has increased from 14% in 2006 to 20% in 2007.

The biggest source of incoming links is programming.reddit.com.

The five top search keywords are: 2007, Outlook, Vista, Slow and .NET.

A bit of introspection

I enjoy doing this blog and web site, though there are a couple of frustrations. One is that I have more material than I get time to write up. Another is that while the ads on the site pay for the hosting, they don’t do much more than that, and I would like to find a way to make web self-publishing viable.

I also muse over whether the range of subjects here is too broad. I post in three broad categories:

  • Software development
  • Problem solving
  • Anything that interests me in the tech world

Most of the subscribers to the blog probably want what is in the first category, especially as it is in this area that I can supply the most original content, sourced from interviews or conferences. The problem solving posts find a different readership via Google. My good intentions to narrow the focus more towards programming fall away when I have some other topic I want to write about, though I do keep it strictly to tech-related topics.

Update: fixed the list (missed a few)

Performance testing Vista: misleading reporting of inadequate tests.

Is Vista really half the speed of XP? That is what CNET reports here, in an article which does not bother to link to the source of the tests, as far as I can see.

The tests seem to be based mainly on scripting Office through OLE automation. This is certainly interesting, but it would be more helpful to have a performance breakdown, looking at various aspects of OS performance. Otherwise, how do we know whether this is more to do with, say, OLE performance than Vista performance?

Second, Vista has richer graphics than XP. Think of it like a game which offers difference graphics options to suit your hardware. Typically, you can set varying levels of background detail, shadow effects, etc, in order to find the right compromise between appearance and performance. Vista sets this higher than XP by default, so you would expect screen operations to be slower.

Third, Vista’s UAC security imposes a significant performance overhead. Again you would expect that, since it applies additional checks to numerous operations.

You could conduct a more useful test by configuring Vista to work as much as possible like XP. Turn off UAC, turn off Aero, turn off the indexer, turn off visual effects. I would also suggest checking what is running in the background and matching it as closely as possible on the two machines. I would be surprised if the performance difference is so striking after doing these things.

Perhaps you will argue that this is not the real-world experience. In practice, users take the machine as supplied and start using it; they do not open Control Panel and look at Performance Information and Tools, or get rid of all that third-party foistware. It’s a fair point, though on a corporate network admins can set these things on the user’s behalf.

When it comes to real-world performance, I also have gripes about Vista. However, I have little problem with Vista’s overall performance, say when working in Office, aside from Outlook 2007 which is a disgrace. What bugs me is unexpected delays. For example, I click the Start button, then All Programs, then scroll down to a program group and click. Vista just stops. I tried it just now, and it took 12 seconds to open the group I chose. I’ve had to train myself not to keep clicking. What’s going on there?

There are real issues here, but not helped by misleading reporting of inadequate tests.

How Akamai Download Manager hides your downloads (VS 2008 downloaders take note)

Yesterday I downloaded the hot new release in the Microsoft development community: Visual Studio 2008.

At least I thought I did. I used the MSDN “Top Downloads” feature, which promises:

… a more direct way to initiate a download of a limited set of selected products

The service uses a plug-in called the Akamai Download Manager. This guy is annoying, especially if you use Windows Vista. First, it doesn’t seem to work at all. Then you realize that you have to disable the IE pop-up blocker. Next, you try to select a download location but it will not let you. It respects some setting in IE that restricts downloads to “safe” locations. You had better have lots of space in your user directory, otherwise this is not going to work.

Fortunately, I do have lots of space, so even the 6GB or so I was downloading should have been OK. I gave in and let it choose the location it wanted. The next thing you see is curious – see here for a screenshot. A message appears telling you the file has been saved (note past tense, though the download is just starting) to the Temporary Internet Files folder, and invites you to open it. I knew the file could not be downloaded yet, but opened it anyway. You get an Explorer window onto a weird location that claims to be in the Windows folder (it isn’t) and shows a single folder labeled C. If you are like me, you shrug, and close it. Don’t do that.

Why not? Well, after several hours or perhaps overnight, the download completes and you look for your files. Where are they?

I looked in Documents, the supposed location. Not there.

I looked in IE’s Temporary Internet Files folder. Not there.

I looked in my Virtual Store, a feature of Vista that supports legacy software which tries to write to locations like the Windows folder. Not there.

I performed a search of my entire User folder, set to show hidden files and folders. Not there.

Before giving up, I opened an administrative command prompt, navigated to the root folder, and typed:

dir *.iso /s

Ah! There they are, in (wait for it):

C:\Users\Username\AppData\Local\Microsoft\Windows\Temporary Internet Files\Virtualized\C\Users\Username\Documents

where “Username” is the current user.

Why didn’t the Explorer search find it? The problem is, you have to have the option:

Hide protected operating system files (Recommended)

set to unchecked in folder options, passing the dire warning that tells you not to do it.

Why do I normally have this checked? The dire warning doesn’t bother me, but I do mind that having this unchecked shows files like desktop.ini on the Vista desktop. Ugly. So I normally have this checked.

Hey, wouldn’t it be good if Microsoft had a single checkbox in its “Advanced” search: to just search everywhere?

What is this nonsense?

So I found the downloads. But honestly, what is this nonsense? The truth is, Akamai Download Manager is not really Vista-compatible; why is Microsoft using it on its premier developer site, for its premier developer product? Ironically, this is the community most likely to be running Microsoft’s latest and [possibly] greatest.

Further, what it is the message here? That Vista adoption is so modest that Akamai can’t be bothered to fix its utility? Or that Microsoft’s own in-house developers can’t build a decent download manager? Or offer to fix the Akamai one?

Excuse my temper. It is no fun to complete a long download and then lose the files.

Update: I also sent a comment and query to the email address given for feedback. It was msdnreply(at)eu.subservices.com. Guess what? Bounced with “User unknown”.