Sunday, November 30, 2008

Java without the Caffeine

I'm writing this sitting by a river in darkest Essex, mid-way through a winter's afternoon. The river is running slow, brown and deep; further down it has overflowed the banks and submerged the footpath.

To my right the water runs through a weir, adding a pleasant background chatter to the silence otherwise only broken by the odd crow and a group of Explorer scouts mucking about in kayaks further upstream. On the opposite bank a lone fisherman freezes over his rod - he doesn't appear to be having a very successful afternoon.



It's about five degrees above freezing and I've been sitting here on a bench for nearly two hours writing some Java to traverse and manipulate an XML DOM tree. There's no Wi-fi or cellular connectivity here, no e-mail, IM or Twitter - the only tweets are coming from a blackbird in the hedge behind me and a Jay in a tree across the way.

Fingers and toes are beginning to feel a bit cold now, but it feels good to coding productively without the constant need for caffeine!

Monday, November 24, 2008

How to Migrate to Thunderbird Portable

I've been keeping my life on Flash storage since around 2004. I started off using an old SD card in a cheap USB reader as a lightweight method of carrying my daybook and notes between work and home. Over the years 600 web pages of technical notes, my personal journal, plans and action lists migrated to a series of ever larger replacement thumb drives. Today nearly everything I work on lives on a single 8 GByte Sandisk drive.

As the drives have got larger I've slowly migrated to a portable software environment running off the same thumb drive, so that whether at a work PC, with a notebook on the train, or one of the bigger laptops at home I have consistent access to applications and data. Most of the thirty applications I regularly use come from PortableApps.com with a smattering of others configured with the help of PortableFreeware.com.

PortableApps.com recently released a new version of Thunderbird Portable and given my son's assertion that playing The Sims is rather more mission critical than my e-mail it seemed clear that now was a good time to move that last application off of the family laptop and onto the thumb drive. However with an archive of more that 16,000 e-mails I was somewhat concerned at how straightforward that would be.

Like all downloads from PortableApps.com installing Thunderbird Portable 2.0.0.18 was easy, just double click, point it at the correct drive and stand well back. Once installed, I started Thunderbird from the PortableApps menu (well the geek.menu fork, truth be told) and went through its initial set up, supplying dummy data when prompted. Delving around on the thumb drive then revealed that Thunderbird had created a folder of profile information at:

E:\PortableApps\Thunderbird Portable\Data\profile\

This folder is easily identified as it contains 'Mail' and 'extensions' sub-folders and a variety of ini, dat, rdf, js and db files.

Going back to my original Thunderbird installation the profile data was in the default:

C:\Documents and Settings\frog\Application Data\Thunderbird\Profiles\xxxxxxxx.default

folder (where xxxxxxxx is a random string of characters that, no doubt, hashes my password, inside leg measurement and all my credit card numbers.) Deleting the contents of the profile folder on the thumb drive, I copied the contents of the old

C:\Documents and Settings\frog\Application Data\Thunderbird\Profiles\xxxxxxxx.default

into the now empty

E:\PortableApps\Thunderbird Portable\Data\profile\

ignoring the fact that the two pathnames are structured rather differently.

Starting Thunderbird Portable appeared to work correctly, with all the old messages and folders appearing. However the status line seemed to indicate it was struggling to open a particular message. Exiting Thunderbird, which probably caused it to rewrite its config data, and restarting it solved the problem.

In total it took about ten minutes to move 16,000 archived messages, folder structures, and account settings to the thumb drive. Despite the difference in folder path structure it worked first time and I was impressed by how smoothly Thunderbird handled the change in profile.

Wednesday, November 5, 2008

Initial impressions of the Korg DS-10 for the Nintendo DS

The Korg MS-10 was an entry-level monophonic synthesizer from the 70's. It had a 32-note keyboard and a control wheel driving a single VCO, VCF and VCA.

Perhaps a little background may help here. The keyboard and control wheel each generated a voltage that could be fed as input to the various modules. The Voltage Controlled Oscillator (VCO) generated a number of different waveforms with a frequency dependent on the input voltage. So given the voltage from a particular key on the keyboard it would generate the relevant frequency.

