TopQuadrant Webinar on querying and processing RDF

This webinar is interesting, not because it explains RDF exactly(though it touches on that), but because it shows the main differences between querying RDF and querying relational data in a way that won’t scare anyone away.

It should be stressed that his is one vendor’s vision and one vendor’s tool, but the speaker does lay down the boundaries between standard and vendor behaviours quite well, though its worth picking up “LET” as a non-standard keyword. Anyway, its quite a nice tool!

What novices should look for:

  • A neat explanation of RDF triples in visual terms.
  • On-the-fly invention of new properties for a type without planning ahead or doing any prep work.
  • WHERE clauses without a FROM clause – i.e. querying completely unstructured data.

If you are already sold on this RDF thing, then there is also a nice demonstration of using SPARQL for ETL functionality about half way through, which is more than cool. In addition, the RDF visualisation style where the graph is incrementally revealed on-demand is a nice paradigm for viewing graph data.

The reality of retrospective taxation?

This letter deserves wider circulation.

Social graph visualisations

More links (maybe I need delicious or somthing)

via a swig chat log describing theses as coming from experimental work with FOAF.

Bluetooth Links

A blog post in the traditional mould, links for my own reference:

(I have some ideas for a bluetooth app to get going with at the hackspace)

Update – more links:

On the web, no one knows you’re a man

girl from a show with beautiful eyesSNOSoft and DanBri write about social engineering hacks involving Facebook. Someone who isn’t a hot chick working in your company joins your firms Facebook group, and of course, on the internet nobody knows you’re a dog. If you saw a photo like this one, would you check or just let her in your group?

Of course, if your company sets up an Open ID provider coupled to the corporate directory and some other nice person (maybe facebook themselves) designs a widget to force group members to authenticate against particular OpenID providers then the fake employee would stick out by not being in the group.

Open Spectrum as an alternative to a broadband universal service obligation

While the recognition of the internet as an important facilitator of economic growth is accurate and in some senses laudable, I find issue with the Government’s recent announcement of a universal service obligation for internet infrastructure companies.

A universal service obligation can only increase costs on the companies involved and must involve a large Government subsidy, a new tax or the involvement of the BBC – a dominant player in the TV and on-line industry who also benefits exclusively from a special tax. Such options involve a direct use of tax payer money, an explicit redistribution of wealth that will be harmful to economic growth in the short term, a slackening of competition in the telecommunications market, and potential bias introduced by a determinedly left-wing state media company. These side effects are I feel they might make a the measure an overall negative for the economy, broadband service quality and media independence.

An alternative free-market solution exists, but at a time when the Prime Minister is repeatedly criticising other parties for doing nothing, this option requires the Government to sell the idea of doing less than it does already. It is a laissez-fair option.

Wireless internet services allow for the widening of broadband coverage without necessitating the laying of cables along every street, or if there are tall buildings or other high spots in an area, without even requiring the raising of antenna masts. For example, I work at a building in central London that is signed up to a service run from the top of the Centre Point building.

Unfortunately these services traditionally operate using a small band of electromagnetic spectrum which has been left unregulated. An expensive licence is required to expand into other areas of spectrum and licensees are unlikely to share spectrum as readily as they do in the unregulated section. Simply put, more available spectrum means a better wireless broadband service but the Government is selling this monopoly access to this resource to rich corporations at the expense of normal people.

The solution is very simple indeed, and this is to reserve additional blocks of spectrum for unregulated use – that is, to stop regulating parts of the electromagnetic spectrum. The spectrum previously allocated to analogue television provides a spectrum gap and an immediate opportunity for decisive action.

This idea and the deregulated spectrum are called “Open Spectrum”, because access to the spectrum is open to the entire market of providers from individuals, to small grass roots charitable or hobbyist operators (for an example see SPC’s Open Wireless Network), and commercial operators of all sizes – not just large corporations. This free-market access has the potential to fuel an immediate growth in coverage combined with a gradual increase in service quality as device manufacturers improve the technology. Interestingly, it may even drive a shift in infrastructure ownership away from Government and corporations and literally into the ownership of the people, with individuals voluntarily co-operating to mesh their own devices together to further improve services.

A Frequently Asked Questions document is available which covers this from a historical and technical perspective, and is quite accessible to laypersons.

Derived from a letter sent to my MP.

Seeing Links

