The new ACTION bus timetables have been in effect for nearly two weeks now; poor
miss_terri_girl has been hard at work telling the punters where to go, and the rest of us have been hard at work wondering why they shifted everything around without actually improving anything much. One of the things I've been missing anew, as a result, is the trip-planning tool that the stupidly named www.131500.com.au website makes available for planning your dalliances with Sydney public transport.
So I decided to make one.
The first trick was getting the timetable information in a form I can use. I saved copies of the timetables from the website, and wrote a Perl program to strip out the rubbish and reduce them to S-expressions, the format that Lisp understands. So a timetable like this two-tone monstrosity gets turned into an expression like this:
((15 315)
(:NORTH
("Tuggeranong Interchange" "Woden Interchange" "City Interchange"
"Radford College Bruce" "Belconnen Interchange" "Copland College" "Melba"
"Spence" "Spence Terminus")
((15 -1 -1 -1 -1 723 731 735 743 748)
(15 -1 -1 -1 -1 803 811 815 823 828)
(315 730 749 807 821 826 834 838 846 851)
(315 830 849 907 921 926 934 937 943 948)
... and so on. This was mysteriously tricky, because it appears that the timetables are actually hand-generated by someone in the bowels of ACTION. No templated database generator programs here, no sir! The mind boggles.
Next trick is to work out how to use this information. Here are the questions I can imagine asking:
The Lisp syntax is just for experimentation; my plan is to make this into a website, so that people can use it to achieve something without shuffling timetables.
This is made harder by the fact that, although every bus stop has its own unique identifying number, the numbers are only rarely displayed on the stops and never appear on the timetable leaflets. Also, not every stop is listed on the publicly-viewable timetables. What we really need is a complete dump of the entire route system, in XML format say, kept up to date and made available for people to do mashups.
I wonder who I need to talk to to make that happen...
Worksop, n.: A person who never actually gets round to doing anything because he spends all his time writing out lists headed 'Things to Do (Urgent)'.
- The Deeper Meaning Of Liff, Douglas Adams and John Lloyd.
Here's my list of projects I have on the go or off the boil. In no particular order, these are all the things I need or would like to get finished. They don't include tasks imposed from on high, either by my boss at work or my bossBeloved at home. My goal in listing them is twofold: to show people why they never see me any more, and to reassure myself that the list is not, in fact, of infinite length.
That's about all I can think of at the moment, which isn't too bad. I may get to the end of the tunnel before the oncoming train arrives, if I can somehow manage to avoid spending evenings with my cuddly munchkins... Naaah.
![]() |
You are viewing Create a LiveJournal Account Learn more | Explore LJ: Life Entertainment Music Culture News & Politics Technology |