The Voltage Controlled Filter (VCF) worked in a similar way. The voltage, from the Control Wheel for example, would effect the frequencies passed by the filter.

The Voltage Controlled Amplifier (VCA) could vary the amplitude of its input signal depending on a control voltage.

Finally the Envelope Generator shaped the amplitude of a note through time. Imagine hitting a piano key. The amplitude of the note increases from zero to its peak very quickly as the string is struck. It then drops down to a level at which the note is sustained before finally decaying back to silence. The Envelope Generator is responsible for generating a control signal that models such an envelope. This can be fed into the VCA to simulate the sound of a conventional instrument.

Now the thing that really fascinates me about analogue synthesizers is that all the parameters of these modules are fully adjustable (there are lots of knobs to twiddle). The various modules can also be connected together in different ways via a patch panel. For example feeding the output of one VCO into the input of another will generate vibrato effects.

That was 1978. Fast forward to thirty years later and the introduction of the Korg DS-10 on the Nintendo DS. This is not a 100% perfect emulation of the Korg MS-10. But in many ways it is so much more. It emulates two mono synthesizers loosely based on the MS-10. In addition each has a 16-step sequencer, roughly equivalent to a Korg SQ-10. Finally there is a four pad drum machine with its own sequencer, a six channel mixer and an FX unit (delay, flanger and chorus).

Each synthesizer has a 24-note keyboard and a Kaoss Pad. This is a X-Y touch pad where the coordinates of a finger touching the pad generate an X and a Y voltage that can be mapped to parameters such as note, volume, pan etc. Sweeping a finger tip in patterns around the pad can produce control signals simply not possible from the keyboard.

So how well does the Korg DS-10 work in practice? Is is a toy or a serious musical instrument? Initial impressions are very favourable. Emulating two MS-10's gives the possibility of richer, deeper sounds and for stereo effects. Add in the drum machine and reasonably complex compositions can be attempted. Incidentally the original MS-10 manual recommends combining two synthesizers for a richer sound.

Sound quality seems pretty good, though limitations of the DS hardware means that bass notes are perhaps not as good as they could be. With very complicated patches and absolutely everything running there were occasional hints that the processor was struggling to keep up. But this would not be a problem in normal usage.

What is a slight problem in normal usage is the size of the font used for the menus. The graphics are gorgeous but with my 48 year old eyes the menu text is quite hard to read in places.

Creating a song from a series of sequencer patterns is not particular intuitive for someone not used to sequencer programming. Here, the manual could have done with more examples and tutorials, including a walkthrough of a typical workflow. However once you have a mental model of how a song is built up the system is powerful, flexible and easy to edit.

In summary this is a fantastic software package. However it has a steep ramp-up and is one Nintendo DS program where it really pays to read the manual in detail. You'll need to do a lot of experimenting to get something really musical out of the DS-10, but the end result can be absolutely fantastic.

Monday, November 3, 2008

Korg DS-10 Synthesizer

Stumbling on the Korg DS-10 emulator for the Nintendo DS on Amazon sent me spiraling back to the early seventies. As a thirteen-year old brought up on late 60's synth-pop I was fascinated by the thirteen part series in Practical Electronics magazine to build your own analogue Sound Synthesizer.

The series began in the February 1973 issue and each month a new module was added; voltage controlled oscillators, ring modulators, noise generators etc. I remember pouring over the circuit diagrams and dreaming of vast arrays of pots to twiddle and spaghetti like patch leads. Unfortunately my schoolboy pocket money didn't stretch to that many 741 op amps and by the time a DIY keyboard and one VCO had been built I was out of funds. Another youthful dream horribly dashed on the rocks of reality.

Sound on Sound have an interesting article on DIY synthesizer projects that describes the PE Sound Synthesizer and its descendents. One phrase, describing the original article's audience:
"aimed at the anal-retentive schoolboy with no interest in girls or sports. The schoolboy would have had to have some kind of qualification in either physics or maths to complete such a task, and few did!"

gave my wife much amusement for some reason.

And now there's an emulator for the classic Korg MS-10 running on the Nintendo handheld. According to the spec sheet it is not an 100% emulation and adds enhancements such as a sequencer. It's unlikely that the DS will get close to reproducing the famous MS-10 fat bass sounds but in a few days time I'll be able to live my boyhood dreams and find out.

