elliot's blog

Google Maps

Google Maps, if you haven't come across it, is absolutely incredible. Only works for the US at the moment, though.

Fortunately for me, I am going to San Francisco for the Open Source Business Conference 2005 in April. So I've been busy finding out about hotels near the venue, what's in the area, and so on. Google Maps is phenomenally useful for this.

When I first started using it, I thought "where are all the buttons?" and "how do I do anything with it?". But all the functionality is in the map itself, and it reacts like a desktop application: you can double click to centre the map on a location, drag it around with the mouse, etc., all stuff it never even occurred to me to use with a web application (I am old skool, after all: my first browser was Lynx). Then you can drill-down into a section of the map, and search for hotels, restaurants, cinemas and so on in the local vicinity; their locations then pop up as flags on the map you can click on. (Looks like lots of Italian places near where I'm staying :) Extraordinary.

If you're interested in the so-called Ajax technology this is based on, one of the best articles is at http://jgwebber.blogspot.com/2005/02/mapping-google.html. (Unfortunately, Ajax is also the name of a household cleaner, which takes the edge off the excitement for me.)

Everything is miscellaneous

Listened to a very interesting talk by Dave Weinberger this morning, which he presented at the Library of Congress. The basic theme was around how knowledge has shifted from "objective" authoritative sources (e.g. printed encyclopedias) to a plurality of subjective sources (he gives the example of buying electrical goods, where these days people commonly rely on the web for personal opinions, rather than the manufacturers' sites). Apart from anything else, he does a good job of potting the history of Western epistemology.

One of the central points (and the reason for the title of this entry) is that traditional models of knowledge are based around trees: this is an inflexible and imperfect model, as lots of things don't fit into a single node of a tree and end up being treated as "miscellaneous". Electronic media are more fluid and can be reorganised on the fly more easily (unlike books on shelves, for instance). We don't need one classification system, like Dewey Decimal; we need many, and the potential to add more as they are needed. It is impossible to guess the uses to which data will be put in the future.

Very thought provoking, and made me think that maybe we're seeing the Death of the Author playing out in politics, the media and advertising, as well as literature.

UML sequence diagrams tool

I found SEQUENCE a while ago, and it's very useful and straightforward if you want to draw UML sequence diagrams. It took me a fair while to find it today, so I thought if I blogged it, I hopefully wouldn't lose it again. It's written in Java, and you can get it from itymbi ...: SEQUENCE Archives.

Beige Records

Last night, through Resonance FM, I stumbled across the fascinating Beige Records record label. They have a range of MP3s available for download to give you a taster. Their focus is on experimental electronica, and I was particularly taken by the work of The 8-Bit Construction Set. To quote from the website:

The 8-Bit Construction Set record is also the first ever use of the vinyl recording medium for software distribution - the inside tracks are audio data which can be dubbed to cassette tape and booted in your respective atari or commodore 8-bit computers (guinness world record for first-ever vinyl-to-software programming is currently pending). and, as if you still had doubts about these artists' chops, you should know that this record was entirely programmed in 6502 assembly language. beat that.

You've just got to love it, haven't you? There are a couple of their tracks available for download, which sound like insane computer game music.

Later: posted this story to Slashdot, where it appeared a few hours later.

Namchow "Rice Cracks"

These are bland low fat snacks, disks of pure indifference. In the same way Rachel Stevens is the closest you can probably get to being utterly blank while being sentient, these snacks are the closest you can get to not tasting of anything while still having a taste. They are so bland I can barely be bothered to eat a portion: there are two portions per pack, and I have half a pack left a week after buying them. I just have no appetite for completion. Paprika or sour cream and chives, it makes little difference. Marginally texturally interesting. 4/10.

Nathan Barley

I've been taking the rise out of the Wasp T12 mobile phone adverts which have recently appeared on bus stops. I genuinely thought they were real adverts, and was scoffing with my friends at their ridiculousness. The advert claims "It's well weapon" and calls it a "speechtool", and shows a heavily designed phone in yellow and black stripes.

Last Friday night, I watched the new Chris Morris project "Nathan Barley", featuring an idiot DJ who has a Wasp T12. At one point, he explains how it has a large 5 key because this is the most commonly-used number, and demonstrates the MP3 decks which are available when you flip it open. I still didn't twig.

At lunch time today, I looked up the Nathan Barley website, and found a Flash movie advertising the Wasp T12. At this point, the penny dropped: the whole phone and the advertising campaign are a massive hoax and publicity stunt for the programme. I was well and truly duped. By the way, the programme is excellent (in my opinion, of course), brilliantly satirising the iPod generation and vacuous media types.

Drupal login hack

I've done some more work on the login code for Drupal, resulting in me implementing cookie logins. This means I can login once, then get a permanent disk-based cookie which lets me go to the admin. screen immediately from that point on. I also mucked around with the module interfaces provided by Drupal to integrate it into the admin. menus, so I can turn cookie logins on and off. This did necessitate hacking the core Drupal code, which is not ideal; but Drupal has no hooks into the authentication system at the level I need: you can only provide alternative lookups for a supplied username and password. To add a bit of extra security, I added a field where you can specify the IP addresses allowed to use cookie login. Outside this set of addresses, only standard logins work.

A side-effect of this (apart from convenience) is that I can now create a Drupal bookmarklet to post blog entries from a web page. The bookmarklet automatically adds a title and a link to the originating page into the blog entry. Trivial once the cookie login code was written.

The organic ghetto

Why do they put organic food into its own special section of the supermarket (like they do at Tesco)? This is a shame, because it means when you're looking for apricots or whatever, the organic options aren't always there alongside the normal options.

I'm not saying organic is always better; just different. For example, the only way you can get soft dried apricots (sorry to hark on about apricots) is to go to the organic section. These are slightly darker and softer than the usual dried apricots, and have a more treacly taste. I feel sorry for all the people who are missing out on soft dried just because they never buy organic food.

Technorati

I'm posting this entry to set up my Technorati Profile.

Technorati is a kind of niche search engine for finding weblog content. It also allows you to track mentions of your blog in other people's blogs.

More Drupal hacking

Spent a few hours working on Drupal hacks today including:

  • Amending the login code so it accepts "login" via cookie.This should make a bookmarklet trivial to write. I still need to make the code more modular and configurable via the admin. interface.
  • Working on my template engine. The idea is it should make it possible to use a WYSIWYG editor to build templates, plus give very fine-grained control of layout, while remaining simpler than the existing engines. It works so far (though I found a bug earlier I haven't been able to fix yet), though I am fighting with Drupal's architecture a bit. The theme system only lets you create strings for individual content items, which then get concatenated into the page HTML. I want to generate objects and pass these to the templating engine instead. So I find myself in the crazy situation of generating parseable strings from the database, then parsing them into associative arrays, then passing the arrays to my templating engine for rendering.

I also want to investigate the trackback module, which manually inserts the trackback code when you create a new item of content. This doesn't work properly, because you sometimes end up with the trackback markup being replicated when you preview a content item before submitting it.

Syndicate content