Dendrons, Pisces and the CosmosI’m currently engaged by a small systems integrations and – oddly enough, you might think -  web development company. That is to say, I’m working with a company that does web development, creative work and systems integration. I’m working on the systems integration side of things doing architecture and proofs of concept for an event driven integration platform focused around XML processing. This has involved a bit of rules based logic, arguing about defining schema upfront or letting the customer do it using RDF (it’s easy but its complicated) vs using relational databases (its complicated but its easy), a bit of coding with the DOM API, reviewing some  graph orientated process definition languages (if only to prove we didn’t want one) and some thought around long running business processes involving customers in an e-commerce context (which proved we actually did), and straying into architectural issues like whether to incorporate an ESB and what the hell an ESB is anyway.

This collection of abstract issues allows me and my colleagues to spend some time thinking in the abstract, and researching topics and increasingly seeing previously obscure links between things. For example, the fact that a web design company has ended up doing systems integration using a web language like XML  looks like a link, though actually its a complete coincidence which I only just saw. Other weird stuff comes up too, like the fact that the web page of a tool we’re reviewing was two clicks away from a definition of something very like what we’re  building, though we only came across the definition of it (and even  a related book) three months after we started to write proofs of concept. My guess is that it’ll be a useful tool.

Then came a less conceptually loaded link, in fact it was just a plain HTML link of the “if you liked that then you’ll like this” variety that lead me to an excellent InfoQ presentation on what REST is. If you’ve troubled yourself to read any of the links embedded in this article, or even if you’re familiar with some of the terms already then you’ll realise that this presentation actually sits right in the middle of the jumble touching on SOA, good web site design, and the importance of URIs as business identifiers. Of course good business identifiers are important in any system especially relational databases, almost certainly SOAs, and definately in Linked Data and in RDF and were a big topic at Linked Data Planet where I went last year so I’m seeing links stretching that way too.

Do you ever get a feeling somewhere in the back of your head of neurons rewiring themselves? You might just dismiss it as a headache but there is a particularly satisfying ache I get sometimes which is a bit like the aches the day after some strenuous excecise (another weird link) and its a feeling I get when concepts are shifting about and getting connected together in my mind. Well I have that feeling now, and the shapes being formed back there in the etched lines of synapses are pretty interesting, but are too big for one post…

I’ve been watching BBC Parliament

I’ve been watching BBC Parliament coverage of a debate about Parliament’s relationship with the people and new technology such as blogs, twitter, and PR methods such as issuing pamphlets, inviting school children into visitors centres and education centres etc.The PR type stuff still has a feel of dreary pointlessness about it, but I suppose it may work on the brighter or more enthusiastic kids, but the tech stuff was in some cases just as dreary.

They are a pre-web generation embracing this new gadget because its a new gadget rather than because it will work or because its the best way forward.  Eventually there were a few bits of good news, but in general I was discouraged about how much emphasis there was on well publicised gizmos of debatable value and not a lot of substance.

Then, a grey haired old Tory stood up and delivered this corker:

My noble friend has introduced a subject of extraordinary importance, much greater than we are giving it credit for today. My noble friend Lord Marlesford reminded us that Parliament was invented to control the Government. Before that, we had chaos and blood-letting. It actually cost a great deal of blood to build this institution that we now occupy so placidly. It is what stands between the British people and a reversion to some unsatisfactory, undemocratic and, quite possibly, violent existence. It is foolish to think that mere stasis will preserve it.

The line between government and Parliament has been so blurred since the reign of George I that many of the public do not understood the function of Parliament, because they see government functioning inside it. There are, I think, 140 Members of the Government and PPSs occupying Benches in the House of Commons. They are inside the machine invented to control them, into which none could have put a foot before the reign of George I, who did not speak English and had to have somebody here to do his work for him. We are looking at a precious thing. As the noble Lord, Lord Grocott, who has not yet returned to his place, pointed out, the product is very good: it is liberty.

Now, if the British people do not understand that, and if Parliament becomes devalued, they will not stand to protect Parliament because they will not see it as protecting themselves. Therefore, we have a real duty to show the people how the power of Parliament has been eroded, is being eroded and will, if future Governments of all political colours have their way, continue to be eroded, because Parliaments are a thorn in the flesh of Governments. If the public are to understand that, they must understand what we are doing.

Absolutely nothing at all to do with the web or new technology at all – just an old fashioned desire to focus on what really matters and do it properly.

He continued talking, and demonstrated what I mean, with this proposal:

When I was a parliamentary candidate and started looking at these things, I well remember the furore of excitement if a Minister ill advisedly let a government policy out of the bag, deliberately or accidentally, outside the premises of his appropriate Chamber in Parliament. … [If] a Minister in the … House of Commons, were to make a policy statement outside it, as soon as that was known he was hauled back by the Speaker to face an emergency debate. He got a headline, but not the one that he wanted ….

