Category Archives: Uncategorized

Back to the US of A

Well, I’m back in La-La land. I had been working remotely in Edinburgh on Revver, this was fine for a while, but we got our A-round of funding about a year ago and after that it became less and less realistic for me to be on the far side of the Atlantic. Janie and I moved back here in January, the initial plan was for a 3 month period, but it rapidly became apparent that it would be rediculous to go back to Edinburgh any time soon, so we are now back here for the forseeable future (the forseeable future being a relatively short period of time in my industry).

A few days ago Revver announced its B-round of funding, $8.7 million. The company has been growing rapidly, we have hired a bunch of really cool people with diverse experience and expertise, and consequently it almost feels like a different company every Monday morning – because there are almost always new people to meet and welcome to our adventure. Revver is interesting in that it is squarely in the media space, which is quite a departure for me. Freenet is pretty disinterested in anything entertainment related, since our goal there is to facilitate the proliferation of truth, fiction is of less interest to the Freenet community. Uprizer started by looking at entertainment, but at that time, the only thing the entertainment industry wanted of the Internet was for it to go away and leave them alone, so Uprizer looked elsewhere.

After several relatively quiet years, Freenet has reawakened with the alpha release of Freenet 0.7. Its pretty exciting, in most ways it is a much simpler architecture than before, and that makes things much more predictable. We have a rapidly growing user and developer community, it actually feels a lot like 2001 all over again, except this time we have a really solid architecture and several years of mistakes that we now know how to avoid. These days, when I want to cheer myself up – I think about where Freenet will be in 6 months, and that almost always has the desired effect.

As usual I have a bunch of cool ideas on my stack, unrelated to other projects, that I am just dying to implement, but given my other committments, who knows when I will be able to do this, I don’t think I have ever been this busy.

Watch this space.

Useful Apple script

Here is a useful AppleScript that I use to synchronize my mac with my phone over bluetooth.

Add this to crontab:

30 11,16 * * 1,2,3,4,5 osascript /Library/Application\ Support/iSync/SyncNow.scpt

Here are the contents of SyncNow.scpt :


tell application "Finder"
set iSyncRunning to (number of items in (processes whose name is "iSync") is greater than 0)
tell application "Finder" to set visible of process "iSync" to false
tell application "iSync" to synchronize
tell application "iSync"
repeat while (syncing is true)
end repeat
if iSyncRunning is not true then
quit
end if
end tell
end tell

Criticism of Creative Commons

Alex Bosworth has written an essay about flaws that he sees in the Creative Commons model. This criticism is similar to those expressed by Richard Stallman in an interview a few weeks ago.

The problem is that, in an effort to afford choice to the creator through a choice of licencing terms, creative commons creates confusion for those that might seek to reuse CC material, while encouraging creators to place their content under more restrictive licenses, something I suspect they might not do if the option wasn’t available to them.

The GNU General Public License had a better approach, there were only two versions of it (the other being the LGPL, a more liberal license intended for code libraries), it always permitted reuse, and it did not discriminate against classes of user (such as commercial users). Despite the lack of options for the creator, the GPL is wildly successful.

A simpler better alternative to XML

I have never been the biggest fan of XML, certainly I never felt that the reality of it lived up to the hype. It seems I am not the only one, and some people have come up with a simpler, more compact, easier to read alternative called JSON.

By way of comparison, here is some information expressed in XML format:


<menu id="file" value="File" >
<popup>
<menuitem value="New" onclick="CreateNewDoc()" />
<menuitem value="Open" onclick="OpenDoc()" />
<menuitem value="Close" onclick="CloseDoc()" />
</popup>
</menu>

And here is the same thing in JSON:

{"menu": {
"id": "file",
"value": "File:",
"popup": {
"menuitem": [
{"value": "New", "onclick": "CreateNewDoc()"},
{"value": "Open", "onclick": "OpenDoc()"},
{"value": "Close", "onclick": "CloseDoc()"}
]}}}

Ok, so perhaps not a massive difference, but JSON is far easier for a computer to parse, and I think it is slightly easier for a human to understand too.

Musings on Copyright

A while ago I came up with a short parable in an attempt to articulate the injustice I felt was occurring in the name of “intellectual property”:

I was in the pub last night, and a guy asked me for a light for his cigarette. I suddenly realised that there was a demand here and money to be made, and so I agreed to light his cigarette for 10 pence, but I didn’t actually give him a light, I sold him a license to burn his cigarette. My fire license restricted him from giving the light to anybody else, after all, that fire was my property. He was drunk, and dismissing me as a loony, but accepted my fire (and by implication the licence which governed its use) anyway.

Of course in a matter of minutes I noticed a friend of his asking him for a light and to my outrage he gave his cigarette to his friend and pirated my fire! I was furious, I started to make my way over to that side of the bar but to my added horror his friend then started to light other people’s cigarettes left, right, and centre! Before long that whole side of the bar was enjoying MY fire without paying me anything. Enraged I went from person to person grabbing their cigarettes from their hands, throwing them to the ground, and stamping on them. Strangely the door staff exhibited no respect for my property rights as they threw me out the door.

Unfortunately, the intervening years have not alleviated my concerns :-/

Serenity

Just saw the world premier of Serenity here in Edinburgh. The cast were there, along with the Director and producer, and there was a QA after the film.

I liked it, and it will certainly please fans of Firefly, the excellent sci-fi series that was cancelled despite establishing an extremely loyal fan base.

The big question is whether it will stand as a movie in its own right, and since I am rather biased (I was and am a fan of Firefly), the jury is still out on that one.

