gerph.org - Diary

[Last] [Up] [Next]

Diary (December 2006)

End of the year's always a strange time. Greebo was incredibly restless from being lonely without Grendel, and so wanted a lot of attention. Much failing to sleep was, again, a theme of the month. I made some random notes on things that I'd done, which was hugely incomplete but at least served to give me some idea of the sort of things that I have done over the years. Christmas came and went and my brothers came to visit, and then it was new year.

30 Dec 2006 (Saturday) Permanent reference to this entry

WMP + ID3.
Agitated?

I was looking at some MP3s that had been produced by Windows Media Player today. I'm a little surprised. Despite being only ID3v2.3, the frames do appear to be used correctly - unlike iTunes. The tagging appears to give correct PRIV frames for the frames which are for WMP only and may be binary.

Ooh! I realised I used the wrong word last night. I knew it was wrong, but I couldn't remember the right one. I didn't quite mean 'agitated', I think I wanted something closer to 'anxious'. And not just because I want to use a word that's got an 'x' that sounds nothing like an 'x' <grin>. Or maybe I just mean both. Who knows ? Certainly not me and it's me that's doing the feeling. Bah.

Return to top | Comment on the diary


29 Dec 2006 (Friday) Permanent reference to this entry

Raining.

It's raining and windy out there again, and I don't know why but it just makes me very agitated. I'm certain I've said it before, but it does and I'm not entirely sure why it should.

Return to top | Comment on the diary


27 Dec 2006 (Wednesday) Permanent reference to this entry

Zoo.
Notes.

We went to the Zoo today. We got to see lots of animals. I liked the tigers. (intentionally written like a young person, honest <grin> ).

I spent ages last night writing myself some notes because I couldn't sleep. I ought to review them and see if they make any sense.

Julian goes home tomorrow.

Oh, and I put together my little skeleton model today, too. He's cute.

Return to top | Comment on the diary


26 Dec 2006 (Tuesday) Permanent reference to this entry

I don't see...
Broken CDDB IDs.

If I find myself saying 'I don't see how that can possibly work' one more time I may just... well, tell myself off.

RipIT 3.4 (and probably RipIT 3.5) is generating invalid CDDB DISCID values. This means that the DISCIDs it is submitting to databases are incorrect and won't be found by any other programs. How can I be so certain ? Well, the IDs end in huge numbers (eg hex F1) when there are only a small number of tracks on the disc (eg decimal 15). The last two digits of the ID gives the number of tracks, so it should never disagree with the rest of the file. Only it does, and it seems to be in such a way that the value is negative (when treated as a byte), so I believe it's a coding error.

Return to top | Comment on the diary


25 Dec 2006 (Monday) Permanent reference to this entry

How do you work this?
Walk.
Music Quiz.
Doctor Who.
My Family.
Torchwood.

It's very important to remember that double-clicking on an entry in the address book on Skype calls the number, rather than opening a message window. Very important.

We went out for a walk today in the forest, just for a little way. That was quite nice. I got some Cashews as one of my presents. We played Julian's 'Scene It' game, and the 'Guiness Music Quiz' DVD this evening. Julian won the former, and mum and I won the latter.

[Note]
The time has come and they must go
To play the passion out that haunts you so
Looking for the summer
Chris Rea - Auberge

[ [Track]Looking For The Summer[Track], from [Album]Auberge[Album], by [Artist]Chris Rea[Artist] ]

[Note]

I've been playing with my music quiz over the last couple of evenings and it's reminded me of a lot of fun tracks that I'd not listened to in ages.

Oh, yes, we watched Doctor Who Christmas Episode (Runaway Bride) and the My Family Christmas Episodes. My Family was... well, the Christmas ones tend to be a let down. I'm not sure whether it's that the set ups are so obvious or that I'm expecting more than we get. Doctor Who might have been better, but the 'incidental' music wasn't quite so 'incidental' as 'relentless'. There didn't seem to be any break from it and it was always so loud that I lost some of the dialogue. Maybe I'm just old. Story-wise... it was ok. Nothing special, I wasn't bored, but it wasn't some of the best. Some bits were very obvious, some bits were badly explained. Fine for Christmas day, though.

And there was a Torchwood last night which was sort of 'Fight Club'. I'm still not sure where to put Torchwood.

My left eye's still tired today.

Return to top | Comment on the diary


24 Dec 2006 (Sunday) Permanent reference to this entry

Stay Together.

[Track]Stay Together[Track], by [Artist]Suede[Artist] has such a gorgeous introduction.

It's now the early hours of Christmas morning, and I should be trying to sleep. Oh well.

My left eye has been very tired today and tends to be twinging. It's very frustrating,

Return to top | Comment on the diary


23 Dec 2006 (Saturday) Permanent reference to this entry

Opera bug?!
WMP bug?

Well this is strange. I think I've found a bug in Opera. It appears that src attribute URLs in the <embed> element can't be relative. They'll be treated as absolute. At least, the problem doesn't occur with IE7 and my understanding is that the URL should be resolved prior to being passed to the plugin. No, that's not quite it. A src='/excerpt.mp3' is resolved to be http://excerpt.mp3 from the root of my server whereas a src='excerpt.mp3' from the same place is resolved to http://buttercup:2345/excerpt.mp3 which is correct. Examined by using WMP as the embedded object.

And there's some sort of oddity by either Internet Explorer or Windows Media Player whereby the src requested will have URL encoding removed from it. That is, if you use '/hello?file=this%26that' it will result in a GET request for '/hello?file=this&that'. Obviously this is not what you asked for and has a completely different meaning.

Return to top | Comment on the diary


22 Dec 2006 (Friday) Permanent reference to this entry

"Know what you want"
Broken comments.

On a whim I searched for the phrase 'Know what you want', and came across [Track]Distant Sun[Track], by [Artist]Crowded House[Artist]. I hadn't really noticed the line in it before, possibly because I tend to listen to Crowded House as a background thing, or just because the chorus is more memorable. Hey, it's strange what's in the things that you think you know.

Damn; my comments form on the diary has been broken for a little bit. Looks like my changes to the HTTP server code got a bit confused and masked the body of the request. Oh well.