Monday, April 7, 2008

How to unbrick a Navman S30

As you may recall my Navman S30 had decided not to boot anymore. It would get to the start up screen (picture of woman hanging out of car) shows it for a few seconds, display its software version number and then reset. That cycle was then repeated for ever, never getting to the main menu.

I found that it was trying to read some missing .INI and .XML files. Eventually I managed to restore the missing files by doing a reinstall of the Navman software. However the boot up still failed, reporting other files could not be read. Those files existed and their contents looked reasonable. Copying the problem files and renaming the copies to the original names allowed the boot to get slightly further and then fail on yet another file.

I also found that some directories had more than one file with exactly the same name and identical contents. They appear to be one file with multiple directory entries, so I suspected the Windows CE Core 5.0 file system was corrupt.

With some trepidation I decided to reformat the internal flash drive holding the SatNav software. I found that the following worked for me. But do not try this unless you know what you are doing and your Navman S30 is already bricked:

  • Plug the Navman S30 into an XP machine via USB. It will appear as two drives, in my case E: holding the SmartST SatNav software and F: being the S30's SD slot.

  • Use NavDesk 2008 to backup the user data in the usual way.

  • In Windows XP "My Computer" right click the drive holding the SmartST software (E: on my machine) and select "Format...". Select FAT for the file system and leave the volume label blank. Do not tick the "Quick Format" checkbox. Click on [Start] and cross your finger.

  • When the drive has been formatted go to NavDesk 2008 and run Tools > Reinstall software on your Navman.

  • Then ran Tools > Recover keys.

  • Put the Navman DVD in the drive, click on "My Maps" in NavDesk 2008 and reload the maps you need.

  • Check that the Navman S30 now boots up and works properly.

  • Finally use NavDesk 2008 to restore the backup of the user data. If it then fails to boot, the backed up data was corrupt and you will need to repeat the above steps but not restore the backup, losing your preferences, favourites etc.


The whole process took about 20 minutes.

All seems to be working fine now. Just need to remember to take a laptop,
installation DVD, USB cable and Internet connection every time I take the S30 out
in the car...

Tuesday, March 25, 2008

Navman S30 Reboot problem - quick update

I downloaded the latest system software for the S-series and installed it. The program updates Navdesk 2008 and then offers to install the latest software on the S30. This appeared to work until it asked me to disconnect the SatNav from the PC and wait for it to reboot. There were dire warnings about switching it off before it got to the user agreement screen. Unfortunately although the image update appeared to work fine it then went straight back into its reboot cycle - but displaying the new software version number.

I switched the S30 off and plugged it back into the PC. The installation software went ahead and installed a new version of SmartST 2008, but it made no difference. It still reboots over and over again...

Navman S30 Reboots and Reboots and...

The Navman S30 is a budget SatNav with a pretty good spec that currently sells for well under a £100 in the UK and appears to be very popular. I've been using one for a few months and have been impressed with the device. It does have a few idiosyncrasies - for example, you cannot search for junctions on the M25 - but on the whole has been extremely useful and reliable.

Switching the S30 on today put it into a continuous loop of reboots. It gets to the map loading screen (photo of a woman hanging out of a car window), displays the software version number, waits a few seconds and then repeats... for ever.

The Navman Technical Support FAQ is no help - they suggest resetting by holding the power button down for 6 seconds and then turning it back on again. A quick Google reveals a fair number of users of the S-series describing the same symptoms but no resolution. Everyone who reported trying to contact Navman technical support appears to be still waiting for a response.

What to do? Plugging it into a PC and switching on does put it into USB Mass Storage Device mode. So I tried running NavDesk 2008's "Reinstall software on your Navman" option. Directly I accepted the licence agreement it reported:


There is not enough space to install these option(s).
Please free up some disk space or modify your selections.


I had not made any selections and there has been no additional maps, voices or other data installed on the device but opening the S30 as a Windows drive and looking at its properties shows 0 bytes free. A delve into its file structure reveals that it is running Windows CE and that it has filled any free memory with log files. In the "My Documents" directory were 6 Mbytes of log files that appear to list events such as user inputs, travel distance and speed and so on. I deleted them.