The QA was kinda strange, people in the audience kept asking various cast members to sing and dance, something they were quite bemused by. I guess that is what happens when you give a bunch of people the opportunity to ask questions at 12.30am when most of them are probably rather exhausted.

Ok, I am off to bed as I am flying to London for the day tomorrow to do an interview about online anonymity for the BBC’s Click Online show.

New way to build GUIs

One of the things I enjoy pondering occasionally are ways to improve the often onerous task of building graphical user interfaces. I just found an interesting approach to doing this in Java that will be appearing in the next major release of the NetBeans IDE, its called “Matisse”, and you can see a demo of it here.

The problem with GUI builders is that they either tend to allow you to position GUI components absolutely, which is easy, but causes problems when your user decides to change the size of your dialog box, or they force you to use a layout manager which is far less easy, but where the GUI behaves correctly when resized.

Matisse makes it feel like you are doing the former, while actually doing the latter. It lets you drag and drop components onto the GUI, and infers things such as which components should probably be aligned together both horizontally and vertically, so that they stay in the right place when the GUI is resized.

XCode on the Mac does something similar, but it is nice to see this functionality in a cross-platform language like Java. This could be enough to tempt me away from Eclipse as my favourite Java IDE once it is stable (I have played with it and it isn’t yet anywhere close to being reliable enough for production usage).

Me on TV

You can see my interview on BBC Newsnight about 30 minutes in to this video on the disappointing MGM Versus Grokster decision.

Update (29/6/05): : The video is now out of date, but fortunately David McBride was kind enough to produce a transcript, which I have copied here:

K: Kirsty Wark, Presenter, Newsnight
G:Geoff Taylor, General Counsel, British Phonographic Industry
I:Ian Clarke, Freenet

31:06

K: I’m joined from Edinburgh by Ian Clarke who is founder, coordinator and creator of Freenet, And Chris Taylor who is a lawyer for the British Phonographic Industry. Ian Clarke, first of all, what do you think will be the impact of today’s judgement?

I: Well, I think this judgement is a loss for innovators and the public and a hollow victory for the entertainment industry. The only real winners here will be lawyers who stand to make a lot of money over the legal uncertainly that has been created by this ruling. It’s far from clear cut. This ruling did not rule against Grokster the peer-to-peer network because of what Grokster’s technology did; the ruling went against Grokster because of how Grokster tried to promote their technology and internal communications within the company about Grokster’s business plan.

K: Right, let me bring in Geoff Taylor here. Isn’t it incredibly luddite, and indeed myopic, actually a technological advance can only help you, drive you forward. It creates new platforms, I mean look at iTunes, it creates new waves of stealing music. This is all for the good.

Absolutely, and we’re tremendously supportive of all of these technological such as iTunes…

K: Well clearly not.

G: … such as Napster, and in fact peer-to-peer. The problem is not the technology of peer-to-peer the problem is the way it is being used by companies such as Grokster and Streamcast for encouraging people to break the law by stealing music. They’re profiting from people stealing music, and what this has established beyond all doubt is that it is illegal for them to do so.

K: You’re encouraging people to break the law, Ian Clarke.

I: This has certainly not established that beyond all doubt at all. This case will now go back to the District Court of Appeals, where it will go to trial. What this has actually done is created significant legal uncertainty where there was none before. This decision rests upon the intent of the creators of new technology and legislating, I’m sorry, litigating intent is an extremely expensive business and it’s going to make it very difficult for an innovator who is just starting up to know whether or not he will be liable to get sued and that will have a chilling effect on new technologies.

K: But isn’t it just like charging a drug company for [an] overdose?

G: No, I don’t think it is at all. I think that analogy might work if drug companies were encouraging people to take overdoses, which I don’t believe is generally the case. Here we had companies who built a business around encouraging individuals to upload and download copyrighteded material against the law and then were profiting from that and what the Supreme Court has done is that it has made it clear that it is illegal and that companies that build a business in that way are responsible for what they do.

K: It is a version of stealing through Ian Clarke, isn’t it?

I: Well, I would dispute whether copyright infringement is stealing. Stealing is when you take someone’s property, if you deny them of, for example, a car…

K: ..You are infringing copyright here, you are doing that.

I: I am not, but the users of this software are, many of those users are, about 90% of them. The issue is not so much what the users are doing, they can and are being sued. The issue is whether the creator of the technology can be sued if people misuse their technology. If we were to ban every technology that is capable of misuse, we’d be living in the stone age.

K: Isn’t that the case that you have to have innovation and that innovation is often in the first instance, illegal.

G: Well, I think what is mistaken in Ian’s comments is suggesting in some way this judgement will deter innovation. Just the contrary, it’s going to take us onto the next step of the evolution peer-to-peer.

K: Well it might take it onto the next step, it might take it onto the next step of an extrordinary programme to stop any kind of detection, and that in itself could be very subversive because presumably the problem with that is that paedophiles and other ne’er-do-wells can use this technology. So on the one hand you’re saying this is fantastic, it could have a drive on technology but in fact it could have a deliterious effect.

G: There are always going to be people who are going to try to design software for the purposes of copyright infringement. What the court has done here is that it has said that you can’t do that. It has also referred to the fact that, from a previous judgement, that if a company tries to use something like encryption so that they actually don’t know, they design their systems so that they don’t know what is going on on their network, that in itself will make it illegal.

K: Ian Clarke, as an innovator, are we going, is someone already working on three steps ahead?

I: Well firstly, that is not what this judgement says. This judgement quite specifically says that if a creator of technology does not take steps to prevent infringement, that does not in itself does not fall foul of this judgement, so I would dispute that to begin with.

K: Thank you both.