Return to top | Comment on the diary


21 Dec 2006 (Thursday) Permanent reference to this entry

Bloody mobile.

I like my mobile phone. It's great. It makes phone calls and it sends SMSs. It doesn't do a whole lot else, which is just what I want. Only it doesn't support the 'long messages' thing. That is, I believe, when the message is longer than a single SMS and sent in multiple parts. Each sent message is itself is flagged as being part of a multi-part set and must be reassembled at the phone. Now, if it was me designing the protocol, I'd use a flag in the headers to indicate that the message was part of a set. And if that was the case, the phone software would spot the flag it didn't understand and present the message as just , rather than trying to display content that it didn't understand. At least, that's how I think it works. If I was really that interested, I'd look at the GSM specs and find out, but I've not really got much need to do so.

So I've received a message today which I can't read because it's one of these 'long messages'. Whenever I get those from people it's always important. Damn, damn, damn.

Repeat many times - "this is not the end of the world".

Return to top | Comment on the diary


20 Dec 2006 (Wednesday) Permanent reference to this entry

Farren.

I went to visit Farren yesterday. We were meant to have been going out shopping and stuff, but she's ill and is still getting over her broken foot, so instead I just visited her. It was really strange seeing bits of Downham again.

I had a dream about Caroline last night which was less memorable than most. I know that I did something good, but that I felt sad because of it. I know that she was very unhappy but I don't know why.

I've been really tired today. Just tired, unable to concentrate and headachey. I thought it was just because I slept badly and hadn't had much to eat, but I had some lunch and then fell asleep for a few hours and I still don't feel much better.

I'd really like to know why I only recognise Important things so far after the event. Bah.

Return to top | Comment on the diary


19 Dec 2006 (Tuesday) Permanent reference to this entry

What do you do ?

For some reason I find it very hard to say what it is that I actually do. Or rather, the things that I have done which are important. I tried a little while back in some jotted notes, but there's nothing specific in there. I'm not sure it's because I'm unfocused - although it might look like that, especially from the number of unfinished projects. (That said, someone I was talking to earlier today suggested that they hadn't actually had a project that they'd seen to completion since around 2000, which is probably a very frustrating task)

I tried to explain to someone else, only last week, that I don't think that you should advertise yourself. I guess that's why I didn't like doing comp.sys.acorn.announce postings as well <laugh>. I don't like doing the 'look at me and what I've done'. As I say this, I think back to the 12 December 'hey look at all this funky stuff I've done' article and wonder if I can say that about myself. Maybe I'm selective in these things.

It all comes down to the fact that you will always think you are good, so anything you have to say about yourself will obviously be biased. The only way that anyone can judge the worth of something is by secondary sources. For software, that means that the company's advertisement means nothing, but a recommendation by a trusted group is valuable. For people, it means that if I say I'm wonderful and great, and I can could to a million without moving my lips, that really doesn't mean that much. Anyone can say that, so surely it's redundant to do so ? What counts is what others, or possibly your actions, say about you.

Your actions ?

<laugh>

<laugh>

A little while ago I wrote something about 'waiting'. There's a whole discussion involved in that, but I have the feeling that I've just stumbled on to an conclusion to that discussion whilst thinking about this. Maybe.

Return to top | Comment on the diary


18 Dec 2006 (Monday) Permanent reference to this entry

Search For Spock.
TTYLink.
Last.FM submissions.

A few days ago I flipped channels and saw part of 'The Search For Spock'. One of the Klingon commanders seemed very familiar in his voice and manner. I was sure it was Doc Brown from 'Back To The Future'. I finally remembered today to check, and it turns I was right - it was Christopher Lloyd.

I was just about to pack up for the night when I got a chat box pop up from someone connecting to the TTYLink port. I haven't seen anyone - other than Ian, I think - chat on that in years. Apparently they did some work on the original Talker server code I wrote years ago, which eventually became the RISCtalk server. It was always more advanced than my code!

I did I brief investigate with tcpdump on Last.FM data this evening. After a false start it does look like the server is responding badly. It's sending a 'you didn't give me any post data' response before I've actually given it any. Either it's wrong, or I'm misunderstanding the HTTP protocols <sigh>. Either's possible. I've left a description of the problem on the AudioScrobbler developer forums which they do read and reply to. Maybe there'll be something said about it - maybe it's me being poor.

Return to top | Comment on the diary


17 Dec 2006 (Sunday) Permanent reference to this entry

Torchwood.
Sugar.
CNAME.
Last.FM problem.

Tonight's torchwood was quite poor, I thought. Interesting premise - people having fallen through a rift in time, 50 years into the future. Been done many times before, but always interesting. Yet they took it nowhere really. A little bit of character development was really the only thing that I think was achieved. Oh well.

I'm not sure that it is the sugar that makes my mood change so. Still, I'm probably better off without so much sugar.

I had a cunning thought this morning. Not that it's a lot of use in general, but I can actually point a *.gerph.org at my home machine, even though it's a dynamic address. Because I register a dyndns.org address, I can use a CNAME to point to the gerph.dyndns.org name. Then it will resolve properly. Voila, me.gerph.org now points to my home machine. Not that it runs any services that I advertise except ttylink. But it's there.

I noticed, looking at the server logs today, that Squid thinks that I'm abusing the proxy with my last.fm client. I'll need to look at the code more carefully because I don't think that I am. Could be a mis-stated content-length for a POST request, I suppose.

And my data transfer counter doesn't appear to work quite properly. I'm not entirely sure why, though. It doesn't record the end-of-day reading, which means that it isn't being 'stopped' properly. Confusing anyhow.

[Note]
But if you lose your faith
Know that I am still your friend
And if the sky falls down
Know that I will still support you.
Riverside - Out Of Myself

[ [Track]In Two Minds[Track], from [Album]Out Of Myself[Album], by [Artist]Riverside[Artist] ]

[Note]

[Note]
Yesterday the sun shone on the party
And everybody shone at the sun.
But now I'm alone and the sky turns grey
There's a ghost across the wind.
Mostly Autumn - The Spirit Of Autumn Past