What happens now, almost without comment and as a matter of routine, is that almost all government policies—or all but those of the hugest importance—are made outside the House, by the Government, to an audience invited by them… As a result, the only comments that the media hear come from Ministers… That means that not only are the voices of the enraged Opposition, of whatever party, not heard but the voices of the disenchanted Back-Benchers of the government party are also silenced. So what the public get is a picture that bears no relation to Parliament at all and nothing gets reported from these two Chambers.

…. Would it not be a simple matter for the House of Commons to take this matter back into its hands and to require the Government to release all news about their business that affects the electorate inside the Chamber? That is where the news would then be, as would the reporters, who would hear what Members of Parliament thought about it. That would be the news, and it would be broadcast on the traditional media, at least. That way, at no extra expense to anyone, Parliament would begin to come back to being the focal point of public interest, which is where it must be if this sovereign and free state of ours is to maintain its freedom in the years to come.

Simplicity is priceless, which is why another old Tory gets the prize for being the most forward thinking peer with this piece of good news:

We can do far more to utilise the internet. Bills are now published in XML format, so anyone can use the material to tag particular clauses and subsections. That takes us some way towards meeting the aims of bodies like mySociety. We should be able to build on this capacity so that Bills posted on the website are indexed in order to enable users to search text and sign up for more specific alerts.

Of course, if he’d said RDFa I’d have had kittens, but he scattered a few more precious stones around:

The Constitution Committee of your Lordships’ House, …  advocated the greater use of informal Keeling schedules, where a Bill amends an Act, enabling people to see how the original sections are amended by the Bill. The Modernisation Committee of the other place has also recommended exploring the possibility of publishing on the web the text of Bills as amended in Committee, with text that is added or deleted shown through the use of different colours.

I understand thought has also been given to interleaving Bills and Explanatory Notes, so that relevant material from the notes appears on the page facing the clauses referred to. That not only makes it easier to grasp the purpose of a clause, but may also encourage those who write the Explanatory Notes to ensure that a note on a clause does not simply repeat the provisions of the clause. I suspect it will be as helpful to parliamentarians as to members of the public…. These are examples of the sort of thing we should be pursuing.

Now there, emphasised, is an example of somebody understanding that presenting information differently can influence the people writing the information and really getting it in a detailed way and turning it into a simple practical proposal. Probably the Constitution and Modernisation Committees took days to trash those out, consulting all manner of experts, but that Lord Norton is citing them and giving them appropriate emphasis is very encouraging.

Less encouraging are the words of Lord Brabazon of Tara the Chairman of Committees who says:

In addition, Bills are already available in XML format—whatever that is—which allows individual clauses and subsections to be tagged, as mySociety wants.

The noble lord clearly does not recognise the power that you get as a computer programmer from using a standard syntax. Perhaps he doesn’t drive a car since its pretty obvious that standardising fuels, fuel caps, and pumps and other technical details in cars have enabled us to have a proliferation of petrol stations to our great benefit.

The reasons this is the case are much the same between the two fields and are not exactly complicated so it’s discouraging that Lord Brabazon regards it as an appropriate place to make self-deprecating jokes.  Using XML to describe the activities of Parliament is a way to expand the community of people able to get involved with presenting the data in new and interesting ways. It will allow parties, think tanks, charities and search engine companies as well as an army of enthusiastic voters to help the public stay informed about Parliament.

In short, publishing XML is the cheapest possible way he can achieve the goals they agreed on during the debate. Not only bills but all Parliamentary data should be published in XML, and its should be reliable consistent good quality XML to enable the widest range of contributors to get involved in the widest range of Parliamentary activities.

If you must vote for a black man

Vote for this guy:

You deal with a lot of social issues on the album, especially that of gun crime. What solutions would you propose to the government to tackle these issues?

Nothing. It’s not the government’s problem. They are not dying… we are. They are not losing friends and family, we are… so it’s our problem. The sooner we realise that they really don’t give a fuck about us, the quicker we can stop blaming everybody else and take responsibility for our own actions. As soon as we blame someone else for our condition then we’re saying that they have control over the situation and we have no control. If we have no control over our own lives then we’re fucked. The reason that we, for the most part, feel so powerless is because we have been systematically programmed to give our power away. One of the most powerful things we have is our mind and the ability to think individually and independently. This power is eroded on a daily basis. We are force fed false information and false public opinion, which reinforce a uniform way of thinking which in turn turns us into the robots we are to day. We need to wake the fuck up and change what we don’t like! Sorry about that I can go on forever.

