Yuletide Weblog roundup
We all like bloggy pudding
Stob Ah, Christmas! When pubs fill up with inexperienced drinkers to the disapproval of regular sots, when lunchtime turkey sarnies get a blob of cranberry jam and are relaunched as 'Christmas dinner flavour' for a 40p premium, and when the moneyed middle-classes are not ashamed to be seen shopping at Woolworth's.
Ah, Christmas! What do our great bloggers make of this special time of year? To take the weight off your tinsel-garlanded RSS reader, I have prepared a round up of their latest musings. So bung (or rather "bing"!) a ripped rendering of White Christmas onto the MP3 player, and relax as I bring you the cinnamon-mulled musings of the snowflake-sparking* Interweb.
*Subject to global warming and living in the northern hemisphere.
Open on a girl sitting at a newscaster's desk, looking as much like a British Airways stewardess as is possible without actually being banned from wearing a crucifix outside your shirt.
Joanne (for it is she): Good Thaws-day – brrrrr! - (clutches herself and pretends to shiver) from a chilly New York and welcome to RocketBoom: the only Stateside vlog to pronounce both the t's in 'inner-ned'. (Looks to camera sternly; winsome tilt of head.) First off we have an item about John Parker of Chicago.
Cut to poor quality video of a John Goodman-alike in a garage workshop.
Goodmanalike: Hi Joanne!
Cut back. Joanne: Hi John! (Smiles, waves.) When John's much-loved, long-lived labrador dog Lennie died two months ago, John was in a real state (mimes grief). He was like a man who loses an iPod and finds a Zune (winks roguishly). But then John had an idea to put a new twist on taxidermy (bulges eyes). John converted Lennie into a custom-built PC! (More eye bulging, fake horror)
Cut to video of Lennie, the 2GHz Core2 Duo water-cooled labrador. Shows eye-sockets containing power and hard disk activity LEDs; video, keyboard and mouse sockets inside mouth using jaw as a cable-tidy; DVD drive mounted in rib cage and so on.
Joanne: And we thought it best not to show you where he put the Firewire connection! (Mouth curves downwards in mock disapproval) And now, let me segue (she scoots chair out of shot to left, then jump-cuts back to her usual place) to a Segway story about Alvin the Segwaying duck...
A reader asks: 'Why is the
GetExceptWinResourceStuff() function so difficult to use?'
A picture is worth a thousand words. I cannot be doing with needless bitmap-rendering, and in any case Microsoft has no room on its oh-so-full servers for such flim-flam as GIF files, so I have constructed my illustration using Microsoft Vector Markup Language, a proprietary running-mate to HTML that perhaps has been met with less general enthusiasm than was hoped. Provided you are using Internet Explorer 4.5 (the unreleased Microsoft-internal version), I am sure you will experience no difficulty in viewing it properly.
So take a quick look at theunderlying architecture. My diagram shows how the Windows Stuff Resource Pool Manager, the large gray octagon top left, is controlled by calls into STUFF.DLL (as it was then called), the triangle towards the center of the picture. The small purple stars represent the interaction between applications contending for resource, with the gray arrows delineating the split between the Windows NT architecture and the earlier system. Of course, in post XP systems the situation is changed again; just imagine the red horseshoes as yellow ovals and you will more or less have it.Resource Pool GetExceptWindowsResourceStuff() Release GDI STUFF.DLL §
That much, then, is clear.
Here is the prototype in the MSDN documentation:
Of course, the first thing to say is that you shouldn't be calling
GetExceptWindowsResourceStuff() at all. Really you should be calling
GetExceptWindowsResourceStuffEx(), which takes three more parameters, all pointers to
STRUCTs, and a suitably initialised security descriptor. This extended version is much more flexible, and is mandatory if you really want to be Vista-SP2 ready.
However, let's pretend for the moment you believe you have some justification for doing the wrong thing. How should you go about making the call? Well,
lpResOut of course will point to a
RESOUT structure which will not be allocated on the system heap (let's not chew on that old chestnut again!), and
lpfn is a pointer to YOUR function that does the processing that YOU want to do. This only leaves the
idId, which must be set to the idId value that you want (usually a prime constant in the unreserved Windows message range). I have an amusing anecdote about this from the Windows 1 days, which I shall hold over until next time.
Meanwhile, here is a puzzler for you: what should you do if your user reports an inability to print in Word after running your program? How do I know that this means you aren't checking for an
HRESEXCEPTRES return of 171? Why shouldn't you be doing this? How come it isn't? And how can you fix this without touching a line of code in your program? Why does your Windows code never work? Why am I not surprised?
(Careful now – there may be a deliberate trap in the above questions.)
When I used to work at Microsoft, and was considered influential, a whole lot of people used to read my blog.
Now I don't work for Microsoft any more. And for some reason…
Did the Earth move for you?
Claim: The famous Richter scale for measuring earthquakes is to be phased out in favor of an alternative SI units scale.
Example: [Collected in one of the courser Usenet groups, or perhaps just by cruising Slashdot's comments at level 0]
Origins: There is an ongoing movement throughout the US to replace outdated imperial units with SI equivalents. The imperial units often suffer from unsatisfactory definitions – e.g. the "bushel" is technically defined as "more hops than you can pick in a morning" – and are difficult to combine in calculations.
In the specific case of the Richter scale for measuring the vibration of earthquakes, the imperial unit suffers from being logarithmic scale, which makes it much too hard for anybody taught math after about 1990. Furthermore, it breaks down into confusing non-decimal subunits: there are 12 Rumbles to 1 Richter, 14 Troy Tremors to 1 Rumble, 4 Shivers to 1 Tremor and so on.
The SI unit of vibration is the TOPM, which abbreviates the phrase "Theoretical Orgasms Per Minute" (TOPM). The derivation of the unit is admirably self-explanatory; the main trap being that it is based on a metric orgasm, which is, as everybody knows, about 3.3 inches larger than an imperial one.
These days, the standard is no longer defined by direct measurement, but is instead derived from 1,650,763.73 wavelengths of the light fantastic. However, up until 1960, the TOPM was defined in terms of an actual orgasm kept in a special vacuum jar at the headquarters of the Bureau International des Poids et Mesures in Paris. The jar is still on display to the Bureau's curious visitors; its contents are believed originally to have belonged to Madame de Pompadour.
Barbara "20-a-day" Mikkelson
My sister was sorting through some old papers the other day, and came across a spoof carol that my late father wrote back in about 1978. I think it stands the test of time rather well and, to cheer you all up after those rather un-Christmassy blogs, I would like to present it to you now.
My younger self wrote a rather plodding tune in C major to go with it, originally scrawled in felt tip by my juvenile fist, but now laid out nicely and GIFed below so that you can all gather around the family Stylophone and sing it together.
Perhaps I should clarify a few details for the benefit of those who never enjoyed a British Christmas in the 1970s.
- Terry Wogan was some kind of disc jockey of that era, who could not number Dad among his fans. Mr Wogan should not take this snub too seriously, as I don't believe Dad ever actually heard his show. He just loathed it in theory.
- A Morris 1000 was an unsatisfactory-yet-beguiling kind of grey car, which I remember as being on free issue to all schoolteachers.
- Petrol was still bought by the gallon, and was occasionally rationed by the government, which probably thought that if we were made to queue for it, we would appreciate it more.
- I have no idea what Dad meant by 'bedizened', but I intend to look it up as soon as I have finished writing this. It looks like a classy sort of word.
Here we go.
The Motorway Carol
Bless us Lord on filial travel
Christmas duties to perform
Joining aunties parents siblings
Car o'er laden 'yond the norm
Guide us on the M-Way, numbers one to four
Guide us on the fast lane, let lorries go before
Bless us Lord in fog bedizened
Baby's car sick in the back
Auntie badly needs a weewee
Presents missing from the rack
Chorus: Guide us etc.
Lane one blocked by fatal pile-up
Ice and snow around us pile
Stopper fallen out of Thermos
Pressing on with glacial smile
Chorus: Guide us etc.
Loose the dog and dope the children
Rover's got a homing bent
Terry Wogan on the Blower
Now I know what Dickens meant.
Chorus: Guide us etc.
Petrol gauge is flicking redly
Morris 1000 needs a drink
Stop and queue with 90 others
Get two gallons – clutch on blink
Chorus: Guide us etc.
Meet the parents meet the aunties
Grandpa's hopped it with the cook
Turkey's mouldy – pud is rancid
So pack our bags and sling the hook
Chorus: Guide us etc.
(FX: Brushes aside proud tear.) There, my Daddy did that: the Past Pluperfect Piquantissimo Player of the Game.
Seaz Greetz. ®