[ [Track]The Spirit Of Autumn Past (part II)[Track], from [Album]The Spirit Of Autumn Past[Album], by [Artist]Mostly Autumn[Artist] ]

[Note]

I was trying to find a track that matched my mood this evening. I couldn't decide, so two will have to do.

Return to top | Comment on the diary


16 Dec 2006 (Saturday) Permanent reference to this entry

Tree up.
Monitoring my net usage.

I've moved the downstairs stereo today, so that the tree can go where it was. So instead, it's sitting behind the sofa. The squeezebox is on the other side of the room. All works anyhow.

I couldn't sleep last night for ages. And when I did I kept waking up and being unable to move. On the plus side, I managed to put together a coherent sentence in my head that I've been working on for a bit. <laugh> It takes me a while to string words together.

Since Demon clearly don't want to warn me when my net usage exceeds their 'fair use' caps, I've written myself a little script which will do so for me. If I've got the code right, of course. Tests show it to be correct. The script will run once an hour and evaluate what I've done today. If it looks like I'll be exceeding the 'warning' level I've set myself (4/5 of their 'maximum') then it will mail me to let me know. If within a day I exceed the amount which would be necessary to sustain over the full 30 day period (ie limit divided by 30 days) then it will give me a sterner warning. At the end of every day it will then record the network usage so that I can be sure that my records are correct.

It hasn't taken me all that long to do this, and I understand that it would be more complex for multiple users, but still it would prevent a lot of excess frustration from users. It's always better to warn of possible problems than to just slap people for them.

Return to top | Comment on the diary


14 Dec 2006 (Thursday) Permanent reference to this entry

Brokeness.
Angela.
Demon being crap.
Greebo.

Whilst working on something completely unrelated thing I got a crash from RISC OS. A very brief examination (ok, I spent about a minute on it) tells me that EtherH was issuing Service_DCIDriverStatus with a DIB pointer of 0. That's a little naff. Maybe it was a minute and a half.

I rang Angela today to make sure that I'd got her address right. I had. Yay. She sounds very well and seems to be having a great time.

I'm a little annoyed at Demon today. I got a letter from them saying that my network usage was excessive so they were cutting my bandwidth. I'll accept that I'm using probably more than I should. That's fair. But I've not changed my behaviour on the 'net at all recently. What they did do, about a month or so ago, was to quadruple my bandwidth from 1Mbps to 4Mbps (actually the rate claims to be 5632Kbps). So, by doing so I've been able to use the 'net more and thus exceed. So what's their solution to the problem ? Reduce my downstream bandwidth to 128Kbps for a month (during 'peak' times). So from 1024bps up 4x, and then penalised back to 32x lower. Upstream remains the same - still 448kbps. So I'll now be about 4x faster uploading than downloading. I wouldn't have minded a little bit of warning that I was using a limited service - I believed the service to be uncapped.

Greebo's got a sore eye. He's squinting with his right eye and it's watering a bit. I don't think it's anything serious; he's probably just got something in it and then rubbed it or something so it's sore.

Return to top | Comment on the diary


13 Dec 2006 (Wednesday) Permanent reference to this entry

Funness.
VerizonMath.
Dead CDs.
Julian's stuff.
Ouch.

