Archive for the 'Tech' Category

News services overload

Many Australians found out about the death of Steve Irwin today around 2pm local time, about three hours after he died. Word spread quickly around my office after one person found out via a phone call.

Like very many Australians (also in offices, I guess) I jumped on the Net to find out more. After reading a quick report on ABC News Online I looked further. I was amazed that for over half an hour all of these Australian online news services were overloaded:

ABC News Online quickly put up an apology page, followed 20 minutes or so later with a Steve Irwin news page. It had a message stating that their servers were overloaded and that other features of ABC Online would be restored soon. The other services simply didn’t return pages.

It’s quite concerning that when this story broke, not one of the major Australian online news channels could cope with the load. What would happen if some really serious news broke during the day? Something like an Iranian nuclear attack on Israel?

Or wouldn’t as many Australians clamour to find out more as quickly?

New cycling monkey

Last year I created a Greasemonkey script for highlighting results from the Tour de France on cyclingnews.com. I’ve continued to use the script since then for other races. I’ve also updated the team colours and improved how it works.

Recently I added keyboard shortcuts to make it easy to jump between pages:

Key Function
n Go to the page at the link ‘Next Photo’ or ‘Next News.
p Go to the page at the link ‘Previous Photo’ or ‘Previous News.
r Go to the page at the link ‘Related Story’.
h Go to cyclingnews.com home page.
f Go to the named anchor ‘focus’ on the current page. Another part of the script writes this named anchor next to the <img> tag. This is useful to scroll down to a portrait-orientation photo that is partly obscured in the browser window.

Here is the script for your enjoyment. It replaces the old hightlighttdf2005.user.js. Let me know if you have new ideas, better team colours (or other styles) etc.

Geek onion

Fun with layers! I am sitting with my computer at home, connected to a server at work like this:

  1. My computer is a MacBook Pro running OS X.
  2. It is running a virtual machine in Parallels Desktop.
  3. The virtual machine is running Windows XP.
  4. Windows has a VPN client connected to my work.
  5. I am controlling my Windows 2000 PC at work using PC Anywhere.
  6. My PC at work is connected to the server at work using a Microsoft Remote Desktop connection.
  7. The server is a VMWare virtual guest running Windows Server 2003.

That’s three computers, five operating systems (counting VMWare ESX) and a couple of network layers (VPN to the network at work over virtual Ethernet on Parallels connected to WiFi and cable broadband).

Yes, I know that I can remote to the server direct from Windows XP in Parallels (after connecting via the VPN) but that would spoil the fun, wouldn’t it?

No new switch for me yet

Mark Pilgrim’s recent announcement that he is switching away from Mac OS X to Ubuntu Linux after very many years using Apple’s products has caused a few waves. John Gruber reacted back at length and Mark replied spelling out his gripes in more detail. Tim Bray thinks he will switch soon too. With the weight of these eminent thinkers on my head, I thought more about why I switched to Mac 18 months ago and whether I would switch again. (Leaving aside the matter that I have just bought a new MacBook Pro and won’t be changing for a couple of years at least.)

My overriding feeling is that I switched because Windows really annoys me. I had used and programmed Macs and PCs on and off over 15 years and was sick of the whole Windows thing. I still use Windows at work (I have no choice) but wanted a different experience at home. I’m getting into digital photography and felt the Mac would be a better match to my ‘creative side’. I also like the geeky side of Mac: it’s a Unix box under the hood and has a real scripting language built-in.

Perhaps the tipping point for me was about presentation. For example, I care about the way language looks: not only spelling and punctuation, but typography as well. (Evidence: I own a copy of Robert Bringhurst’s The Elements of Typographic Style — a beautiful book.) So I want to be able to type the correct quotes, dashes etc. in any application, not just Word and those with some kind of auto-correction. On a PC, it is a pain: at work I bother to type Alt+0145 and Alt+0146 (with leading zeros, on the numeric keypad) when I want open and close single quotes. (And it’s an extra challenge on a laptop without a numeric keypad.) On a Mac it is much easier (although not always intuitive): Option+] and Option+} (respectively) – a single, combined keystroke, not four. The folks at Apple thought of that in 1984.

I agree with a lot of Mark’s concerns about format lock-in and, luckily, have avoided them. I have stuck with cross-platform, standard apps that I used on Windows: notably Firefox and Thunderbird. I also use OpenOffice for the small amount of office-type stuff I have to do.

