Wednesday, 25 November 2009

What's with the weird blog title? Are you mad, or something?

No, not remotely. At least, that's what the crows tell me.

I've no idea what came over me, when I was hunting around for a title. All the ones I really wanted had gone long since, so it was time to find something more quirky. Anyway, I had a chat with the crows, and they suggested...well, you get the picture.

So, "Just this side of sane."

But which side is this side?

HP printers, XP, a laptop, and 100% CPU!

Let's talk about the symptoms first. You're using your PC (in my case, always a laptop), running Windows XP, and the CPU fan speeds up...and up...and up...and stays like that, screaming at top speed.

Usually, you expect that the fan will run down again when the processor's finished an unusually tough job, like some poxy website's unnecessary Flash animation. But no. Not this time.

When you come to hit CTRL-ALT-DEL to run the Task Mangler, sorry--Manager, you find that SVCHOST.EXE is maxing out one CPU.

Sound familiar?

I'm betting you're set up to use an HP printer, and that printer has a network port (whether or not you use it). Right? Thought so. Read on.

The cause is actually HP's network printer drivers, in particular a service called "HP Network Device Support".

If you want to know the in-depth technical reasons for the problem, "zairon", in an excellent blog post drills down to the individual lines of assembler code containing the bug. It's a salutory lesson in how to look foolish in front of your customers.

The solution is delightfully simple.