I was wondering last night, after writing all that ramble and before falling asleep, why it is that I get excited over little silly triumphs. Like 'Yay I made a cup of tea!' and do the silly dance that goes with it ('sokay, I don't do the dance when there's anyone around), and then feel crappy a little while later. I use the example of 'tea' because it's trivial, but it could be any particularly simple thing that I've done, like 'yay, I've drawn a map of the world using polyconic projection!' (yeah, kinda I included that for effect, 'cos it was cute, but it's not actually that hard), or something similarly pointless. It seemed to me - last night, during that period where just about anything seems a good idea until the morning - that there must be a reason that I tend to flip from being so disproportionately excited to being equally fed up.

I also wondered about what the graph might look like and whether the period of the transition was large or whether it was a very rapid change to being fed up. I didn't come to a conclusion other than that it's not amazingly rapid; and (as I recall - and it's always hard to remember what it feels like for your mood to change) it seems to be between half an hour and a few hours. So that's not amazingly quick.

But anyhow it occurred to me that there must be a reason. And, this morning, the thought occurred to me that I have a lot of sugar in my tea - 3 spoons - and whilst I've never noticed that it made much of a difference to my mood in general, almost everyone else says that sugar is a big factor. So I thought, 'maybe it's the sugar that changes my mood'.

Thinking about it now, the way to investigate this would be to remove sugar from my tea for a bit. Since I don't have extra sugar in other things - I don't like chocolate much because it's too sweet, and I don't really eat much other sweet stuff. Of course, unless I can split myself into two people - one who has no sugar, and one who does - it's not actually possible for me to know whether it's made any difference.

So... the solution to this problem is simple. Place me in a sealed box, together with tea making equipment, and the usual things I would be doing. Then, never look in the box. Because until you look in the box, I'm both drinking tea with sugar and not drinking tea with sugar - until I'm observed, I'll be doing both. I think the flaw with this is that without being observed - I presume that my observing myself doesn't affect the little world that is the inside of the box - there's no way to get any result out of the system. And I think there's a problem with the fact that the whole point of schrödinger's cat is that it's a macroscopic event being affected by a quantum event.

My physics is a bit rusty so although I know the above to be rubbish, its basis in physics may also be rubbish.

Either way, I'm going to try avoiding sugar. Since there's only two real actions I can take - to keep having sugar as normal, and... not - it seems that the 'not' is a useful proposition.

I just have to mention the whole 'Verizon-Maths' thing that has been going on at the start of this month. In case the site goes away - it being a transient thing and all - this is the problem that seems to be endemic in Verizon support to not understand the difference between '0.002 cents per kilobyte' and '0.002 dollars per kilobyte'. It seems quite bogglesome.

I've got a load of CDs lying around here of discs that weren't written right, or have other faults on them. I'm loathe to throw them out because there must be some use for dead CDs. In the past I've used them as coasters (hence the namefor dead CDs) but I've got enough of them now. I'm sure you could make some sparkly christmas arrangement with them but I'm not talented enough for that.

I've just noticed that I've got some bits on the side that I had meant to send to Julian and forgot about. Ooops. I'll give them to him when he comes up - it'll just be easier.

I took a chunk out of a finger today when I was trying to open a 'tamper-proof' packet. It hurts when I type now. Grr.

Oh, and my new HTTP-CGI-server-for-my-comments-form-thingy appears to be working.

Return to top | Comment on the diary


12 Dec 2006 (Tuesday) Permanent reference to this entry

Dreaming, annoying.
Coincidences.
Fixing bits.
Servers.
Covers.
What stuff have I done ?

So my first dream last night, before I was woken by Greebo clawing my cheek, was about going to a large open air concert. Unfortunately it was also attended by 12 people from another planet who were intent on killing everyone on earth - and obviously decided to start at the concert. Before everything started I left to warn people. Nobody seemed to believe me when I told them that they should leave the city because of the 6 foot aliens who couldn't be killed were going to kill everyone. When they started to attack the concert, everyone ran screaming, and I ran too (ok, so you have to say it like that), down towards the river and bridge, over the bridge and hiding in a barn that seemed to have a lot of chicks in it. Watching through holes I could see some of them coming over the river, killing people as they went. Each was going a different way - since they couldn't be killed, having strength in numbers wasn't all that useful. One stole a bike from the barn next door, and didn't see me, but another found me and shot me. And it turned out that I couldn't be killed either. But I could pass out. When I came around, all 12 were staring down at me and explaining why they were there. I'm sure it made some sense at the time, but now it's a blur. My only thought was that there was nothing I could do.

Greebo woke me, then, with a claw. I think he was just stretching.

The second dream, which I think I drifted straight into, was more normal. I was going to see Caroline's family for a party. In fact it was similar to the last party, but certainly not just reliving it. I left after a very short while. Is it odd when even in your subconscious you're as insecure and scared as in real life ? Aren't you meant to be the person you want to be in dreams ? Uh, I really don't want to follow that line of thought, do ?

When I woke up I had a few lines floating around my head, as I usually do.

[Note]
It's just a day
Like any other day
A beautiful day for an accident, let's say
Zero 7 - The Garden

[ [Track]Waiting To Die[Track], from [Album]The Garden[Album], by [Artist]Zero 7[Artist] ]

[Note]

I don't like coincidences and they bother me when they happen. I was emptying the diswasher today and as part of my running train of thought I was struck me the image of 'The Scream', the painting. Now I don't actually read papers or watch tell that much, and I hadn't at that time used Google today. So when I loaded up google and found it had a little picture of The Scream as its logo, it being Edvard Munch's brithday today. So... what's that mean ? That I'm picking up birthday greetings transmitted by aliens on my teeth ? Or... ?

This evening I've done a few fixing bits on the diary, 'cos it's been annoying me and I wanted a break from other things. So, I've now written another web-mail-gateway thing for myself. I've done this a few times and each time I wonder why I've done it again. This time, though there's some very reasonable reasons. Honest. Previously I was using a FormMail.pl script under Apache's CGI interface. That's fine except that I don't really want to expose Apache to the outside world. The reasons for this are pretty simple:

  • Apache's well known and thus a target for people to attack
  • I've found Apache to be a hassle to set up in an isolated way so that internal and external pages are completely separate, so I would prefer to have a completely independant version for the external stuff.
  • I don't want to run Apache twice because it's big and I'm only using a small server.

So instead I've got my own server. It's based on my simple HTTP server that I wrote a while back. It's not all that bright, but it's completely different to anything else so it'll at least not be a target for people. Then putting the same sort of functionality into it for passing emails on to me was pretty easy. This should mean that 'comments' link after each diary entry works again, rather than just saying 'email me here'. The only disadvantage is that it relies on my server here, which means that my server has to be on. Not that it's off that much anyhow, but it does make something of a difference.

Yesterday I used the same HTTP server code (it's all perl and pretty easy to repurpose) to make a simple web-service for Chris. I was a little amused that he was surprised I'd written it quite quickly. It's not all that hard to implement something that just responds to simple requests. It's only an interface layer, after all.

A few days ago I found out that one of the [Artist]Beth Orton[Artist] tracks that I really like, [Track]I Wish I Never Saw The Sunshine[Track] was originally by [Artist]Ronnie Spector And The Ronettes[Artist]. Handily the 'Second Hand Songs' site has quite a bit of info on the cover tracks. It's surprising what are covers and what are not.

A few days ago, searching for something else, Dad came across an album called [Album]In A Metal Mood[Album], by [Artist]Pat Boone[Artist], of originally heavy tracks, done in a 'big band' style. Very strange.

[Remainder of entry was written a few days ago but postponed becaue... well, I don't know but it was... it's a bit rambly]

I found some notes I made a while back (oh, a year or so ago) on the things I've done. It's quite surprising really. I made a little list of the general Internet things that I'd done... it's not actually all that long, really...

  • RFC 495 Telnet (server)
  • RFC 821 SMTP (client and server)
  • RFC 862 Echo (client and server)
  • RFC 863 Discard (client and server)
  • RFC 864 Chargen (client and server)
  • RFC 865 Quote of the day (client and server)
  • RFC 866 Active users (client and server)
  • RFC 867 Daytime (client and server)
  • RFC 868 Time (client and server)
  • RFC 959 FTP (client)
  • RFC1035 DNS (client and server)
  • RFC1036 NNTP (client and server)
  • RFC1179 LPR (client and server)
  • RFC1256 ICMP Router discovery (client and server)
  • RFC1288 Finger (client and server)
  • RFC1459 IRC (client and server)
  • RFC1661 PPP (implementation based on BSD PPP driver)
  • RFC1928 SOCKSv6 (proxy)
  • RFC1939 POP3 (client)
  • RFC1945 HTTP 1.0 (client and server)
  • RFC2030 NTP (client)
  • RFC2045 MIME (miscellaneous uses)
  • RFC2131 DHCP (client)
  • RFC2397 Data scheme (fetcher)
  • RFC2433 PPP MS-CHAPv1 (implementation)
  • RFC2472 IPv6 over PPP (implementation)
  • RFC2516 PPP-over-Ethernet (client and server)
  • RFC3164 SysLog (client and server)
  • RFC3927 Link local dynamic address allocation
  • (?) Multicast DNS (client and server based on Apple rendezvous/bonjour mDNSCore)
  • (many) CGI (servers)
  • (many) RLogin (client)
  • (many) RExec (client)
  • (many) SSH (client based on putty)
  • (W3C) CSS1 (parser)
  • (many) HTML (parser, renderer, simple DOM)
  • (W3C) SVG (parser and bi-directional converter)
  • (many) RSS (parser, reader application, generators)
  • (many) Atom (parser, generators)
  • (many) NAT and packet filtering (based on IPFilters)
  • (many) Wake-On-LAN (client)

Most of which are pretty rudimentary, but some of which are quite wide. I didn't feel I could include the IP, TCP, UDP and Multicast bits, because although I've worked with and extended them within the BSD sources they're not really enough to warrant much in the way of description. You can't categorise it, really, but I made the entire Internet stack completely restartable - you can reinitialise any part of it and it recovers from where it was (if sufficient information is available). I'm actually really pleased with that, although nobody will probably care.

<laugh> And it doesn't get across quite how many IRC clients I've actually written (about 6, I think), including one that I wrote in a day from scratch. Yeah, I'm quite pleased with that.

I ported Mozilla Classic renderer, and it performs exceptionally well for the task it was designed for. Albeit without images.

Then there's the graphics formats and processing that I've done stuff with. Might as well list them as I'm thinking about it.

  • Generic image file conversion system (ImageFileConvert)
  • Generic image file rendering system (ImageFileRender)
  • BMP creation and reading
  • ICO creation and reading
  • JPEG creation and reading (IJG based)
  • PCX reading
  • PNM reading (PBM, PGM and PPM)
  • Sun raster reading
  • SVG creation and conversion (already mentioned above, actually)
  • WMF raster reading (LibWMF based)
  • XBM reading
  • JPEG reading and rendering (IJG based, many optimisations and support for non-standard forms)
  • CC ArtWorks rendering
  • PNG creation and reading (LibPNG based)
  • Bitmap translucency and alpha channel rendering
  • Generic colour translation (regular operations such as contast, brightness and gamma)
  • Abstracted video system to allow multiple display drivers to be used
  • Implemented rescalable Teletext mode

A lot of that isn't down to what has been done to the graphics system, but how it was done. There's a whole lot of good (in my opinion, obviously) design in there so that the whole system is flexible and extensible.

Then there's the more low level work which involved more fun things which aren't really categorisable...

  • PS/2 Intellimouse and Intellimouse+5 support
  • Touchscreen driver (Zytouch), and the necessary abstraction to support it
  • Abstracted hardware implementations for miscellaneous RISC OS hardware (RTC, NVRAM, Timers, IRQs, etc)
  • Converted the entire operating system to be 32bit, rather than 26bit (it seems wrong to give this same weighting as all the other things!)
  • System initialisation replaced to allow easier porting to new systems
  • System modularisation to split off tasks and make them easily upgradable
  • Backtrace support for all kernel functions

That doesn't seem much, but it was a huge task to update things for 32bit, and has no user-facing impact, of course. The backtrace support is more interesting, though, because it's pervasive. It's also one of the less transferrable of the skills - unless you happen to be working with an ARM-based system which has no inherent backtrace ability it's not going to be all that useful to know. Amazingly useful, though.

What have I done on filing systems ? Actually, not that much, although in reality there's a whole load of little things that you never see and which are far too difficult to quantify.

  • Extended CDs to support RockRidge long filenames and Joliet long filenames.
  • USB Mass Storage device driver (SCSI over USB implemetation)
  • LanMan extensions for encrypted passwords, and remote operations.
  • Large scale stability improvements by restricting executables to well formed files

I'm bored now, so I don't really think I'll keep listing that sort of thing. The unfinished things are far more fun. It makes me sad to think of them, though. Oh and those which were finished, but never had any sort of real use. Just looking at the folder here, I've got a bizarre collection of things...

  • A calendar rendering and scheduling toolkit
  • An MP3 buffering system for AMPlayer (part of the Homeworld port)
  • A partial Homeworld port
  • A binary data dumping library (intended to be a generalised memory dump gadget)
  • An Opera skin processor for IconBorders
  • So many other styles of borders it's silly (I'm sure I had a little gallery of them somewhere but can't find it now)
  • A Pascal compiler toolkit for Norcroft (using P2C)
  • Fast sprite super-sampler (part of the DrawFile-icons project)
  • Many gadgets using the timers for frivolous (K.I.T.T. lights) and not so frivolous (AMPlayer control gadget) tasks
  • Generalised key binding module
  • Spreadsheet management library and renderer (using JavaScript as a processor for equations)
  • Near complete uPnP implementation
  • Application update fetcher Toolbox object
  • Near-PThreads implementation
  • Toolbox-application harness (JavaScript to implement Toolbox applications)
  • Map position fetching gadget (specify a location and it fetches and renders a map of it)
  • Iconbar replacement tool (moves icons from the iconbar to independent plugins)
  • A few filer extension tools which were only ever toys.
  • The 'AMFiler' project - a full-screen MP3 player front end for use with a remote control (pity the RiscPC is far too big for this to be practical)
  • The 'RO-PRM' project - an XML description which could be processed by XSLT to give documentation in the style of the Programmer's Reference Manuals
  • Many development tools which probably wouldn't ever be useful outside of my own use.
  • Generalised database fetching interface, using multiple data sources
  • Software implementations of hardware using abort-trapping to provide memory mapped registers (many chips, but most usefully a couple of audio MPEG decoders)
  • Special versions of Doom, with 3D glasses support are lying around here somewhere.
  • A partial Quake 2 port
  • Operating system level debugging and diagnostics tool, using JavaScript as it's user-facing language
  • Generic NMEA parser, and GPS source abstraction
  • Earthquake seismograph SEED parser
  • TV schedule plugin interface and fetchers
  • PFR parser and conversion tool
  • SNMP interface module

And I'm feeling that I'm just listing things randomly now, but this is only scratching the surface of the things that I've actually done. It's not even a slightly complete list. I was chatting to someone on the talker a while back and expressing surprise that I'd written something or other, as I didn't even remember doing it, but there it was. All 'nearly finished' and even mostly documented. I wonder if it's irony that I can't remember now what the thing was that I couldn't remember then. I think it is, but I'm never quite sure. I guess it'd be easiest to just dump the list of registrations somewhere (in the future) as that gives most of the things that I've done. At least, if they went as far as being registered.

And as well as that sort of thing, I've obviously designed and written the whole build system that goes around it. That's a perl harness to amu and I was actually really proud of it. Runs so amazingly slowly on RISC OS, but it's usable on Linux.

Hey, and then there's silly private projects like the generalised cover-fetcher which, I believe I've referred to in the diary on occasion. It's now reached the stage where it's able to fetch Biographies, CDDB details, Covers, Discographies, Lyrics, and Reviews. It's also got a dodgy 'Moods' fetcher, but it's poor because it uses AMG as the source. It's all nice and generic and 'pluginable' (which ain't a word, but it'll do for now) and written in Perl.

The number of little debugging that I've written is a little surprising. Maybe it's because all the other tools are poor, or maybe I'm not using them right. To be fair, though, the debugging tools that do exist are poor - DDT is... not very good (and certainly won't work on any of the modern systems), and I've never actually tried the other debugging alternatives. I guess, I'm used to not working with an inline debugger, so much so that I don't really need one. That said, debugging a system from processor start-up is far more fun than playing around in a debugger - "Did the screen go blue ? Nope, so we didn't get that far then". Ah, joys.

And of all this random waffle... what of it actually matters ? It's all fun and it's all had a purpose at some point. Usually things get written for a particular purpose, but are never actually required. I think I touched on this a while back. How many projects get left by the way-side whilst others grow ? And does it matter that they get left behind ? If you learn something, and if they're still around in case you need to resurrect them, does it matter that they're not used yet ?

Well, I can always say that I've learnt a lot from them, but it's not exactly easy to quantify. I mean, if someone asks you about whether you've ever done any work with (let's say) a browser, what might I say ? Strictly, the answer is 'yes, I've ported Mozilla', but that doesn't quite cover it. 'Porting Mozilla' can mean all manner of things. If you were on linux, then it means compiling it. If you're Peter Naulls it means making the whole thing run on RISC OS (a far more impressive task).

For me, it meant picking and choosing what I wanted for the task. I didn't want scripting, and I didn't want many of the more advanced features. More importantly, I didn't want to use C++ because it's so poor on RISC OS, so my only choice was to use the Mozilla Classic source and pick and choose my bits. Using just the basic style system, the html parser, and the renderer (and some support code), gives a really useable browser. As the goal was to create a documentation viewer, it was great. No images though, as that was a separate modular component that would be plugged in. Amusingly, whilst it didn't support images it did support frames, and plugins. And could itself be embedded in another browser as a plugin.

But that's all very longwinded and filled with caveats. And it doesn't cover any of the 'modern' issues with browsers. On the plus side, I guess, it's a task which fits well to its goal.

And if I look at the work that I've done it's been quite wide-ranging, so what's that say about me ? That I have a short attention span and have to work on many things before I get bored ? Well, that's almost true really, but I do finish things that are required. It also implies that I like to experiment with things. I'm not sure that's a good thing in other people's eyes.

Actually, this bothers me quite a bit. I ask myself these questions - about how to do things on the computer, or about the world in general - and I wonder if other people do the same thing. Do other people actually try to work out how they decide to walk on the road-side of someone that's coming toward them ?

Ok, let's walk through that one because it's probably sounding insane. Usually I pick and choose the people that I walk on the road-side of as they're coming toward me, or as I go past them. It's not a conscious thing normally, and I guess everyone does it. A while back I was walking down the street and I was trying to work out what it is that guides me on that decision. So whilst I'm trying not to think about doing it, I'm watching myself deciding what to do. I came to the conclusion that it was something like women and children go away from the road, teenages go closer to the road than me, old people go away from the road. There were some other odd little rules like bikes going where they like, and anyone who's much bigger than me goes where they like. Now that all seems pretty obvious. But do other people try to work out those rules that they're following ?

My point - (hey, Julian!) and I do have one - is that I try to ask these questions or to experiment with things and I'm not sure if that's what other people do. Or whether it's normal. Do people look at the sky, see the sun shining in beams through the clouds and try to picture what the cloud's shape must be like to make those beams ? Is asking the question of whether doing this is what other people a normal thing ?

I dunno. It's all a big question. It's not like an important question, but it's one a part of who I am to ask, I guess. Which is bizarre, 'cos although I ask in my head or I experiment when doing computer things, I'm incredibly conservative in person. Ooh... Could that mean, then that how I think and how I use the computer are - to me - treated as the same sort of thing ? I'm pretty sure that's kind of bad. Asking myself that question probably isn't all that wise, either.

How did I get here ? Oh. Things that I've done, to things that I think. Anyone might think that tend to drift in my thoughts <laugh>. I guess this is sort of like the odd error-handling ramble I did a few months ago. It's just an odd way of expressing what I'm thinking. Or something.

I guess all this is sort of just a way of noting to myself some of the random rubbish that I've done so that I don't forget. I do have difficulty trying to quantify what I've done. So much so that I feel sometimes that I've not actually achieved all that much. And, in a way that actually matters to me, I've not.

I suppose I must go to bed.

Return to top | Comment on the diary


11 Dec 2006 (Monday) Permanent reference to this entry

Poor Skype.
Greebo.

Whilst chatting to Chris this evening, I noticed a rather poor feature of the chat. It only has 3 lines of input history. Now that's not usually a big deal because you usually only want to edit the line above, but... seriously, it's not that hard to have a larger history and it seems rather foolish to limit to only 3 lines. It's very noticeable. Actually the chat's ok in general, but sometimes it feels a little basic.

Again I had Greebo on the bed with me last night. <sigh>

And he's here now I've got into bed. Obviously he's just been waiting for me.

Return to top | Comment on the diary


10 Dec 2006 (Sunday) Permanent reference to this entry

Greebo.
Songs.
Diary.
Ramblings.

Greebo slept on the bed beside me again last night. It's very cute and nice, but it makes it a lot harder to sleep, 'cos you're always worried you'll knock him off.

I awoke with a line in my head, without being completely sure where it was from - 'so the days they turn into years'. After a bit, I was pretty sure it was Genesis, but I couldn't say what the track was. It's strange; some things I can get the track more quickly than the artist. Maybe I just don't know what 'And then there were three' as well as the other albums.

[Note]
And soon we feel,
Why do a single thing to-day,
There's tomorrow sure as I'm here.
So the days they turn into years
And still no tomorrow appears.
Genesis - And Then There Were Three

[ [Track]Undertow[Track], from [Album]And Then There Were Three[Album], by [Artist]Genesis[Artist] ]

[Note]

A minor screw up in the remote diary submission code meant that someone else's email ended up in the diary earlier. Oops. I've fixed the problem now, and it shouldn't happen in the future, but sorry to Chris for publishing his email. Doh.

There's actually something odd with the diary processor on linux now. It seems to want to process all the URLs with queries on them - all the comment submission links keep coming up with 'unrecognised URL'. The RISC OS processor never did that. I have no idea if I fixed it, or there's a switch to change for that behaviour. It is mildly annoying though.

Greebo's with me again tonight. Fast asleep as I write this. Aww. I think he is just a little lonely.

My mind's gone quite utterly blank. I was thinking about something earlier whilst I was cleaning my teeth and half thinking to myself 'this is a strange thing to be thinking about'... only it's gone now. Damn you, short term memory. Was it something about religion ? I caught the end of some Robin Hood thing which Mum and Dad were watching a few nights ago, and - maybe I'm just reading things into the short segment that I saw - there seemed to be an overtone (over the obvious 'religious crusades', which I believe were the backdrop to the story in any case) about war and terrorists intentionally trying to escalate things. I think, though, that it's probably just me reading more into it than there was. But I don't think I was thinking of religion at that time.

Was it something about being sane ? It could have been. I have a feeling that it would have been somewhere around that area. It was definitely related to something to do with Torchwood. Or something which was triggered by something which was on Torchwood. Or some derivative thereof. I think 'thereof' is the word I want.

As I sit and stare into space, and listen to Greebo snore, and the wind outside, I can't think what it was at all. The wind... It's been windy for weeks now, it seems. All night. I don't know why but each time I hear it, it gives me that feeling that I should be somewhere else. It's not that I feel I should be out in the wind. It's more that I should be somewhere to stop the wind. Does that make any sense ? I don't know. I've given up on trying to find meaning in the strange things my mind connects these days. The wind makes me worry. <laugh> The funny thing here is that I'll never remember the kind of face that I have as I write that. It's a sort of 'perplexed at myself' sort of look. Like you can't get across hand gestures in phone calls, you can't really get across expressions to your diary. Anyhow, it makes me worry that it's hurting someone. No, that's not it. That someone's scared by it ? That's closer.

I still can't sleep, so I'll mention some random stuff I was thinking about on the way home about a week back. It's about phones and how you can have all sorts of stuff on them now. I was wondering how long it would be before the trojans began to appear. Maybe they already have and I'm too backward to notice. Consider that you've installed a funky little game and you've played it. It's great. Now, you exit the game and go back to the phone proper. Or so you think. Really it's just pretending to be your phone, just doing everything you think it should do. When you make your calls it does what you ask it, but it also records everything you do. Probably not the talky bits, but it can record buttons. So if you give your pin number or anything, it can have those things. How would you know that your phone wasn't doing what you expected ? I guess it would act differently. Maybe it'd be slower than usual, because it had to go through the contortions of the recording / emulation process. Maybe it wouldn't look quite the same as you remember for your menus because the emulation wasn't all that great. Maybe it'd send messages that you had no recollection of sending. Better still, if you're on a GPRS system, it could be communicating with IP and even spamming out mail for you. On your incredibly expensive mobile bill. Oh the fun they might have.

I'm sure that people in the business must know all this and know all the many steps they've taken to prevent such malicious use. But I don't so I'm free to wonder and be scared by what I don't understand. I can see many ways to make such things difficult, but it's hard to see any way of preventing this sort of thing happening without removing the ability to provide user-installed, executable content. It's probable I'm just paranoid.

Maybe it's like the whole reading emails thing. It shouldn't be an issue that you 'shouldn't open emails that you don't expect' (or whatever the current recommendation, from whatever people you take such advice from, is). Whilst it's true that the act of observation does change the outcome (oh, that's just too strange to be saying here) it shouldn't be the case that the recommendation is to not observe. How would it be if we just threw our (physical) post in the bin if we didn't recognise the postmark ? Or ignored phone calls if we don't recognise the caller ID (ok, so I actually do that if they don't give a caller ID, but that's not the point) ?

