About The Colour

I’ll freely admit that I’ve never been particularly gifted at website design (though I’m an excellent critic), and since changing the background colour from a subtle pink to a raging gold, well, there have been… complaints. Well, one complainant, anyway, but he complains a lot.

If you have a suggestion for a better background colour (I’m tired of the pink, but like the gold, but if it doesn’t work… what does?), I’m 48% ears.

Update: On second thought, I refuse to pander to the vocal minority (though Jeff’s Ninja Power Black was a good suggestion, it didn’t fit).

If you’re one of those folk that are never happy and would like to play dress-up with my site, I added a <link> that allows you to add a file to the root of C drive on your computer called “Iamneverhappy.css”, in which you should be able to override any of my dubious design decisions, while acting as a prominent signpost for any other computer users. For example:

   body{ background-color: black;}

If you’re looking for inspiration, try Dulux (or perhaps a mild hallucinogen).

Some ISA 2004 Custom Protocol Definitions at Arkane Systems

I just spotted the Arkane Systems blog, where they have been posting some of the protocol definitions they find useful for ISA 2004 – a VMRC (Virtual Machine Remote Control, used by Virtual Server) definition was just added.

One of the cool things about ISA 2004 is the granularity with which you can export (and share) definitions of ISA policy elements; you can automate the import of most (if not all) exported items too, if you’re script-capable.

Games Moving to Online Distribution?

Change is in the wind.

As far as I know, when Valve released Half-Life 2 via Steam, they became the first developer/publisher to offer a top-tier AAA title using online distribution, right from the release date.

Hopefully, this will become the first of many. It doesn’t look like there’s a tidal wave of titles just waiting to be distributed online right now, but I’m hopeful. The toe is well and truly in the water – at the moment, the online purchase-and-distribution outfits seem to be ending up with what I’d call the “rental market” games – games that are approaching the end of their shelf life, those that the developer or publisher has essentially nothing to lose by distributing online.

I don’t know if the market is big enough to be called “fragmented” at the moment, but it currently breaks down to Valve’s Steam and Everything Else. Of Everything Else, the most visible provider of recognizable commercial titles seems to be Gamespy/IGN’s Direct2Drive.

I was thinking about this because I was wondering why World of Warcraft isn’t available online. If ever there was a candidate for online distribution, you’d think it’d be an MMORPG – there’s no way you can play without having an account. Let the world copy the base CD image again, and again, and again, but charge them the “setup fee” when they first sign up to play. Everyone pays, everyone wins.

With traditional (eg, non-multiplayer games with no central authentication server) titles, the games end up wrapped in lockboxes, waiting to be unlocked by an activation code. The same thing applies here (really simplified) – if someone copies a game, it’s not usable without the appropriate unlock code. I don’t know how this compares to the utterly annoying CD-ROM-in-the-drive requirement that most games use for copy protection, but if it means I don’t have to constantly keep the discs for the games I’m using near the computer, I’m all for it.

The market may not be ready for buy-online-only games (heck, it might be – are you?), but when it is, what do you think will happen? Will we see Indie co-ops offering games from their own co-operative online store? Publishers transitioning from traditional publishing to online distribution, or farming the work out to third parties? Price drops across the board from reduced manufacturing and distribution costs? Ancient and rare titles offered for download once again, just in case someone wants to buy Fallout, Sam’n’Max, Descent II, EF2000, Edge of Chaos, or Wing Commander 3/4 (again in many cases, due to lost CDs)?

A plea to the publishers – c’mon people! My credit card is ready. I don’t want to have to drive to the shops to buy stuff. Please give me what I want, online (and what I want is everything)!

Apple Cinema Display Saga: I Upgraded And Text Mode Now Works

Since August, I’ve had to use a second monitor to view full-screen Text-mode (like the BIOS and DOS apps, or Text-mode setup for that matter).

This year, I was once again faced with the problem of my favourite online retailers closing over the Christmas break, which only increased the desire to upgrade. As soon as it wasn’t an option, it was an irresistable option. This happens – I kid you not – every year.

Long story shorter, I’m now the proud owner of an Athlon 64 3500+, an Asus A8N-SLI (non-deluxe) motherboard, and a PCI Express Gigabyte NX66T128VP Geforce 6600 GT (hopefully to be joined by a sibling for some hot SLI action… soonish…), and am immensely happy to report that the BIOS, full-screen CMD prompt and boot screens are now all visible. So for those of you that had the same problem way back then, I found that this combo works fine (your mileage may vary).

Now I just have to wait for the RTM of XP x64. Plenty of time for testing Doom 3. And Far Cry. And Joint Ops. And Riddick. Mmm. Graphicky.

My MSN does RSS

Looks like it’s here now – Mike mentioned this was coming last week.

I’m still checking it out, but it looks pretty cool so far.

MSN’s instructions for adding the clicky things (“Buttons, Tristank, they’re called buttons”) and on syndication with RSS for web site publishers is here.

[Update] The sample image button code on the site is an image itself at the moment, making copy-and-paste a little tricky. My hacked-up version is here (don’t forget to copy the mymsn.gif image to the same directory as your website).

<a href=”http://my.msn.com/addtomymsn.armx?id=rss&ut=http://www.example.com/rssfeed/rss.aspx&ru=http://www.example.com/yourreturnurl/”>

<img width=”71″ height=”14″ border=”0″ src=”mymsn.gif” alt=”Add to My MSN” title=”Add to My MSN” /></a>