First, hold down the Windows key on your keyboard, using it like a SHIFT key, and press the R key, then let go of both. You should get a "Run" dialog popping up. (If you don't have a Windows key, click on Start, then the "Run..." entry at the bottom-right of the pop-up.)

Type "services.msc" into the box, and hit ENTER. You should now get the Services application popping up.

Now scroll down the list until you find an entry named "HP Network Devices Support". Double-click on the name, and it should bring up a dialog describing that service.

Before you do anything else, hit the Stop button in that dialog. Aaaaand...relax.

Now find the "Startup type" drop-down list.

What you do now depends on how you connect to the printer. Either way, hit the "Stop" button now

If you only use it through USB, or if the printer uses a static (unchanging) IP address, rather than being given one dynamically using DHCP, you can select "Disabled". Then hit the "Stop" button in the dialog, and listen to the fan spin down.

If the printer uses a dynamic IP address (DCHP), select "Manual" instead. Then hit the "Stop" button. If the printer changes its IP address, you may have to start the service briefly, so that it can be rediscovered. Or beat up your sysadmin until s/he gives the printer the static IP address it's always longed for and deserved.

I find it astonishing and (vicariously) embarrassing that HP can leave this bug festering in its drivers for several years, despite many, many users reporting it. I know they have--enough of them have blogged enough about it, and their problems getting HP to understand it, that HP has no excuse!

Anyway, if this helps to add a little more momentum behind the movement to get HP to fix the bloody drivers, or saves one other person the same troubles, so much the better.

Technology World 09

What a refreshing change!

A trade show in which just about every person we talked to had relevance to us, where there were no "liggers", refreshments and biscuits were free to both exhibitors and delegates, and there was enough traffic to keep us very busy for the two days of the expo. Even the car parking was free!

Full marks to the UK Trade and Investment people for a superbly-well-organised event. Well done, people!

Pasta dough recipe

[Adapted from a posting to the cam.misc newsgroup]



One whole medium egg, or two yolks, per 100gm flour.
Um, that's it.

Use Tipo '00' (zero-zero) flour for this, just don't bother with anything else! You can often get it from supermarkets, and always (in Cambridge) from the Limoncello deli on Mill Road; probably also the Continental Stores on Cherry Hinton Road., assuming they're still going (I haven't looked for ages).

You'll need a scraper of some kind, something like a flexible food spatula. Get it now, whilst you're still clean! Oh, and wash hands now; this is going to get messy.

Break the eggs into a mixing jug, and mix lightly with a fork until they're reasonably even.

Sift the flour onto a clean work surface, ideally cold marble. Form it into a nice Mount Vesuvius shape. Make a well in the middle of the flour, and drop the eggs into it. Don't let them break out and spill onto the surface!

USING ONE HAND ONLY!, with the tips of your fingers, start to work the rest of the flour into the eggs. Keep the spatula to (your other) hand. You'll be using it for scraping gooey bits from your mixing hand back into the mixture.

Once you've got a solid ball of dough, you can use both hands to knead it. A word of advice: ignore suggestions you might see elsewhere, and don't add extra flour to the board whilst kneading! You'll just dry out the dough. Any stickiness should disappear as you work the dough, and the ball of dough will pick up any bits it sheds.

If the dough gets too dry, and starts to fracture at the edges whilst you're kneading it, you can add a little cold water, literally drop by drop, until it's back to a smooth consistency. Knead it until the dough is silky and elastic, stretching nicely.

Wrap it in clingfilm and put it in the fridge for 20-30 minutes to rest. Longer, if you've time.

When it's rested, give it a little more kneading, to check whether you need to adjust the moisture. It's then ready for use.

Using it with a pasta machine

Don't put the whole dough ball through at once. Cut and roll into smaller balls, and use them one at a time. Apart from making the pressed lengths more manageable, you will often find that you made too much dough anyway once you've run it through the machine a few times, so you can rewrap the remaining dough and put it back in the fridge for another meal.

Set the machine to the widest setting, and keep running the pasta through the machine, one notch tighter each time, until you've got it to the thickness you need. Don't be tempted to skip stages here, as you won't get such good results. It takes as long as it takes!

When you're on the widest settings, don't be worried that your sheet doesn't quite reach the edges at first. It will, a notch or three later.

When you're putting it through the pasta machine, use the minimum possible dusting of extra flour to avoid sticking as the sheet folds, otherwise it will get too dry and fracture. Ideally, feed the sheet onto your work surface without folding too much. Cover with a slightly damp teatowel whenever you're not actually working the sheet, to avoid drying.

Fresh pasta made this way really needs only a few tens of seconds to cook if it's thin; maybe 2 minutes at most if it's thicker. Add a little more time if you've made ravioli and the filling has to be cooked through, of course. Ideally, pre-cook fillngs where possible, so they only have to be warmed through.

Thursday, 12 November 2009

Want to run XP programs in Windows 7? Only got the Home Edition?

[Adapted from a Usenet post]

If you still have an XP (full, not upgrade) copy handy, there's a possible get-out. It's a one-time faff but, after you've done it, you'll be able to do more or less anything you ever could under XP.

Go to, and download VirtualBox. Install and run it.

Now install your XP under VirtualBox as a new "virtual machine". You'll need XP's CD key, of course.

When you've finished installing XP, and you have it running, you have to install VirtualBox's drivers into it. With the XP session still running, select the Devices menu from the outer window, and click on "Install Guest Additions...". Follow the prompts that ensue.

When it's all completed, shut down the XP session as if you were powering off the XP's computer.

In VirtualBox, select the XP session, and click on "Shared Folders". Share your home directory with the XP session. (c:\Documents And Settings\[your user name]\)

Now you have an XP installed and running under Windows 7 that you can use for any non-Win7-compatible software.

Start up the XP session again, install your XP programs into it, and tell the programs to use the files in your (now shared) home directory - and you're away!

The best bit of all - when you have finished with XP for now, just close the XP main window, select "Save the machine state", and next time you start up XP again under VirtualBox, it'll pick up exactly where you were before, as if you'd never left.

Wednesday, 4 November 2009

Apple, Mac OS X, and why they're missing a trick

[Adapted from a comment on an article at The Inquirer.]

Wnat I don't understand about Apple right now is that they don't seem to understand what a cash cow they have in their barn.

If Apple released Mac OS X for general PC devices, they'd at a stroke make massive inroads into Windows.

At the same time, sales of Apple hardware would drop, sure, but not all that much. The current crowd of Mac-heads would remain loyally buying Apple kit, but they'd be joined by a whole new group of both home users and business people desperate to get away from MS's stranglehold. It's even possible, maybe even likely, that a new côterie of Mac OS users would drive an increased demand for Apple kit.

And the best thing of all, from Apple's viewpoint, is that it costs practically nothing to press and ship DVDs. Unlike hardware sales, which need a constant and VERY expensive design, development and production pipeline, OS sales are almost entirely margin, and don't have all the WEEE/green/certification problems that hang off electronics manufacture. Trust me, I've been there. I'm still there!

I just want to see the AAPL share ticker when they finally see the light. There's never been a better time for Apple to liberalise and liberate their OS assets, but they've got to move NOW, whilst Microsoft is still weakened from the Vista débacle.