In the root directory there was an app_asrt.txt file which is a log of its latest attempt to boot-up. There were also a hundred app_asrtNN.txt files fromt the last hundred boot attempts, most were zero bytes due to the lack of disk space.

The app_asrt.txt file reports that it is trying to read:

\My Flash Disk\Program Files\Navman\SmartST_CE\UserData\device_settings.ini

in binary mode. Later it tries to read default_settings.xml from the same directory. The directory exists but only includes a user_settings.xml.

Looks like a reinstalling the system software will probably fix this. Just need to work out how to get the new software on to the S30 without bricking it.

Friday, February 22, 2008

Asus EEE Arrives and Samba Goes

I've finally got hold of an Asus EEE PC 4G. Initial impressions are very good, it feels robust and of good quality. There has been some mention of poorly aligned keyboards in recent models, but this one is fine. Despite being a little cramped the keys have a decent feel and I was touch-typing on it without too many errors by the end of an evening.

Before allowing it onto the InterTube I first disabled Samba. Samba allows the EEE to interoperate with Windows File and Print services, but unfortunately the version installed has a security flaw. There are various options for fixing this, including removal of Samba altogether or updating to the latest version. However I decided to just stop it running automatically at boot-up. This takes a little command line tweaking but is pretty easy. Here's what I did:

Hit Ctrl-Alt-T to pop up a command line prompt and type:

ps -e | grep smbd

The ps -e command lists all the processes running on the machine; about 60-odd on the EEE at rest, making the Samba processes hard to spot. The pipe symbol ( Fn-Shift-Z on the UK keyboard) 'pipes' the output of one command into another, in this case grep smbd. The grep command is an incredibly powerful search facility, but in this incantation it just returns any line containing 'smbd', the name of the Samba process. Running that command line gives something like:

1840 ?   00:00:00 smbd
1841 ?   00:00:00 smbd

confirming that a couple of Samba processes are running. Incidentally man followed by the name of a command displays the 'manual' for that Xandros command.

Now at boot-up the EEE runs a script called /usr/sbin/services.sh which starts various services including Samba. Near the end of the file the following lines start up Samba:

mkdir -p /tmp/.samba
/usr/sbin/invoke-rc.d samba start

We can comment them out by placing a hash ("#") at the start of each line. The EEE has various editors available from the command line, but I used Vi - it is something of an acquired taste and can be intimidating to new users because of its initially steep learning curve, but it has the advantage that it is available anywhere, under virtually any OS. There are also circumstances when Vi is likely to be the only editor that will work on a partially booted Xandros.

Vi is a modal editor and most keystrokes you type will be interpreted as commands rather than being inserted into the text. You have to switch into Insert mode to enter text. It is essential to spend some time practicing on scratch files and going through the tutorials on the Vi Home Page before going near anything essential with Vi. The most important Vi command to know is [Esc] to get out of Insert mode and then :q!. Colon opens the command line and 'q!' forces a quit without saving.

Editing the script with:

vi /usr/sbin/services.sh

works fine until you try and save the file, when Xandros will complain:

E45: 'readonly' option is set (add ! to override)

Trying :w! as suggested will also fail with:

"sbin/services.sh" E212: Can't open file for writing

This is because you are logged into Xandros as a user who doesn't have the authority to change this system file. You need to be logged in as the super-user 'root' instead. Fortunately you can use the sudo command to give yourself limited, audited, access to super-user permissions. So typing:

sudo vi /usr/sbin/services.sh

gives full editing access to the file. It can then be changed with the following commands:

  • G - moves the cursor to the bottom of the file

  • Cursor up - to the start of the first line that needs commenting out

  • i - Go into insert mode, then type '#' and then [Esc]. Don't try and cursor down in Insert mode - it will end in tears

  • Cursor down - to start of second line that needs commenting out

  • i - Go into insert mode, then type '#' and then [Esc]

  • ZZ - Save and Exit


The relevant part of the file should now read:

# Store samba run state in /tmp, as it gets written to frequently
# mkdir -p /tmp/.samba
# /usr/sbin/invoke-rc.d samba start

