Teaching website shambles

The Times Educational Supplement is the UK’s premier newspaper for those working in the world of primary, secondary and further education. They have a thriving online community, with an especially busy forum.

The TES used to be owned by News International, the Murdoch stable, but was sold at the end of last year and has since undergone “restructuring” (i.e. everyone who didn’t walk out was sacked) and so they’re pushed for cash.

They have just rebranded and redesigned and relaunched their website.

Dear God, what a mess. I really hope they didn’t pay very much for it, they need the money.

The new TES logo and some top-level navigation takes up the top 200 pixels (that’s 3 inches on my 19” screen at 1024×768). Incidentally, my wife, who is a teacher, has a laptop whose screen is 7 inches tall – that means almost 50% of any page she visits is instantly wasted.

It gets much, much worse and in fact it’s so painful that I’ll just skim the highlights and allow you to revel in the full horror yourselves

At 1024×768, none of the content of the forums is visible without scrolling because every single forum page has over a thousand pixels’ height worth of navigation (that includes the awful banner).

Despite the fact that there are actually over 50 forums, it’s impossible to tell, without scrolling down the page to tell which one you’re in at any given time (no clues in page title, headings, etc.).

At launch it didn’t work in Firefox or Opera (they use JavaScript for navigation between forums and used IE-specific code), and if you could get to a page, half of the CSS was not applied. Even people using the AOL browser (which is just embedded IE) were complaining of broken functionality.

In order to try and raise some cash, they have inserted larger ads at the right-hand side of every page. These are an un-resizable 300 pixels wide and only take up the first few hundred pixels of height for any page, meaning that if you’re in a forum thread, there’s a massive amount of white space going unused (not bad in itself, but given the wasted space elsewhere, a crying shame).

The app that powers it all is written in .Net and just browsing around I’ve already seen a couple of System.Object not found error messages (the default IIS ones in red text) and one OutOfMemoryException. That is so, so poor.

That just skims the UI of course, I’m actually too afraid to talk about the source code in case it comes to life and kills me in my sleep – something that over-complicated simply has to be almost sentient. It looks like it’s been produced via XSLT given some of the clues in the source, but surely someone who put that together wouldn’t then be capable of liberally littering the source with document.write and embedded CSS styles on element to which they’ve just assigned a class? Validating a forum page as HTML 4.01 Transitional gives you 190 errors. I can’t imagine daring to call myself a web developer and not running some basic validation on my output – I might even not make it perfectly valid, but over 100 isn’t even trying!

I would imagine that it didn’t help that they launched on a Friday, meaning a full weekend for the many, many users to post thousands of comments slating the new look, feel and functionality without any response from staff. This also meant that any problems were going to be experienced during the period of heaviest usage. Bad decision, TES-ers!

I really can’t imagine that anyone in charge of designing the new look and feel was a user of the old forum site, which, although it did have its own problems, were relatively minor – the site was straightforward and simple to use; it’s now just frustrating on a minute-by-minute basis which is more likely to drive people away than anything else. Just shrinking the heading and moving forum navigation to the mostly unused sidebar would be a massive gain to usability. Given that in the past few days Firefox functionality has been fixed, it’ll be interesting to see if anything else is done to improve the site.

Mobile Teletext

Barbie Horse Adventures sucks

I quite like teletext. The old, chunky teletext that is. It provides great, bite-sized chunks of information. To date the information hasn’t been republished on the internet – the positioning would be crazy; teletext can’t and shouldn’t compete with online resources.