It's just wrong. It's putting the onus for a failing in the system on the end-user, rather than removing the cause of the problem. In the case of emails the problem (in the vast majority of cases) is that the HTML system is insecure and provides both information about the association of email addresses and IP addresses, and provides a vector for attacks. So rather than pissing around saying that users shouldn't be viewing their email because there's a possibility that it may be a security or privacy issue, fix the bloody problem. If you can't fix the problem, remove the cause entirely - stop allowing HTML to be used if it's that much of a danger. At the very least, don't run executable content, or perform remote fetches which provide that implicit feedback which is a privacy issue.

I realise I'm talking about an old problem, and I feel like I'm kind of talking from a position of ignorance. Oh well.

Oh here we go... my mind's playing silly buggers again...

The problem with computer systems is that they're not adequately tested. The fact that faults are found shows that. How long will it be before systems are designed from the ground up in a way which, at all stages, it is provable that there are no faults ? Such a system would consist of components whose interfaces could be shown to be incapable of performing any but the actions which they were specified to do. I'm sure such systems exist and I have vague recollection of specifying things in that way for one of our courses at university, but it was all very accademic. I guess there's one thing in specifying things so that there are no unforeseen side effects, but if your specification is wrong then you're stuffed.

Maybe my brain's actually no longer working and is just spouting nonsense. I think that may be the case. I'm going to try to follow Greebo's example and sleep. Although I will try not to snore like him. I don't know if I snore. Nobody's ever told me I do. Certianly Greebo's never mentioned it. But then he doesn't say much except 'mew'.