Restart the EEE and run ps -e | grep smbd again. This time no lines should be listed showing that Samba is no longer running.

Details of this fix, along with discussion of alternative solutions are given in the this thread on EeeUser.com.

Saturday, February 16, 2008

Asus EEE 4G Supply in the UK

There's some interesting discussion about experiences obtaining EEE 4G's in the UK on mediaprices.co.uk's forum.

Another useful resource is the Asus EEE PC UK Stock checker, though it's not always entirely accurate. I was excited to see white 4Gs listed as being available from Amazon for £270. A bit steep, but rather tempting. Following the 'Buy' link, however, revealed that the Amazon Marketplace supplier was actually asking for £398.95 + £4.50 P&P...

(D)esirable (H)ardware (L)ost

Having had an Asus EEE PC 4G placed into the tender care of DHL for next day delivery on the 24th January I'm still without a machine to play with. The box disappeared at Gatwick and hasn't been seen since. DHL insisted on a five day investigation before admitting they hadn't a clue where it was. Of course they didn't tell me that - they left it to the supplier to apologise on their behalf.

The replacement was supposed to have shipped today, so when the delivery estimate went up to 15 days overnight I thought I'd try a trip to Tottenham Court Road, the closest you'll get to Akihabara in the UK. In each shop questions about the availability of EEE 4Gs were met with a shaken head and a wry smile. As I approached the very last shop I was amazed to see a "We have Asus EEE 4Gs in Stock Now!" sign in the window. Rushing in, my fevered question was answered with "Well they are not actually here, but they will be arriving today."

The salesman kindly rang their supplier to find out when the EEEs would arrive. The call went something like:

"Can you confirm they will be arriving this afternoon?"
...
"Well, were they put on the lorry?"
...
"So do you have any in the warehouse?"
...
"Oh, so the ship will arrive when?"

Saturday, February 2, 2008

Emulating the PDP-8

Mentioning the PDP-8 yesterday set me thinking about building a PDP-8 replica using modern day TTL. The PDP-8 had a particularly simple architecture with only a few registers and eight basic op-codes. The early machines in the family, like the ancient one I used at University, was build from individual transistors and core memory. Later on DEC switched to TTL chips and RAM, so to build a replica would certainly be possible.

There was also a PDP-8 on a chip - the Intersil 6100. We used to have some prototyping boards for this low-power chip. The memory was backed by a single AA battery - at the end of the day you could just pull the memory board out. Next morning you could plug it back in and carry on working. It was used for ultra-low power application like satellite on-board systems.

A wander around the Web turned up Henk Gooijen's great looking 6809-based hardware emulation, and links to a number of software emulations, most of which ended in an HTTP 404 page. However there were some gems - for example Tim Gorton's Java Applet PDP-8 emulator that interactively runs a PDP-8 Lisp.

There was also Brian Shelburne's MS-DOS PDP-8 emulator which comes with a built in assembler and a lot of fascinating documentation. Apparently it used as part of a course on computer architectures - which is a little surprising because, although its a simple, elegant architecture, it doesn't use a stack which is a little unusual these days...

After spending an evening reading those sites and playing with some of the emulators I had a very restless night - I kept waking up with bits of Java code for emulating PDP-8 instructions running through my head. I had been looking for a little Java programming project to try out Swing (its all Web development at work) and this seems to have chosen itself.

So my next few commutes are going to be with the PDP-8 Programmer's Reference and a big pad of paper.

Tuesday, January 29, 2008

Asus EEE and the Fabric of the Universe

I should have spent this evening working out how to install FreeMind on the Asus EEE PC. However despite my miniature box of Linux goodness having been dispatched for overnight shipping last Thursday, five days later it has yet to arrive. According to the delivery company's tracking system it reached Gatwick on Friday morning and promptly disappeared.




Now, according to Seth LLoyd the Universe can be considered to be a quantum computer. We know that a suitably dense concentration of matter can warp the fabric of the Universe - time and space. It therefore does not seem unreasonable that a suitably dense concentration of computing power will have the same effect, when the Cosmos is considered as a quantum computer.