This week Teletext launched a mobile service (the website provides a number of mobile emulators so you can see . This makes perfect sense since the amount of text you can get on your mobile screen is quite similar to the amount displayed in the blocky old teletext (as you can see in the screenshot).

If you try and visit the mobile URL (such as this one), the server does some user-agent sniffing and redirects you to the HTML version. I tried a quick wget, specifically:

wget --user-agent='Nokia6630/1.0 (2.39.129) Series60/2.6 Profile/MIDP-2.0 Configuration/CLDC-1.1' http://www.teletextmobile.co.uk/portal.aspx?pn=806&uid=1111702181083416953519691784019712536148&rnd=23112

and it does return a WML page, but it appears to be a portal page, and doesn’t maintain the page number I wanted to visit (806 in this case). When I visit the same page in my mobile browser it goes where expected.

I admit to being a wget noob, so where exactly am I going wrong? It’d be great to pull this content and push it into, say, a widget on my desktop, but not until I break the wget idiot-barrier.

OK, so installed the User Agent Switcher Firefox extension and configured it with the Nokia 6680 User-Agent (“Mozilla/4.0 (compatible; MSIE 5.0; Series80/2.0 Nokia9300/05.22 Profile/MIDP-2.0 Configuration/CLDC-1.1)”) and that worked a treat, giving me the content I wanted, but putting the same string into wget still gave me the Teletext Mobile splash page. Help welcome!

Trains forever

I’m sure that if I added up all the time I spent waiting on train platforms, I’d have plenty of time to get all my work done. I know, that’s it! The reason my project is behind is because it’s the trains’ fault for being late. Honest!

Automating web testing

We’re just starting to ramp up the amount of testing we do on our web apps at work, mostly via the use of JUnit and some code coverage tools which are automated via CruiseControl.

I’m reasonably interested in getting some automated user acceptance testing going, and have been looking at Selenium, because it seems a great way to generate tests from the real UI, rather than, say, writing code for them in HttpUnit or JMeter (although I know that’s really a load testing tool, it could do the job at a push).

I’d like to be able to generate the tests using the Selenium IDE which is a Firefox extension. My problem with Selenium seems to be that it validates against real browsers, rather than against the HTTP requests and responses and so won’t fit in to our automated testing.

It’s possible to write Selenium tests as Java code (amongst others) but again this runs against the actual browser, and the whole point is that with the IDE you should’t actually have to be a developer to write acceptance tests.

Our CruiseControl machine is a headless server somewhere, so does this really mean that we can’t use Selenium?

I think that actually I’m just baffled that a tool might work this way, and not allow automation without a browser to hand. It rather looks as though we’re going to have to forget the idea of generating tests using the Selenium IDE and just code them in with HttpUnit (or Cactus or HtmlUnit or whatever)

War (on XML), what is it good for?

Were switching to XML a requirement for reaping compelling benefits, the public would indubitably have moved. So would the majority browser engine.

So if the majority browser engine did support XML, this presumably brings us to the question of what would those compelling benefits to the public be?

Aristotle has updated with a response to the question he thinks I asked of his post, which I didn’t. Rather than quote it all, feel free to go and read it on his blog post

My question is, what would those compelling features of XHTML 1.5 be? What could those new features at the time have been? Would they have been compelling enough to encourage the move to XML?

Maybe I’m even asking (in a very broad sense) whether the changes which the WHATWG (and apparently TB-L) are suggesting, are compelling, in and of themselves, to the public, now.

Opensearch in Firefox 2 and IE7

We recently rolled out the Google Search Appliance at work, replacing the ageing (and dreadful) htdig (wikipedia link since the website appears to be down).

I’d previously put together a Firefox search plugin for htdig, but it wasn’t very good because the htdig search gave poor results and took ages to deliver them. Since we rolled out the GSA, I went to update the search plugin and found to my delight that Firefox 2 now uses OpenSearch for defining search plugins. So, ten minutes later and I had a working plugin, which was great. A week later, when IE7 RC1 came out I realised that IE has supported OpenSearch plugins for months, so I pointed it at my plugin, only to find that it didn’t work.

It turns out that IE doesn’t appear to support the nested Param element, although I freely admit that I haven’t checked the OpenSearch 1.1 specs to see if something changed from 1.0 (although a first pass of draft 3 doesn’t seem to include the Param element – I suppose the Firefox docs on the topic could just be out of date).

To install the plugin, go to the University’s GSA tools page To see the working plugin XML looks like this, the Firefox2-only XML looks like this

Things that annoy me about Firefox 2 UI

  • No close button on every tab
  • No close button at the right of the tab bar
  • highlight text, right-click, search uses the selected Search Box engine, not Google
  • scrolling tab bar
  • constant switching between “extensions” and “add-ons” between Firefox versions
  • atrocious options pane for Windows users (this is actually a Firefox 1.5+ problem)
  • massively slow first startup time without a splashscreen
  • terrible UI for session saving (text box has become a dropdown, with no clues)
  • ‘tabs’ and ‘feeds’ options tabs are poorly designed and laid out
  • spell-checker dictionary doesn’t come bundled with your localised build

More as they occur to me.