Such is the mindshare of twitter that the need to write structured prose recedes and becomes a distant echo. So why change that now (dear reader)? Well in part to let you know that the heart still beats – in fact better than for a long time. Hope you like the new steampunky theme.
Back to basics
October 10, 2008 at 10:03 am (meetings)
Tim Bray rewrote his keynote for FOWA yesterday based on how he’s feeling: scared. The economic downturn has him worried as he doesn’t know what is going to happen (how arrogant to assume he did know what was going to happen beforehand). I find the motivation for this type of talk to be lacking in humility – but he is onto something in the body of his talk.
He’s talking about how capital investment is not going to be approved anymore in organizations as times turn hard. But alongside that is the opportunity for those who can build things to satisfy core needs. We are used to luxury discretionary services. What we need to do now is to build tools that deal with the essentials and the revenue will be more based on small payments rather with tiny margins.
Tim told a ’story’ that I heard several times in the halls yesterday (a meme as it were): The only user who you will totally please, and delight, is yourself. And the fact that other people may have the same needs means there may be a market for that same need satisfaction. So aim to satisfy your self and you may end up creating a mainstream application. He also cautioned would-be entrepreneurs to stay away from the venture capitalists, saying they did not add much in the good times so they will be worse in bad times.
Tim advises anyone who finds themselves with time on their hands to skill-up, learn new things, contribute to open source projects, blog, twitter, network and make a name for yourself. “If you don’t care enough about the web to make it better; they why would I want to hire you?”.
Suppose I’m wrong – he says. Well nothing he’s said is still not true … so back to basics for us all then. Funny though, Tim went back to form and assuming he was the only keynote speaker told the audience we could now go and get coffee.
Less of me
October 9, 2008 at 10:05 am (meetings)
Oh there you are. Where have you been. Me? Oh I’ve been doing stuff. Lots of work things that I can’t particularly talk about and some personal stuff that I can.
There’s now less of me that there was none weeks ago – three and a half stone to be precise – thanks to LighterLife which despite the branding does cover men as well. I think I’ve done the easy bit – losing the weight; the hard bit (maintenance) is still to come. But I feel much better and its reflecting in many aspects of life.
I’m at the Future Of Web Applications Conference at the atmosphere is electric. I’ll blog any interesting insights that come during the next two days, but for now I’m just enjoying being at an event that I choose to be at rather than one that I am required to be at.
Earlier this year I held a hack session at home during the Olympics – only three were able to make it (I chose a particularly bad weekend when many people were leaving for holiday), but we had a great time and learned a lot. The tangible results are at Inigo Surguy’s website and we are inspired to do more similar events.
Next month there’s a SWIG UK event at HP Labs in Bristol which I’ve helped organise. Sign up now if you are interested as there is a finite number that can be accommodated.
That’s all for now except to say that I haven’t disapperaed off the web between blog posts – I’m also twittering which for the uninitiated is a micro-blogging system that has some interesting social artefacts. See you there, perhaps?
Componentising the web
June 8, 2008 at 8:29 pm (general)
“The problem with standards is that there are so many to choose from.” In a knowledgable market, needs are met by providers who then compete over implementation and reliability issue. Eventually some accepted norms emerge to allow interoperability of need satisfaction. So, it’s pleasing to see some new services emerge on the web like the ’still testing’ UserVoice a neat idea to allow plug-in feedack capabilities on your site. This got me thinking about the privacy of the data collected. Investigating further, I found that the developers have anticipated (using their own software in a reflective postmodern way) the need to ensure that users giving feedback are known to the application i.e. authenticated. They have the development of an authentication API on their to do list – which presumably will play well with other authentication system – such as those used by prospective customers! It will either be a useful technology lesson or a useful commercial lesson, whichever way this one goes.
Over the moon
April 5, 2008 at 5:02 am (code, meetings)
I’m at Over the Air at Imperial College London, an event for mobile developers, and writing this after getting just two hours sleep. I don’t usually think of myself as a mobile developer, despite having built a proof of concept for mobile communications for an international charity back in the early noughties and, more recently, having architected a real-time sms based auctioning system for use at a charity event by my previous employer. My collaborator on that project is now entrenched in the mobile development market – so it had real benefits to at least one of us! For both those projects, a services company called kapow were used. I’ve toyed with the idea of buying a GPRS modem such as the Wavecom Fasttrack Extreme but never had the spare cash.
Since then, most major mobile brands have released their own development kits, yet these seem to fall consistently short of my expectations. As a server-side developer, I look for problems that lend themselves to some processing on a more traditional computing environment. Not for me the offers of free hardware to develop for (and there have been a few at this event). But the reality of server side offerings leaves a lot to be desired. BT are stuck in the 90s with their insistence on use of obscure and poorly documented sandpit certificates for developers. Vodafone’s Betavine offering really annoyed when I realised that they want users to register with them as well as developers – double lock-in! It seems that the culture of the mobile company is far behind where mainstream open software solutions have got to (albeit with some notable, but marginal, exceptions – such as Android).
After deciding that developing with any of the SDKs meant either being too locked-in or having no users, I took advice that was offered by an Alan Stokes in the early 90s and went for a walk – to get a new perspective. It worked. After a short stroll (wouldn’t want to miss anything exciting) I returned with a new approach. Taking my frustrations with the available SDKs to heart, I decided to plunge in directly and build my own. Knowing that one of the key services that mobile phones can address is location-based services, I though that a GPS data to postcode service would form a central piece in such an offering. So I set about writing one.
The UK postcode database can be licensed for use in mobile applications, but is not in the realm of the amateur developer, so I looked at using the user-generated content at freethepostcode.org to provide a service to users that would tell them their nearest known postcode and how useful that information is (likelihood of relevance based on distance) given latitude and longitude details. It’s actually an exercise in optimising data structures for querying and was a very enjoyable problem to solve.
However, there’s always a however isn’t there, just as I was about to start testing my code I was visited by a couple of people. The first was a business -head from Nokia who was fishing for developer effort. He was a nice guy, but didn’t get the message that I’m a professional-user developer rather than a consumer-user developer. But we had a good conversation and, if I ever want, I think there might be a future in that mobile market. My second visitor enquired what I was working on and when I explained he asked if i knew of the geocoder activity. Not I, was the response, so we went a-surfin. Sure enough, my first milestone on a comprehensive service stack for mobile development has been truly nailed for some time now. Plans for early retirement have been put on ice.
Driving through my disappointment and not being the radical I hoped (and after being asked by aforementioned dream-breaker if I had seen programmableweb.org as he went to devastate someone else), I continued with the testing and shortly thereafter had my proof-of-concept-that-I-can’t-now-show running like a dream. Satisfaction, but with nothing innovative really (except that the code is available if anyone wants).
With Torchwood (and a made-the-same-day tribute) projected in high definition at midnight to an audience of excited developers it literally was a slumber party for geeks. Back to planet reality later today (in time for Doctor Who I hope) …
Conference
April 4, 2008 at 9:31 am (meetings)
Unconference, meetup, happening, virtual event, interest group, seminar, conference.
The world of get-togethers is becoming increasingly diversified as is the understanding of these events. Several years ago I jointly produced the XMLOpen event (along with Griffin Brown) as a meeting of minds – rather than wallets. We broke even financially, but haven’t repeated what was a thoroughly enjoyable event as it was a big job to organise and the opportunity cost in preparing it (not to mention the financial liability) was large. More recently I was involved in pulling together another event for XML:UK called Publishing 2.0 (we are hoping to pull together a couple of events this year so stay tuned). During one break at that event, Leigh Dodds and Sean McGrath spoke of how quaint an old-fashioned pre-planned conference was to them. At that time, I had some inkling of what they were talking about, but hadn’t experienced a full unconference.
That all changed earlier this year with the Semantic Web Bar Camp at Imperial College, London. It was an enjoyable and educational experience, but conversations during and after have caused concern about the viability of user-managed events in the longer run. One such conversation was with an organiser of a proposed Oxford Bar Camp who is having difficulties finding a suitable venue. For geek conferences there may be specific needs, but the issues are general and relate to trust and ‘brand recognition. What it really highlights is the relative ease (well from an external perspective) large organizations have in marshalling resources for an agreed purpose. The BBC can sponsor events such as last years excellent HackDay (misnamed because it occurred over two days, but why let such details get in the way of memorable naming), without having to hop that an interested party will have access to a building at the weekend that can be used. Of course to a large extent the concept of sponsorship is about brand recognition – so how do new events get going?
What is needed is a conference for event organisers. It could be a forum for discussing how to promote to attendees, speakers and sponsors; an opportunity to learn from the experienced and the inexperienced; a chance to compare experiences with event supporting tools (the vendors of which should possibly be the ones coordinating such an activity – if there is a desire to see a mature market); and a place to participate as a peer rather than a focal point. Such sharing of knowledge would surely be a good thing for users. After all, the form of an event should be based on an understanding of user behaviours and needs rather than around who pays for what.
The real question is – who’s going to organise such an event?
The end of endpoints?
March 13, 2008 at 2:16 pm (meetings)
Last Thursday’s SWIG meeting in Oxford was another great event. With Leigh Dodds of Ingenta and Inigo Surguy of 67bricks speaking on the SPARQL query language; it was always going to be a good night. I was personally disappointed that we didn’t get more attendees, and I think I’m going to have to start cross-posting future events to other mailing lists. We attempted to broadcast the session on live.yahoo.com, but a combination of the university’s wireless network and Yahoo’s infrastructure conspired to make that a less engaging experience than it might have been.
Leigh’s first talk centered on Twinkle a graphical user interface onto a spqrql query engine. Twinkle manages the sparql connections with multiple data sources allowing the user to write queries over in-memory data collections.
Leigh noted that some data sets assume a default graph others need to have one specified – thereby highlighting issues of interoperability between sparql servicing interfaces. He showed how to edit etc\config.n3 to establish a new data source in the user interface (you will need to bounce the user interface to reload the available services) to create your own semantic user interface onto your data. Leigh has commented his configuration file but there is no dedicated documentation. He is thinking about moving Twinkle to an open source model possibly using Google Code. Future possibilities include distributed queries; his team at ingenta are making daily use of Andy Seabourne’s ARQ extensions to enhance queries (an issue that also cam up in Inigo Surguy’s talk – see below). As Leigh was talking, I couldn’t help but imagine how the data that I use on a daily basis might yield to a triple based approach and am now seeking a business justification for a proof of concept activity.
Leigh’s second talk discussed the four forms of sparql queries:
* select provides a comfort factor for learning sparql but may be the weakest query form (good for indexing)<br/>
* ask returns a true/false value as a test which can be optimised within implementations
* construct returns an rdf graph allows local aggregation of crawled data and generic object instantiation (good fo transformations especially if functions were available)
* describe also returns an rdf graph but the query engine decides what is relevant (good for prototyping/ad hoc apis)
Leigh talked about work that Alistair Miles have done on SPARQL for RDF validation (akin to using XPath for XML validation and known as Schemarama 2) using ASK WHERE {assertion of invalid data} and CONSTRUCT. Leigh also mentioned the ADC pattern ASK DESCRIBE CONSTRUCT – approach to developing semantic applications.
Inigo Surguy started his presentation by asking why there aren’t more sql endpoints available on the web. That led immediately to a question from Tony Hammond about what a sparql endpoint is obliged to do. In turn there was a shock revelation that the sparql protocol specification does not mention the term end point although it is in common use). It may be that the term is inherited from the webservices domain – especially as the sparql protocol refers to webservice implementations. But it is curious how language evolves by consensual use (or maybe not now that the issue of its use has been raised).
Inigo’s talk focussed on how to extend Joseki (again using n3 syntax). Inigo showed another neat demo of how to obtain geolocation details given (unambiguous) place names and then finding (and mapping) local items of interest once the geolocation details are known. He’s using D2R to expose data from out of relational databases but talked about the limited power of the sparql query languages built in functions. This led to the point that he was making about the need for a semantic function library (such as is available at exslt.org) to extend the capabilities of sparql (perhaps an esparql.org) as a community process for registering extension functions. Ther was a consensus that sparql is underpowered. However Leigh commented that ad hoc extensions could become another way of breaking a sparql service if the expectation is that the service provider implements the extension function. Sometimes a better approach would be to enhance the original data rather than creating functions to tidy the data up.
I found it to be inspiring evening that made me think of many applications that could be built. Just spending time with people like Leigh and Inigo is motivation to create services that help evangelise the empowering nature of abstract data models. Thanks to you both for another great event.
The next SWIG event is on the 12 May and will feature Ian Davis and his team from Talis showing how to use the freely available Talis platform to develop semantic web applications.
Post-modern Standards
December 6, 2007 at 8:33 pm (standards)
There exist many standards for referring to (or ‘citing’ as the vernacular has it) types of content. Each genre has its own characteristics and behaviours, but the way in which these items belonging to a genre are referred to tends to be well understood. So a journal article citation should have bibliographic information about what publication an article appeared in and which volume, issue and page numbers. These features are easily learned and mean that copyeditors can rapidly spot citations that are not correctly constructed (and request clarification).
However, there is no standard for citing standards. A standard is an agreed way of doing things that can be described in various degrees of formalization. Standards may be de facto, de joure based on the formal standards system that has arisen through international collaboration. What ever the nature a standard should have the characteristics of reflecting consensus on how to address a particular issue (whether defined as expert opinion or common practice) and being available for use by those entitled to use it (a secret cannot be a standard unless it is a shared secret).
The way in which a standard is referred to should, it would appear, be a matter of common practice. And yet having recently researched this area, it would appear that the way in which standards are cited has been a blind spot for standards organizations. Not that this is a purely academic issue (there are usability and societal reasons why it is desirable to have an agreed way of knowing which document is being referred to when talking about a particular standard), but it is an interesting aberration in the overall information community.
Perhaps we need more post-modern standards’ producers.
Incidentally (and getting post-modern about posting) I’ve been unable to write recently due to equipment malfunctioning – hopefully that is now in the past.
Semantic Realities
November 6, 2007 at 10:12 pm (meetings)
Tonight’s SWIG was a team presentation by Ian Horrocks and his research group who have moved from Manchester to Oxford universities this year. The problems they address – formal proofs of safety, modularity in ontologies, optimizing queries (by provably rewriting queries using a set of trees that represent the same relationships as the queries) - make them an interesting group.
What struck me about the work of this team is that they are tackling the important problems – the fact that in many instances the emperor has no clothes. The honest approach has no peers and will provide a breath of fresh air amongst the practitioners who struggle with making the best of the tools available. Having this talented team among us is a great boost, and should lead to some interesting pollenization between academia and industry – anybody want to license a codebase?
Collaborative Review
October 31, 2007 at 8:44 pm (code)
Making documents available for review is an obvious use of the web. But what is the best way to capture feedback on the document in a way that can be processed by the document author(s). One approach is to distribute the content and get users to track changes; but that minimises the benefit to the reviewers of work already done (since comments are not visible to other reviewers as they are created).
Far better would be to use the document’s structure to capture comments in an online system and publish comments as they are received. This approach has the advantage of allowing reviewers to build upon each others expertise and would seem to expose the document creators to a more rigorous review.
Using structured document technologies affords direct benefits of modularity, identification, selection, etc. But these abstract notions are not meaningful to users who do not equate the rigorous structuring of documents with new capabilities. The analogy with writing computer programs should not be lost here. Good system design minimises user work and maximises benefits to users. It really is that simple.
Now to build that collaborative review system …..