The small size of the Asus EEE PC means that a lot of computer power is concentrated into a small amount of space. Placing too many EEE's together will produce a too dense computing potential leading to dire consequences for the fabric of the Universe. It is well known that Asus export the EEE in boxes of only five. This is not due to a world-wide shortage and Asus not being able to keep up with demand, but because this is the largest number that can be safely placed in close proximity.

In the case of my EEE, it would appear that the carrier stacked it with too many other EEE's in the same shipment. The resulting computational singularity led to a hole in the fabric of the Universe as the EEE's collapsed into their own NAND gates.

Friday, January 25, 2008

Asus EEE PC 4G Black and Linuxy

I've finally given into the lust and ordered an Asus EEE PC 4G. Still missing the old Psion Series 5, never being able to afford the Series 7 and having briefly being excited by the Palm Foleo it was only a matter of time before I gave into the EEE's Linuxy charms.

So I now have ten days to buy an SDHC or two, find a case and decide what I'm going to install on it. This one is going to remain with Xandros and will probably spend most of its time running VIM. My only concern is that it doesn't use a firewall by default. All my Unix experience has been with corporate Web servers so promiscuous WiFi and Linux without a firewall is all new to me. I'm happy that at home with a router will be safe enough, but out on the streets...

By the way TweakTown has an interesting disassembly of the beast.

Sunday, January 13, 2008

Obsolete Technology

It was 1975 and a spotty 15-year old boy was intently studying a photograph in a glossy magazine. Late at night and under the bed clothes with a torch, I couldn't sleep for thinking about running my hands over that curvaceous teletype, flipping those toggle switches and thrilling to the little red lights flickering on and off...



The magazine in question was Scientific American and the object of my lust was the IMSAI 8080. I never did get my hands on one - though I did my fair share of toggling bootstrap loaders into similar machines (mainly a PDP-8 with core memory and rather worn out front-panel switches.)

The Obsolete Technology site provides a fascinating journey through the first 18 years of personal computing. With lots of photos, information, specifications and old adverts that bring the memories come flooding back. I was amazed to find that I had owned or extensively used thirteen of the featured machines… and spent hours daydreaming about a lot more besides.

Saturday, January 12, 2008

Traps, Pitfalls and Corner Cases

That Joshua Bloch and Neal Gafter have a lot to answer for! They have caused me much embarrassment and inconvenience this evening. After a long day's interviewing Java developers I thought I'd wind down on the train by reading a few sections of the aforementioned Bloch and Gafter's "Java Puzzlers".



This book is an absolute joy. At the bottom of each right hand page is a short piece of Java code and a simple question. For example the first puzzle is a one line method, and the question "Does the method work?" Of course the answer is no... but why? After each puzzle the next page gives a detailed explanation, which is always informative, lively, entertaining and often surprising.

Even if you think you know the JLS well you might be surprised by how often Bloch and Gafter manage to fool you. On the train I looked at one line of code for about ten minutes. I knew that there was a trick there, but just couldn't see it. When I turned the page and saw how completely I'd be fooled I burst into laughter. My fellow passengers gave me some very strange looks; not all of them entirely friendly. Apparently it is not the done thing to laugh at computer text books on the tube.

And the inconvenience? Well I was so engrossed in one problem that I missed my station - the first time in decades of commuting. Oh, those crazy Google engineers!

Tuesday, January 8, 2008

Slide Rule Universe

Slide Rule Universe has everything you every wanted to know about slide rules, even how to build your own… You did want to know about slide rules, didn’t you?

An amazing variety of slide rules are on sale in the catalog - fancy calculating the trajectory of a 105mm Howitzer shell, or computing flow parameters for hydraulic valves, then they have a slide rule for you.

Personally I’m still looking for a good set of Napier’s Bones - never seem to turn up on eBay for some reason.

Monday, January 7, 2008

Binary Adder Made of Wood and Marbles

Here’s a wooden binary adder that uses marbles for the bits. Be sure to watch the video demonstration - you only realise how clever the design is when you see it in action, especially as the carry bits cascade through the digits.

There’s plenty more to see on the rest of the site, including Marble Machine 2, an ingenious piece of kinetic art, and photography using a flatbed scanner.

Sunday, January 6, 2008

War of the Worlds

