30 April 2007

Topic Maps for PHP5

From time to time people write me about what I wrote some time ago about Topic Maps and PHP5. Most of them ask for the ZIP file that I linked to. Unfortunately that ZIP file has been lost due to various hard-disk crashes (both my own, and my ISP [!!]) so most of the time I give some small advice and tell them the files have been lost.

Just last week I had two more such requests, and decided to do something about it; I'm doing it again, this time a bit more formal and a bit better informed. Basically, I'm starting up again a Topic Maps for PHP5 project, and this post will work as a first design draft. Some of it is based on code I've already done, and the rest I will have to take in stride over the next little while as I'm in a deadline zone right now;

Toic Maps

There's a few things to say about Topic Maps in itself. The first is a choice between using the Topic Maps DataModel (TMDM) vs. the Topic Maps Reference Model (TMRM). Actually, it's an easy choice; I've made the switch to the TMRM some time ago, and haven't looked back since. The TMRM is an abstract layer above the TMDM, and in fact you can define the TMDM in it, so it's a good candidate for doing serious work, albeit it's not as widely supported as the TMDM. In this case, it shouldn't matter too much as I'll be using it to define a version of the TMDM to stay compatible with XTM (1.0 and 2.0).

Features and requirements

The framework / toolkit will do the following ;
  • Out-of-the-box visualisation and browsing of Topic Maps
  • Provide a simple API for working with Topic Maps (but not TMAPI)
  • input and output XTM 1.0 and 2.0, input LTM and input CSXTM
It will require PHP5 with XSLT enabled. It may be PHP4 compatible, but I doubt it as I want to use the better OO structures and support from 5.x, but I'm sure that could be a fun project for someone. I also may use the Zend::Cache classes from the Zend Framework if they prove to be good, but I have some caching classes I've developed recently that does some funky stuff that I may want instead, so we'll see.

Design

