phil wilson :: a geek commodity

4:38 PM

permanent link to post  

Saturday, June 28, 2003

FeedDemon first impressions:

  • the best GUI of any RSS reader (certainly in terms of polish, at least, my screen however just isn’t wide enough for the three column approach to beat the classic three panes – websites just aren’t designed to be viewed at ~1/3 your monitor width).
  • excellent “newspaper view” summary of all the feeds you’re subscribed to
  • nice features like bins, listings (try it see what I mean)
  • OPML import/export/synching (which worked fine for me but not Simon Fell)
  • Don’t click on the permalinks to my site or you’ll open twenty IE windows. :)

On a different tack, literary bar jokes (via Textism)

12:07 PM

permanent link to post  

Tuesday, June 24, 2003

The “BBC Headlines for your site” page I was looking for a while ago turns up here, which has an absolutely hideous URL, but fortunately for us humans is mapped to

This comes hot on the heels of news that the BBC are now providing another six RSS feeds, on top of the previously existing four (the two “Front Page” feeds appear to be identical).

Cool beans!

Actually, there are loads and loads of new feeds. Go BBC!

9:59 AM

permanent link to post  

Along with my new digital camera comes the sordid temptation to take pictures of people’s asses and post them on the internet. Sadly, somebody already beat me to it (via

With the release of Safari 1.0 came high hopes of functioning generated content, especially in the light of an email I got from Kynn only yesterday telling me that generated quotes in Safari beta versions worked for him just fine, leading me to suspect that I just hadn’t been using a recent enough beta of Safari.

bzzzt. challenge. Either generated quotes still don’t work or Eric Meyer’s test is flawed.

Screenshots: Safari 1.0 Opera 7.11

12:38 PM

permanent link to post  

Monday, June 23, 2003

Pleasepleaseplease Blogger. Start working with API1 apps again.

That, or show me the 2.0 API, because I can’t find it on Google for the life of me. Which, when you think about it, is kind of ironic.

In other new news (very different from old news, for example, which means things that appeared in the “blogosphere” at least six hours ago), I just received a SiPix StyleCam Snap from my grandparents, because they saw it and thought I might like it.

It’s about 5cm x 5xm x 1.5cm, takes pictures at 640×480 at its highest resolution (it also takes pics at 320×240 but they tend to have really jagged edges), takes video and has 8Mb memory, all in all a very nice little package (especially since I got it for free!). You have to hold it really really still if you don’t want any blurring in your pictures, and the pictures aren’t great if the light it either a) poor or b) natural and artificial light mixed, but I’m guessing this is a problem with all cameras that don’t have a flash.

The interesting view from a train window

Blogger API 2.0 Documentation ?

4:26 PM

permanent link to post  

Wednesday, June 18, 2003

Theoretically, in the next year or two, Mozilla, Opera, Konqueror and so on might offer complete support for CSS3. But we won’t be able to take advantage of it if 85% of the audience is using a browser that still has some problems with CSS1.

This is not a good thing. People have said that this means [n]othing to web developers, and right now it doesn’t, but in one, two, three or even ten years time, when IE6 is still around because Windows XP will still be around (although in a small minority I’m hoping).

3:36 PM

permanent link to post  

I think what I’d prefer to do is make a bookmarklet that you can click when you’re on a blog post page, which then passes the URL of that posts rss file to a web app which subscribes you to that RSS feed and notifies you via Jabber when it updates.

In order for this to be useful this means that you’d need to provide single-page posts (like Sam Ruby does, although his is the only weblog I can think of off the top of my head that actually does this, I have no idea if you can do this in MT, but Mark Pilgrim doesn’t, and he normally does everything ;) ).

This would be extremely useful for seeing when a post you’ve commented on, or find interesting has been updated.

obviously if you have an rss feed for your comments you can subscribe to it anyway, but who wants to clog up their aggregators with stuff like that? and this would be more immediate anyway. and i've stopped using my aggregator. :)

3:24 PM

permanent link to post  

A little while ago I wrote a Jabber server component that lets you post to your blog using the Blogger, MetaWeblog and MT API. LiveJournal support was in the works. It did spellchecking and allowed you to use textile formatting.

As well as posting to your specified blog, it kept your blog postings too, for a) the people who didn’t have a blog already and b) in case you needed to easily retrieve your blog postings.

I ran into some threading problems (it ran as an explicit two-threaded web app: fine under JBoss, only one thread under Tomcat. boo. ).

But I could never decide how nice it was to post to your blog from Jabber. Of course, what was nice was that it used markers to denote the beginning and end of your post, so in the morning you send a message of “start”, then your post got made up of all the messages you sent it until you sent “end”. And of course you could change your configuration options via jabber itself or on a web page.

I never solved the threading problem, and the program lies unreleased. Is it worth saving?

2:18 PM