Oh damn. Just as I close the editor, I get a flash of what I was thinking about whilst cleaning my teeth. But then it was gone and all I was left with was the word 'waiting'. Is it wrong to hate your own mind in the third person ?

Return to top | Comment on the diary


9 Dec 2006 (Saturday) Permanent reference to this entry

Greebo.
Sleepless.

Greebo decided to come and sleep with me last night. Not at the bottom of the bed, right beside me, where the pillow would have been if I'd not been reading. So when I decided to go to bed I had to pull the pillow down and he wouldn't move. So I just left it on top of him. He's only once sat on the bed, never mind slept on it in here. Aww.

Return to top | Comment on the diary


7 Dec 2006 (Thursday) Permanent reference to this entry

Double it up.
Greebo.

Glancing back in the diary, whilst I was trying to work something out, I came across a December 2004 entry which listed the summary information for the MP3 collection. Somehow in those two years, the collection has doubled in size.

JPEG Files: 9524    Size: 1127136 K
Text Files: 30471   Size: 125648 K
MP3 Files:  33425   Size: 181266288 K

The number of text files has more than doubled because there are more than just lyrics present now, with album reviews, biographies, CDDB details and discography lists.

Greebo's been wanting a lot of attention again today.

[Note]
And if one truth leads you to fly
I still don't believe in your reasons why
I just don't believe in why.
Beth Orton - Central Reservation