A bit of controversy about this one, perhaps, but the internal representation of the Topic Maps data / reference model will be done in XML. Yup, you heard that right, but there's a few reasons that I'm going down this path;
  • Cross-technology; most technology platforms have support for XML, with API's or tools to work with them.
  • XML technologies are mature and getting very fast indeed; I don't want to impose too much OO mockery if I can avoid it for such a simple tool.
  • I love XSLT and XPath; no way around this one, and XPath is a fantastic way to handle a lot of complex XML querying, given that the XML is well-written for the task (this is why we're not using XTM but something else internally)
The framework work as follows; Take the input Topic Maps format, and convert it to our internal TMRM XML format, caching the result and process. We need converters for XTM 1.0 and 2.0, LTM (1.3, I think?) and CSXTM 1.0. As all of these formats are well travelled in the TMDM world, this shouldn't be too hard, and the internal XML format will reflect this.

Where am I up to?

The caching and converting of XTM 1.0 is complete, and the internal XML format nearly complete, with queries being about 7 times faster than they would be if working with XTM directly. That's a pretty good start. The caching layer is such that you can use file cahcing, database caching, or somewhere inbetween (for example, choosing ADO or Zend::Db), giving you heaps of options for scalability and performance.

Using the normal test Topic Map, the Opera map by Steve Pepper, somewhat complex queries and handling is done in the 0.3 ms region, which is good enough for a version 1.0 of the framework.

I'm currently tweaking the input and output buffering and converters, creating more efficent internals for the XML handling, and writing up some documentation as well.

Where do I want to go?

  • Support for "enterprise size" topic mapping, meaning maps between 5 and 50 Mb in XTM 1.0 size.
  • Concurrent editing of the maps.
  • Astoundingly easy user-interface.
  • An XSLT framework to support those user-interfaces (I've actually done this bit already as part of a different project, but I need some time to document and clean it up :)
  • An internet community to use and help out (which is also why I chose an XML internal engine wrapped up in PHP for simplicity).
That's it. I'll let you know how it goes, and contact me in regards to anything at all.

28 March 2007

Quiet, oh so quiet ...

For those who wonder why I've been so quiet of late should go read this Lorcan Dempsey bit. Now you also know why I might be a bit quiet for a little while as well, as there's big deadlines and interesting stuff coming up. Watch this space.

9 March 2007

New article : Electronic resources

I've written an article about electronic resources, and I've published it to my "articles" blog (which will look prettier and the same as the blog Any Time Soon(TM) ); "Electronic Resource by any other name", an article deemed unworthy of paper publication.

2 February 2007

Want to go to Kuala Lumpur and present about Wiki's?

Some time ago I agreed to do a presentation for a conference in Kuala Lumpur about intranets and our use of Wiki technology in creating it. The conference had to be moved, and as such I find myself unable to go, so I'm throwing the offer out to my readers;

Do you want to present a use case on wikis and blogs in a real-life corporate environment at a CMS conference 6 and 7 March in Kuala Lumpur, Malaysia? (Or, about intranets and CMS in general if that's easier)

I know the time is a bit short, but the people organising the conference are very understand and wonderful people, able to help you out and give you slack if you need it. All expenses are paid; all you have to do is show up, give a smile and say a few interesting words. This is an excelent way of getting away from it all, and have a couple days off in a really nice place.

Spread the word too if you like, and let me know at alex at shelter dot nu, and we'll work something out. I was excited to go as it looks like it was going to be a great little conference.

25 January 2007

Kids growing up so fast

In the next few weeks I'll be writing a bit about what's going on at work, with Service Oriented Architecture, web service semantics, different layers of organisational constructs to support both business and development ideals, and project management and expecations handling.

But that's not this post. This post is about my daughter Grace who's six and a half. Before christmas we inherited an old computer from my wife's sisters family, an old beaten thing we were going to give to the kids for educational games and homework and such things, and in no time I whipped it clean and hooked it into our network.

While I was at work last week I got this in my inbox ;
A secret story
a long time ago a daddy,mummy sat
soon thay found out that thay wer having
a BABY.

For those still not in the know, me and Julie are expecting our third child in July (every evening julie spends trying to find good names), and Grace is as excited as we are and decided to write me the above wonderful email, from her Gmail account no less. Not bad for a seven year old. She'll be blogging in no time.

While I was writing this blog post I've been chatting with her on Gmail talk, and she says the most wonderful things. I need to spend more time with her when neither one of us is grumpy in the evening after a long day. :) Tomorrow is Australia Day, a holiday, so I'm already looking forward to it. I feel so blessed with my wonderful little family.

Update: Yes, Alia, you're right; Grace is indeed seven, not six (fixed). It seems she was growing even faster than I first thought. :)

17 January 2007

Off-road music

As many of you know, I'm a sucker for baroque music, with a passion for Monteverdi (early italian), Bencini (middle italian, roman style), Galuppi (late italian, Venezian style), Telemann (late german), Schutz (early german with italian influences), Lalande (late french, small steps away from the dominating Lully style), Biber (middle italian in Austria, violin extraordinaire).

But I do occasionally sin, I do have a musical past, and dip my musical ear in more modern stuff still. Mostly, this is due to listening to Pandora.com at work which is a kind of a digital radio with empathy; I can pop in a tune I like or an artist I appreciate, and it will play music of a somewhat similar kind. And sometimes it presents stuff to me that's new and that I like, which is what this post is all about.

Regina Spektor : I have no idea what music Pandora.com thought I had in common with regina, but one day she popped up, and I took notice. She's of Russian-Jewish background, but have lived in New York since she was about 10. She's a singer/songwriter/pianoplayer/guitarfiddler that comes up with the most amazing tunes, and she's not afraid of being different. And I think it is this "different" that I like so well with her; strange noises, pivots of musical direction, strange lyrics, using her voice as more than just a pretty voice (and she really has a pretty, strong voice). She's not afraid of letting the music be music, and that's quite refreshing; song structure follows the musicality of it, not some verse-refrain-verse-refrain-brigde-refrain-refrain pattern we're so sick of these days. Good stuff; here's a few videos ;







Happy Rhodes : Combine an amazing sense of feel with the voice markup of Kate Bush and Annie Lennox, you've got Happy; diverse yet uniquely Happy Rhodes music, with a voice that continue to amaze me by its range and clearity within it. I used to have a crush on Kate Bush, and maybe this crush is the continuation of it. Here's a fantastic live recording : listen out for where she switches voice register at around 2:10 without wffort, without it sounding wrong ;

Home Video : melancholic modern quirky. Not even sure why I like it. I don't think these guys are famous, nor do I think they will be, at least not in this configuration. I think they appeal to people who quite enjoy subtle melodic changes over longer periods of time, you know, those who also liked bolero, except with a modern beatbox twist.

Ambrosia : Tickles me with their Toto sound (I'm a fan of the older Toto, and a worshipper of the ground that Jeffrey Porcaro walked on), a band of the late 70's and early 80's. Look for their album "One Eigthy" which is produced by the faboulus Michael McDonald ("Yah Mo B There!", the Doobie Brothers) and features the amazing Richard Page of Pages and Mr Mister fame (of which I adore). Here's a video ;



Piano magic : Again a quirky creative modern sound. My last band before I got married and had kids were a band called "sundrunk" (yes, as in Nietsche) where I was producer, percussion, arranger, drummer, synther, whatever, and Piano Magic reminds me a lot of what we were doing. It's not so much a favourite kind of music as it's an interesting expression I enjoy listening to.

The Magnetic Fields : I've always loved Tom Waits. This is his more melodic cousin, more on the road than down the alley, yet as deliciously melancholic and bare, like a Waits younger brother that went back to school and kept his dayjob. And then moved on.

Various jazz : In my contemporary jazz channel I've really enjoyed Erik Friedlander, Alan Pasqua, Darek Oles and the norwegian jazz group Tord Gustavsen Trio.

Mellow and or electronic : Suzanne Ciani has surprised me with complex and melodic compositions. I'm mostly happy with my Tangerine Dream / Klaus Schulze / Vangelis / Kitaro setup and I've been looking for other things, but not much has popped up in this category.

There's also the occasional song by the occasional group / person that catches my ear, and maybe I'll talk about them in the future. Until then, enjoy the music, and I'll leave you with one of my all-time favourite Victor Borge pieces. I simply love this!

19 December 2006

What friggin' IT people shortage?!

Hot in the news today is how Canberra are looking for outside help in getting skilled workers to the city:
The ACT Government has begun linking Canberra employers with job seekers in the United Kingdom and Ireland to ease the city's skills shortage. The move is part of the Live in Canberra campaign.
What friggin' skills shortage? I've been urgently looking for a job for over a month, and I've got absolutely nothing in this city so far. Zilch. Nada. And no, it's not that I haven't got skills (in fact, I've got two job offers from overseas [one of them finalised; we're currently working out figures to see if we can afford it], and a couple of prospects in Sydney), it's that I'm not one of those who's sold their soul to J2EE, best-practices, and PRINCE2 which plague the government sector, nor am I an Australian citizen which seems to be a prequisite there, although I'm pressed to understand how workers imported from UK and Ireland would go better in that regard.

Notice that this is part of the "Live in Canberra" campaign which I'm pretty sure doesn't include information about them closing 39 schools this and next year, so if you've got kids, living in Canberra is a bit of a challenge these days, to put it mildly. The ACT local government is really poorly run, nobody here likes them. heck, people are even looking to liberal government, because, if Labour can only measure things in dollars and cents, we might as well go with those who's got a good track record in that departement to do it. (In the past, Labour actually had values, but Jon Stanhopeless' government is prioritizing a 8 million dollar dragway and a 6 million dollar arboretum in a friggin' drought area over keeping local schools and communities. Go figure.)

Can you tell I'm upset?

11 December 2006

When small and neat becomes big and rough

I use the excelent Bloglines.com web-based news aggregator, and recently I noticed a note of help on their frontpage, however you could only help if you lived in San-Franscisco (I assume for usability testing) and if you accepted money for your time, so that ruled me out on a large scale, but because I've been using it for such a long time, love it and can't live without it and because I have many really good ideas (unbashfully, of course :) on how to turn it (with simple means) into the most awsome KM tool, I wrote them an email anyways asking them how I could help otherwise ;
I'm not living in the Bay Area (or the US, for that matter), nor am I after your money :), but I'd love to be part of the process of making Bloglines better, so if there is a way, please let me know. I'm sure you've already got on your todo list things like tagging, content evaluation and textual marking, but I'd like to explore Bloglines as a serious knowledge tool with annotations, text analysis brokerage and various exports.

I just got their reply, which is such a spot-on example of what happens when you go from small and responsive to large and missing the point completely ;
Thank you for your interest in testing new Bloglines ideas. We have received a huge amount of interest and if you could provide the following information, we will be able to better schedule out our sessions. [...] 5) which of the following times will you be available to be in the San Francisco SOMA neighborhood for 1 hour for $75 on Tuesday, December 19th? [...]

Here's to hoping that part of their usability testing includes their own reading capabilities and / or systems. :) Customer love is hard to come by, and silly mistakes is often enough to make people look in some other direction to cover their needs. I'm not that easily turned off, though, but it sure is one for the records.