Darkhorse.com have a wonderful comic version of "The War of the Worlds" by H.G. Wells. They appear to have kept very close to the original text and I love their rendering of the Martians. Great stuff!

The comic does appear to have been slightly influenced by that Jeff Wayne chappy though - I'm sure that in the original the tripods called out "Ulla", rather than the more musical "Ooolaaa!"

Projekt Categories

Categories or tags are one of the most useful ways of managing actions using an outliner. They allow a kind of cross-cut view orthogonal to the normal tree-like structure of the action list. For example I keep all my plans and actions in an outline that has Covey-like 'roles' as the top-level branches. These are my main areas of responsibility - father, husband, son, friend, developer, student etc. Under each of these roles I have a list of projects, and under each project there are list of nodes contain plans, notes and actions.

That's fine for planning purposes, but when I'm about to visit a particular client, friend or perhaps just a shopping mall, I want to cut across that tree structure and just see a list of the next actions I need to do in that context. By tagging actions with the context in which they need to be carried out it's then easy to display only the actions needed in a particular context, even when they are for different projects.

On the Palm, using Shadow Plan and the built in Tasks application it was easy to tag each action with a category such as @laptop, @shops, or @desk. But Projekt on the Nokia E61 is not quite so slick. I was disappointing to find that, although it supports 26 categories (an improvement over the Palm) they can only be named 'A' to 'Z'.

Although it is not that difficult to remember that category 'D' is for next actions that need to be done at my desk, and 'L' need to be done on the laptop, I don't understand why Projekt doesn't support more flexibly named categories. Even if using a single character field is a limitation of the underlying database it should be easy to add a mapping between more meaningful names and those single characters. It seems such an unfriendly limitation.

Even more annoying is that it doesn't support blank or space as a category - every entry has to have at least a default of 'A' or 'Z' as the category. Not a problem when filtering, but if the category column is enabled in the list view it is hard to see the meaningful category symbols between all those 'A's.

On the other hand I love Projekt's filter. It allows entries for multiple categories to be selected for display. So it is easy to display all next actions for say, a 'laptop' context and an 'anywhere' context, but hide all others.

Friday, January 4, 2008

K'NEX Computer

Lego, relays, wood and marbles… it was only a matter of time before somebody came up with a K’NEX computer. This 4-bit computer, ten feet tall and built of K’NEX, works in a similar way to other ball-based computers. Check out the links on the right of the page for some useful explanations.

E61 Projekt Revisited

My initial excitement on buying a Nokia E61 soon after it first appeared in the UK was quickly dampened on first contact with its built-in PIM software. Here was the spiritual successor to the Psion Series 5 with a To-do manager that was barely usable. I was bitterly disappointed.

I had been hoping to move my GTD management from Shadow Plan on a Palm to the E61 in the expectation that the built-in keyboard would be much quicker than Palm Graffiti. I looked at a wide range of third party Symbian PIM applications over the following weeks, and Kylom's Projekt came closest to my needs. However I found its user interface to lack consistency and to be somewhat fiddly to use. It just didn't feel 'right'.

So ever since the E61 has languished as a (very good) mobile e-mail and Web terminal and I've continued to carry around the old Palm Tungsten.

Well, the Palm's digitiser is beginning to show signs of age, so it is time to take another look at Projekt. Initial impressions of version 1.10 are very encouraging. The user interface has a tight, slick feel and seems to require fewer keystrokes than before for the main functions. I was quickly able to create a small tree of information and to-do nodes without recourse to the manual.

Over the next few days I'm going to transfer my Shadow Plan data to Projekt and give it some serious exercise - though I already suspect that I'll be parting with €24.95 in the near future.

Tuesday, January 1, 2008

Starship Dimensions

Starship Dimensions is a beautiful site that contains hundreds of scale drawings of Science-Fiction space craft - from Serenity to the Dyson Sphere. I hate to recommend using IE, but hitting the site with that browser allows you to pick up the ships and drag them around, making it easy to compare the relative sizes of Moya and Station V from 2001, for example.

A great site to just browse and marvel at the drawings, but also a priceless resource to help win those alcohol-fueled arguments over whether Godzilla would fit inside a Cardassian Keldon starship.