[ [Track]Feel To Believe[Track], from [Album]Central Reservation[Album], by [Artist]Beth Orton[Artist] ]

[Note]

I was going to ring Caroline today, but for a variety of reasons I never got around to it. I don't know why it's so difficult to just... say something. Actually, I do know part of why it is. It's laughable really. If I say something wrong then what little relationship I have will be shot. And however small that relationship might be, I guess it's more important to me that I have something, rather than nothing. That sounds strange.

Return to top | Comment on the diary


6 Dec 2006 (Wednesday) Permanent reference to this entry

Website registration.
My own site.

Sometimes you just boggle at the lengths people go to with security. Or maybe just their lack of thought. I registered with a website today and received the usual email to get me to activate my account. The email contained my user name and password. Ok, that's poor. But it went on to say 'Please do not forget your password as it has been encrypted in our database and we cannot retrieve it for you', which was just bogglesome. Internally they'll encrypt it, so I can feel warm and fuzzy that the password is safe, but they'll email it out to you in plain text where anyone might intercept it.

I know it's not an important thing in this case - it's just a forum site, rather than anything that actually matters - but still, it's really confusing. Do they believe that the transmission of email is safer than their webserver ? Is that why they'll happily send it by mail, but won't keep it on their system ? I... just don't understand.

I was looking at my site today and thinking to myself 'do I need to make it look a little more up to date ?'. It does look a little bit like the old style sites from early HTML days. I'm not sure it matters. It's clean, which is what matters to me. It doesn't use unnecessary scripting or external components. And it still works on the 1.72 (from '98!) version of Fresco. Actually it looks nicer in Fresco than in Oregano. I can't test it with ArcWeb, because it doesn't run on the new OS, but as I recall, the tables support is good enough for it to work. It works less well in Webite - I got a data abort and the application hung; oh well, it's to be expected I suppose. The last Webster I have seems to be 'ok', not perfect - there are alignment issues because I've aligned tables and things - but it's certainly readable.