permanent link to post  

Draw a graph in OpenOffice, run a python program and get ntriples out. Excellent stuff! And all because OO saves its files in XML!

9:10 AM

permanent link to post  

My RSS ain’t just valid but it’s funky too!

Funky RSS
Valid RSS

1:50 PM

permanent link to post  

Tuesday, June 17, 2003

They say you can hold seven plus or minus two pieces of information in your mind. I can’t remember how to open files in Java.


Something similar happened to me last night. I couldn’t remember how to get command-line user input. Oh sure, came into it somewhere, and, so I thought, all I had to do was wrap a BufferedInputStream around it and all done. Nope.

Obivously it’s because I’ve been doing so much server-side work for so long, and whenever I’ve done client-side apps, they’ve been swing or thinlet-based. The last time I took input from the command line in a Java app was 2001. That’s two years ago; still, like Bruce I’ve done it a bunch of times, but it’s too many steps. – remember that to print text out it’s one small call (System.out.println("this is easy");), but reading text in and echoing it back is a minimum of four lines of code, and not including the three import statements (or one if you’re naughty).

Anyway, for the curious, it’s BufferedReader that gives the magic of readLine(). I wish it was a lot easier to find these things out (I ended up having to do a search for "readLine()" on my API directory).

3:17 PM

permanent link to post  

Friday, June 13, 2003

I hate Sourcesafe. We use it at work. It’s slow, unreliable and non-intuitive. It looks just enough like Windows Explorer to make you expect it to do Windows Explorer-y type things with it, which then don’t work. In a nutshell, it’s frustrating to use, although that’s not even the half of it.

I proposed a few months ago that we move everything to CVS , which everyone said “yeah! let’s do that!” to, but we still don’t have a *nux machine in the office.

For a brief while we tried getting CVSNT to work, but with no luck. The documentation is pretty poor, and we had a problem with users, passwords and permissions. So that didn’t work.

Anyway, the point is that we wanted to move to CVS, but an argument raised against this was that we’d need to move everything stored in VSS to CVS. “Surely”, I thought “someone must have tried to do this before?”, so I searched the web, and I came up with were the VSSExtractor and VSS2CVS, which looked like just the ticket, if a rather lonely tickets.

But we never got a linux machine. And I never got to try it out. And as a result, we’re still using VSS. And it’s terrible.

So if anyone, anyone out there has successfully used either of these tools, successfully, so that I can point at you and go “Look! Look! They escaped! We can too!” please, please get in touch.

Sourcesafe: a commentary

2:06 PM

permanent link to post  

Wednesday, June 11, 2003

Incidentally, Leigh's intention for adding other voacabularies to the FAM2 seems pretty much the same as mine did:

I think for the first iteration I’ll simply throw away properties the FOAF-a-Matic doesn’t understand. Then progressively expand the breadth of FOAF data the tool can process. That way there will be enough new code for a second functioning beta.

But that was when I didn’t think it was possible to dynamically generate the Thinlet UI. I’m now not too sure as to how impossible this would actually be. Elements can certainly be generated at run-time, and added to the main UI - selecting the correct widget to use for the options available would be far harder.

1:57 PM

permanent link to post  

Leigh Dodds has posted an update on the FOAF-a-matic mk2, which is really good to see.

The import vCard function I wrote for it was the most basic of the basic, and definitely could do with expanding, and as Leigh mentions, being able to support the vCard-RDF format would be great.

I also agree with him thaat my FOAF file-loading was flawed, but I can forgive myself for two reasons:

  1. I think a FOAF file should have a description
  2. Neither mine nor Leigh’s approach will correctly handle Eric Vitellio’s old FOAF file (his live FOAF file is very different).

Of course, real FOAF files in the wild are never going to have that description field (although, of course, all FOAF files that pass through the FOAF-a-matic should have it added if it doesn’t exist :) ), and will thus better handled by Leigh’s method, but I can excuse myself again by virtue of a third reason: I’m rubbish at using Jena to select the nodes I want from a graph.

In other news, it turns out Leigh lives and works in Bath! Ha! I never would have guessed! Bristol is my home town, and seemingly the centre of global FOAF development (Libby Miller and Dan Brickley are both based in Bristol too). Another big advocate of RDF and the semantic web is Danny Ayers, who lives in Italy, but used to live in Sheffield, which is where I currently live! (the Uni he attended is about a five minute walk from my front door)

I enjoy circles like this, they make me very happy. :)

3:07 PM

permanent link to post  

Tuesday, June 10, 2003

I’ve had some feedback on my small rant saying that, in the interests of accuracy, both Opera and Safari do actually support generated content. I had a quick look at this using the CSS2 test suite, and in particular the quotes section in the most recent versions of both those browsers that I have access to, Opera 7.11 and Safari 0.74.