Could I give up what I have now and switch to Linux? A quick look at Ubuntu today (running under Parallels Desktop on my MacBook) reveals the best Linux desktop experience I have had so far. Perhaps 70% of the functionality I want is there. (Adobe Lightroom for Linux? Not likely, I fear.)

But not enough to switch yet. (How do you enter a RIGHT SINGLE QUOTATION MARK in Ubuntu?)

XY and EA

The XY Problem has been recognised among Perl Monks and perfectly describes a problem we often encounter in Enterprise Architecture (EA). The XY Problem is succinctly stated as:

Someone has a need to do X and believes Y is the best solution. So they ask about Y instead of asking about X.

In the planning phase of a project, architects work with business people to help them find the best solution for their requirements, in the context of the enterprise in which they work. But many people don’t understand EA yet, so customers often come to us with a solution firmly fixed in their minds: “I want one of those. Help me implement it.”

‘XY Problem’ describes the problem perfectly, but it needs a better name. It isn’t about Cartesian geometry. It isn’t about sex chromosomes and transgender issues. Has anyone seen a better name for it?

A new look

Finally I have done a very small amount to relieve the boring, out-of-the-box look of this blog by replacing the default WordPress theme with a different one.

I am tweaking it a bit: I have changed to feed link from RSS (old hat!) to Atom (new, fancy and valid) and removed a repeated date field.

Some day I might actually have something original…

Hey, we found the Internet!

I’m sorry Cameron had trouble finding Internet cafes in Tasmania. I should have revealed sooner that we found the Internet in Tasmania at the end of last year.

Yes, the Internet! Here’s the documentary proof:

2005-12-19 6776 Internet In Geeveston
It’s in Geeveston, southern Tasmania.

You always wanted to know where the Internet is, didn’t you?

An exercise for the reader?

I get annoyed by tech articles with code examples that contain basic errors. The latest I read is Kurt Cagle’s recent instalment on understanding XForms.

He has two examples of XML documents that are not well-formed: a cardinal sin for a tech article about XML. He and the O’Reilly editors must at least test all XML examples in an XML editor to check well-formedness.

One of the examples also has a namespace prefix misspelt. Then Kurt describes how many people find XML namespaces difficult to read and understand. No wonder!

Correcting errors should not be left as an exercise for the reader.

Primitive digital cinema

The other day I had my first digital in-cinema experience. I saw In Search of Mozart at the Schonell Cinema and, shortly after it started, noticed that it looked different.

There were no scratches or specks that flash by. Next I noticed the fine horizontal lines that were always present in the image. I turned around and saw that the projector was digital. Cool!

Then I started noticing digital artifacts that were occasionally annoying:

  • jagged diagonal lines with high contrast (e.g. the keys of a piano)
  • somewhat flat and ‘washed out’ colours in some scenes
  • ‘halos’ on some high-contrast edges of objects

These are all symptoms of low-quality digital images: no anti-aliasing, poor colour management and crude digital sharpening. Overall these artifacts reminded me of early, inexpensive digital camera images. No doubt we will see improvements in digital cinema images as we have seen them in still photography.

I did enjoy the movie because of the subject matter and because the digital artifacts were not always obvious. My wife did not notice that the movie looked any different to a projected film.

Encoding headaches: the big boys can get it wrong, too

Anyone who has seriously wrangled web content and especially XML will have encountered headaches with encoding. You see junk characters or little rectangles (signifying unknown characters) in your browser instead of the correct ones.

In general, they happen when the rendering component is expecting one encoding but the stream it receives is encoded with another. One common case is when a web page purports to be encoded in UTF-8 (via an HTTP header and/or a meta tag) but actually contains Windows-1252 encoding because its contents were pasted directly in from a Word document (for example).

These kinds of mistakes are to be expected from web amateurs but even pure web companies can make a hash of it. This recent example is from Bloglines:

Encoding error in Bloglines

My exploration yielded the following information.

  • I saw the same problem in Firefox, Camino and Safari.
  • There is no encoding problem with the article itself on oreillynet.com.
  • The Atom feed appears to be encoded properly.
  • The Bloglines frame source shows that this HTML is written using JavaScript and that the JS strings have junk in them.

An extract from the source is here:

Source of encoding error in Bloglines

Is it hard wrangling encoding in JavaScript? Do you need to be careful with string constants in JavaScript? I haven’t used JavaScript with non-ASCII characters so I am not sure.

(Oh yes, the French is wrong, too. The word is égalité, not equalité.)

« Previous PageNext Page »