My Mozilla port renders it pretty well, too, albeit without graphics. I never did finish the IFR gadget, unfortunately.

Return to top | Comment on the diary


4 Dec 2006 (Monday) Permanent reference to this entry

Greebo.
Claire and Justin.
Zero 7.

Greebo woke me early this morning, scrabbling at my door. Apparently Mum's told him tonight that I'll be leaving my door open. Hmm.

Claire rang me today - apparently they're expecting again. So there'll be a nice little brother or sister for Bethany. Yay! How exciting! And a little scary for them I guess, but... yay!

Something Mum and Dad were watching at tea time had a small section of incidental music was more [Artist]Zero 7[Artist]. Very strange that I'm noticing it now. On the other hand, I don't watch TV that much so it's possible that there are loads of things I would recognise on telly and I just don't see them.

Return to top | Comment on the diary


3 Dec 2006 (Sunday) Permanent reference to this entry

So very tired.

After Torchwood tonight there was a BBC 3 advert - the little bits in between programmes - and I'm sure that the music backing it was the backing from [Track]You're My Flame[Track], by [Artist]Zero 7[Artist]. Well, almost sure; I'd have to watch it again, I guess.

I'm so tired. It's about midnight and I've been awake (pretty much) since about 5am when Greebo was crying. I dropped off for about half an hour at about 7, but otherwise it's been a long day. More so, 'cos I only get to sleep at about 3. <sigh>

The last 3 or 4 nights, Greebo's been coming upstairs when Mum and Dad go to bed and sitting with me until I go to bed.

Return to top | Comment on the diary


1 Dec 2006 (Friday) Permanent reference to this entry

Strange.
Nails ?

There's something strange about trying to email people and their names not being the same as the names in the address book. More specifically, I sent a mail to a couple of people today who have changed their names - but their address book entries are the names I know them by, so when expanded they come out completely differently. It's just strange.

I've had loads to eat today. I've had lunch, a big tea, two mince pies and half a packet of crisps. And I've still ended up biting a nail. And since I bite my nails when I'm worried about things, and I know I'm worried about something, I think I can draw the conclusion from this that... I'm worried. You know, with deductive skills like these I could do all sorts of stuff. <smile>

Return to top | Comment on the diary


[Last] [Up] [Next]


This page is maintained by Justin Fletcher (gerph@gerph.org).
Last modified on 08 October, 2008.