Safari rendered quotes exactly the same as Mozilla (i.e. incorrectly, although of course this may have been fixed in the latest release), and quite astonishingly Opera renders absolutely correctly.

I think “astonishingly” was an understatement. I completely expected Opera to fail, mainly due to my experience with it in the past, where it caused more problems than anything else – enough for my company to drop “supports Opera” from our web app documentation (not that anyone noticed).

Indeed, when version 7 was released (to much hoopla), I took about five seconds to assess it (huge banner, awful skin, goodbye), and whilst I stand by that (that skin! that banner! just stop it already! who pays for a browser now?!), its list of CSS support is very very impressive.

12:17 PM

permanent link to post  

Textile4J (a java port of the Textile humane web text generator from Textism.) has been getting a reasonable amount of coverage.

JTextile beat the rush by two months, works on JDKs below 1.4, and got rather less coverage.

The importance of trackbacks, and making millions of comments becomes clear. Fortunately for the real world, googling for “java textile” still returns “garments in Bali” higher than any of the programs mentioned above.

From looking at the source, Textile4J seems clearly based on JTextile, which is directly based on PyTextile which in turn is based on the original Textile. All we need now is for Textile4J to introduce some great new tag, Textile to implement it, and the circle will be complete.

4:41 PM

permanent link to post  

Thursday, June 05, 2003

In my world there are four levels of expertise: beginner, basic, medium and expert.

When most people have left the “beginner” level, they think they‘re at “medium” level. They‘re not. They‘re at basic level.

There is an ordered progression upwards through these levels generally enabled by experience, not just study.

It's also been (correctly) pointed out to me that experience is not a scalar quantity, and the time to move between levels is vastly different, increasing at probably something approaching an exponential rate as you go up levels.

4:18 PM

permanent link to post  

Wednesday, June 04, 2003

I’m back on final front-end web development at work, which means HTML and CSS, which a) I’d like to think I’m quite good at and b) is the cause of my earlier post.

This generally means other people have written the basic HTML and CSS and I go through it, making sure it does what it’s supposed to and in a reasonable way.

On the plus side, all our CSS seems OK, so I don’t have to do much cleaning, the HTML isn’t as bad as it was on the apps I was given to finalise when I first started working here (hello tag soup HTML abominations one and two).

On the minus side, it means I’m writing HTML and CSS again. Or rather trying to, but I just can’t. stop. getting. frustrated. with Internet Explorer. This is the last ever standalone version? Puh-lease. The rendering engine is just a complete joke. I know I’ve moaned about this recently, but that was focussed on developing new features whilst old specs were being left unimplemented. By all accounts IE doesn’t seem to be moving at all. It seems stuck in some 1999 timewarp where no-one really uses CSS that much, and there’s no real browser alternative.

Anyway, blah, this is all old news and everyone in the entire world has griped about it before so I’ll shut up about it now.

In other news, Leigh Dodds got in touch with me about my fork of his FOAF-a-matic mk2, and it turns out he’s done some significant work on it since the last beta, which far surpasses where I’d taken it, hurrah! At least I got to use Jena for the first time, and have a better understanding of RDF and how to manipulate it using the right tools now.

RDF seems to be such a sleeping giant it’s incredible – there are so many v0.1 apps and potential apps out there with such mass appeal and potentially mass use that it’s painful. I mean, FOAF is a wonderful thing, and easily the most appealing facet of any semweb to someone who just sees it. This is why I’m particularly interested in getting a FOAF tool that works and can be used easily.

It seems as though Leigh has taken the FOAF-a-matic over to XUL, which is an interesting development not only because it potentially limits its use. I think a huge benefit of the original FOAF-a-matic was that it was available on a webpage, and indeed the Thinlet version of FOAF-a-matic2 could be embedded onto a webpage as an applet, or downloaded and run easily. XUL would necessitate Mozilla or some XRE (or perhaps a GRE), but I’ll be able to tell better when he drops some code into my inbox in the near future (you reading this Leigh? I'll hold you to that. ;)).

11:32 AM

permanent link to post  

Fucking fucking shitty IE. What a joke of a browser. Where are my sibling selectors, you bastard?

And it’s never, ever, going to go away. *cries*

9:04 AM

permanent link to post  

Tuesday, June 03, 2003

<CodeBitch> has a new abridged guide to CSS2 support, listing CSS2 properties, and the level of support for them in Win/IE6, MSN/OSX, Mac/IE5, Gecko, Opera 7, Safari/Konqueror, various versions of OmniWeb, and iCab.

3:09 PM

permanent link to post  

Monday, June 02, 2003

About time I released the work I’ve been doing on FOAF-a-matic mk2-pw.

Sadly there’s not as much as I’d like to have had done by now, but that’s what I get for being given a GameCube and Legend of Zelda: The Wind Waker the other week.

I love Zelda games. :)