[Update 2] More from Mike.

It’s ISA Webcast Week

I barely need to mention this, but in case you missed it, ISA Webcast Week has started.

I’m in the category “timezone challenged” (Australian Eastern), so I’ll probably wait for the on-demand versions, but if you’re up and vaguely coherent at the times they’re playing, why not watch one or two?

Disassembling my Notebook Optical Mouse

Unhelpful Preamble

I converted to the Notebook Optical Mouse as a desktop mouse about eighteen months ago, and haven’t looked back. I find that using a heavier mouse is now actively challenging for me – I find the larger type sluggish and unresponsive.

The added battery weight of the Notebook Wireless Optical is enough to put me off – that’s how light this little sucker is. As a result, I own five of them. One for home, two for work, two for the laptop (and just as well, as my girlfriend’s mum’s bird – a cockatiel –¬†gradually chewed through the USB cable while on holiday a year ago, while warming itself near the laptop fan). I’m a big fan. I recommend them heartily.


Fixing the Scroll

The scroll wheel on the home mouse has been getting a bit non-scrolly recently – you can scroll down all you want, but sometimes scrolling up just stuck, and it would take a couple of attempts.

After coming up blank with searches like “disassemble notebook optical mouse” and “open notebook optical mouse” and “break open mouse,” etc, I resigned myself to buying another one. Then pulled out the tool kit. (Hey, there’s no risk; I’m buying another one anyway, right?)

Cutting a short story long, remembering there are no user serviceable parts, if you do decide to void your warranty (*I guess; didn’t bother looking) by opening one, here’s how to avoid my mildly-finish-damaging initial mistakes in opening it:

  • There’s a screw.

Once you understand that, everything else becomes easy! (A lot easier than breaking the glued-on red side panels off with a screwdriver, while looking for any magic unlock clips. Hmm.)

The screw is under the large black skid pad at the bottom of the mouse.

The last place I looked – I did actually check the front feet, and the hologram logo as they looked like the most likely screw-hiders. But peel the black thing off with something sharp (mine re-stuck with no problem), and once the screw is removed, you can lift the top from the Microsoft logo bit – there are a couple of clip/hinge/catch things, one each side of the mouse cable. Once the screw is gone, it’s easy.

ISA 2004 vs HTTP Compression

Been a while since a dedicated ISA post, so Happy New Year to my ISA-focused readers!

I spotted this post in my ISA Server watch list, from the new Port 80 Software blog.

As they mentioned, we’ve published the mother of all KB articles on how the HTTP Filter in ISA 2004 behaves with compressed (Gzip encoded) content:

The really, really short version is that for Web Publishing rules, the IFPCWebPublishingProperties::SendAcceptEncodingHeader property can be used to toggle compressed content on, but ISA won’t be able to inspect the contents of compressed traffic thereafter – only the headers. So, you get compression at the cost of inspection (and caching of the compressed content, for the same sort of reason).

The OWA publishing wizard enables SendAcceptEncodingHeader automatically for OWA rules, but if you set your own “faux OWA” rule up with the Web Publishing Wizard, the property isn’t set.

My initial reaction to anything with a :: (blup blup) in it is “oh no! I have to re-learn C++!”, but there’s no cause for alarm – ISA is easily scripted- just grab the SDK, and take a look through the samples. If you want to throw your own script together to toggle this property, I’ve posted an example below. Of course, the truly devious will just create an OWA rule, then re-purpose it to their own needs :). As always, unsupported, and there’s more than one way to skin a cat, mileage may vary, etc.

The code is here:

””’ SAEHeader.vbs

””’ This script is a SAMPLE ONLY and is provided as is, without warranty

””’ The user variable is at the bottom of the script, called “rulename”


Function ToggleClientAcceptHeaders(targetrulename)


    Dim root

    Set root = CreateObject(“FPC.Root”)


    Dim firewall    ‘ An FPCArray object

    Dim policyrules ‘ An FPCPolicyRules collection


    Set firewall = root.GetContainingArray

    Set policyrules = firewall.ArrayPolicy.PolicyRules


      for each rule in policyrules


            if rule.Name = targetrulename  then


                  wscript.echo ” Found target rule: ” + rule.Name


                  if rule.WebPublishingProperties.SendAcceptEncodingHeader = false then


                        wscript.echo “   SendAcceptEncodingHeader WAS DISABLED, now ENABLING.”

                        rule.WebPublishingProperties.SendAcceptEncodingHeader = true


                  elseif rule.WebPublishingProperties.SendAcceptEncodingHeader = true then


                        wscript.echo “   SendAcceptEncodingHeader WAS ENABLED, now DISABLING.”

                        rule.WebPublishingProperties.SendAcceptEncodingHeader = false


                  end if


                  wscript.echo “Saving Rule…”



            end if




      wscript.echo “Done.”


End Function



””’ Program starts here



dim rulename

rulename = “Test Headers Rule” ‘ Should be unique


ToggleClientAcceptHeaders(rulename) ‘ set the option for all rules with this name

This gets hit in some scenarios from time to time – I hit this with an OWA deployment where the OWA wizard hadn’t been used to configure the publishing rules.  The effect in that case was to disable ZIP files being downloaded through the ISA Server, as they were sniffed to be Zip encoded, and disallowed (the Firewall Logs showed something about the HTTP filter dropping the traffic).