That’s Genesis Elijah, clever young chap.

Question put to him by UK Hip Hop in an interview in 2005.

Not the first time I’ve quoted that, but somewhat topical I think.

Resilient DNS cache on Ubuntu

One of the most irritating things about being a geek (though far from the most irritating thing) is becoming annoyed with apparently foolish or below par performances from technical widgets. What gets you is that you know exactly what’s wrong, it all seems apparently obvious that either a) its simple and common and should have been prevented or fixed already or b) that the hazard was so clearly obvious that it should have received a higher priority. Today, I’m talking about the internet’s obvious single point of failure: DNS.

Have you ever noticed that Firefox is sitting there apparently inactive (translation: nothing is flashing) with a status bar message like “Looking up feelitlive.com…” despite the fact that you looked it up just fine a few minutes earlier? You want to find out whats on and go out, not debug your network, so you never investigate it and never call your ISP because it does work eventually and ISPs use call queuing technology rather than investing in extra human beings.

Anyway, this malady affected some of my favourite political blogs on the night of the US election and it didn’t take much F5 bashing to work out that popular sites like sky.com worked fine and less popular sites worked slowly and really niche market sites like er… ubuntu.wordpress.com, for example, didn’t work at all. Since it was election night I wasn’t going anywhere so I called O2 to have them confirm the obvious – a DNS server somewhere on BTs network was broken and local caches were only populated with the more frequently hit domains so that was all you got. Hmmnn… big event happening, everyone looking for news? Might it get busy on the web? Do you think?

I figured, “this is stupid, I visited the site earlier, why doesn’t my computer keep the IP address and re-use it?” I wanted a DNS cache! That way, my ISP’s DNS service only needed to work once and I would be protected from such foolishness.

The techy bit

Luckily, the article I wanted was in Google’s cache (accessed using an IP number not a DNS name, so working just fine…)  but its proper URL is http://ubuntu.wordpress.com/2006/08/02/local-dns-cache-for-faster-browsing/

The article is a little over complicated for a laptop user, since most laptop users know the button to reset their wireless connection and aren’t DSL users as such either. I got away with simply installing dnsmasq using Synaptic Package Manager and editing two files using “sudo vim <filename>”.

First I opened /etc/dnsmasq.conf and uncommented the line:

#listen-address=

and entered my loopback IP so it looked like:

listen-address=127.0.0.1

You can also listen on the loopback interface “lo” by editing the line above instead, if you prefer.

Then in /etc/dhcp3/dhclient.conf I found the line:

#prepend domain-name-servers 127.0.0.1;

and removed the “#” to make it active:

prepend domain-name-servers 127.0.0.1;

I gave dnsmasq a precautionary restart with:

sudo /etc/init.d/dnsmasq restart

and after pressing the button to reset my wireless connection – which on Ubuntu is the little blue bar chart thing on the bar at the top right, followed by the little blue round widget for the network your on.

Anyway, that clearly didn’t work because the ISPs DNS server didn’t work at all for the little web sites, so reducing the minimum to having it work one time was still too high a burden on the overloaded machinery.  I didn’t find a solution until just now, after another server blip. OpenDNS allow you to use their DNS servers for free, no questions asked, but with a DNS cache installed it seems silly to use the OpenDNS server as the main server.

Luckily, there is a command to append the OpenDNS servers to the end of your nameservers list, it goes in the file /etc/dhcp3/dhclient.conf :

append domain-name-servers 208.67.222.222,208.67.220.220;

When I checked resolve.conf I saw the .222 address listed at the end, and the .220 server had vanished, but I still have a local cache, and two independent nameservers and my blip is gone, so am quite content (Jaunty doesn’t have this issue, but doesn’t guarantee it’ll try every DNS listed)

Extra dnsmasq.conf tweaks:

Uncomment (make active) line 406 to stop failures being permanent:

no-negcache

If one of your upstream DNS providers has executed an immoral land grab on unregistered domains (a la Verisign) then list their IPs likewise (see line 420):

bogus-nxdomain=64.94.110.11

Note that I don’t put Open DNS in that category, they are giving you something free on certain conditions, its up to you to obey those conditions. It is useful and proper to list Open DNS like this if there is a temporary problem with their redirections, otherwise you are basically stealing. I use this on a network where simple hostnames like “fredspc” don’t resolve on the first attempt.

« Previous PageNext Page »