The Blog




Google censored by the Church of Scientology and the DMCA  Sez Google: "We removed certain specific URLs in response to a notificationsubmitted by the Religious Technology Center and Bridge Publicationsunder section 512(c)(3) of the the Digital Millenium Copyright Act(DMCA). Had we not removed these URLs, we would be subject to a claimfor copyright infringement, regardless of its merits." (emphasis mine). Here are (some of ) the allegedly infringing links: www.xenu.net/  www.clambake.org/  home.kvalito.no/~xenu  [thanks, bOing bOing] Many years ago there was anon.penet.fi, an anonymous remailer in Finland that was shut down as a result of actions by the CoS. There have been numerous cases of harassement through Usenet by them. And now this. Enough already.




Microsoft Says XML Web Services Tool for Java Nears Completion : but Microsoft cautions that applications and services built with Visual J# .NET will run only on the .NET framework and will not run on any Java virtual machine. I have to wonder why anyone would choose to program in a Java that was not cross platform. I guess if you need to cross train, then it would mean you wouldn't have to learn C# to work in an MS environment. But isn't J# always going to be 6 months behind C#? And if you're not in an MS environment, it's apparently irrelevant.

If I wanted to read the NY Times, which I don't, I'd read it via RSS.




You gotta love it. spamradio does text to speech on all the spam they receive and then broadcasts it with a chillout/trance background.

One of the mildly irritating things about XML-RPC is that it doesn't support named parameters directly. This makes it slightly more awkward to have standard function calls with optional parameters. But there's a simple fix for this which is to encase all the parameters into a struct in which case all the data is held in name-value pairs. I think this is actually a strength of XML-RPC because it provides two ways of encoding parameters at a very small cost in extra complexity for one of them.

In the last few days, we've seen another outburst of creativity among the various people thinking about a universal weblog API. The push to build a replacement and extension to the original Blogger API had already thrown up 3 or 4 attempts. Now Userland has thrown another into the ring and done so with an implementation as well as a spec. This has also caught the attention of Ev and so might easily find it's way into Blogger and Blogger Pro. At which point the sheer weight of deployment will make it a de facto standard that everyone else has to support as well. Interestingly, most of the new attempts including the one from Radio holds most (but not all) of the parameters in a struct. This is a good thing but if you're going to use a struct for some of them, why not use it for all?

Which is all well and good except that the original API had a number of highly Blogger Specific features and was brittle as it used plain parameters. And it's pretty easy to see that every attempt so far has the same problem that some aspect is unique to the specific system that the author is really trying to support. It doesn't feel like any of the authors have completely taken on board the idea that this API should be universal across as many different blog system architectures as possible.

Then there's the social problem of how standards like this are developed. Very occasionally a standard is developed and succeeds as a group effort. But in almost all other cases, a single (more or less benevolent) dictator in the form of an individual or organization drives the standard forward and makes it happen. So we have Ev and Blogger creating the first. And Dave and Userland creating the second. The rest of us can scream and shout and moan that they got it wrong and we may think that they have a duty to listen and take our comments on board. But in reality, there is no duty. The standard will succeed or fail on a combination of it's merits and the extent of the deployment. We may not like this, but it's the way it is. 

So why am I saying all this? Well I wrote a Blogger API for Drupal and Drupal specific extensions and I use the Drupal version every day to communicate between a Delphi desktop blog editor and this blog in PHP. But frankly, I put no effort into promoting it beyond the Drupal community and in retrospect I got the API wrong. It works for me and gets my job done, but like everyone else I made it specific to the system I wanted to use.

I suspect the window has now closed for a while and the chances of producing an elegant and global standard are pretty slim. No matter how flawed the Blogger and Userland versions are, they've got the critical mass of deployment. But that doesn't stop me thinking about it and trying to come up with a solution in my head. I'm just not sure I've got the energy or time to justify and argue the case on the weblog-devel mailing list.

Enough ranting, here's some pointers.

Put everything in a struct and use named parameters. If a server gets a param it doesn't know, ignore it.

Have a bare minimum of primary function calls. I reckon you only need 4
setBlog() If you supply a postid, update, if you don't insert.
getBlog() Return a complete post
delBlog() delete a post identified with a postid
listBlogs() return a list of postids.

Use type string everywhere. You can't hope to get any commonality on the exact format of things like postid.

A post only has three elements. These are almost common across all systems. But if a system doesn't support one just ignore it. And if one is not supplied then auto-generate it.
Postid Every system has a unique id for identifying a post
Title If there's no title and you need one just come up with a heuristic to use the first n words of the body
Body  self evident.

Every system uses a userid/password to identify the user so we better put those in.

Quite a lot of systems allow multiple blogs. by no means all, but enough to make it worthwhile including something for this. So we better have BlogId as well.

So that leaves us with:-

setBlog(struct(userid, password, blogid, postid, title, body)) returns postid; //postid=0 for failure
getBlog(struct(userid, password, blogid, postid)) returns struct(postid, title, body);
delBlog(struct(userid, password, blogid, postid)) returns boolean;
listBlogs(struct(userid, password, blogid, count, [start])) returns array(postids);
//return the last count postids, unless start is specified in which case return count postids starting at postid=start.

So there you have it. Simple, elegant, minimal. Everything else is an extension for a specific system. Guess I better go and write some code now.

So RCS is free. Except of course, that it runs on Frontier or Radio which aren't. Is this the Razor-Razorblade business model?

It's all bollox, isn't it.

Or maybe I'm just depressed this week. sad




Looking through the referer logs for Ecademy, I'm seeing quite a few coming from Radio. What's awkward for me running the website is that these show up as 127.0.0.1:5335. It's a shame that it doesn't report something a bit more helpful so that I could turn it back into some info about who it actually is. But maybe that's not possible in http.




Where Music Will Be Coming From : Kevin Kelly (ex editor of Wired) is a smart guy and he's come up with one of the few intelligent analyses of the current and future state of music. Good stuff.

Alice, Bob and Eve too Crypto porno movie goes up for auction [thanks, The Register] Proof that geeks are sexually repressed if any was needed! Imagine a porn movie with dialog full of references to cryptography, written and produced by a bunch of cypherpunks. Both the hard and soft core versions are up for auction with full distribution rights.  Current high bid is something daft like $2.50




Why do lots of blogs have little smileys in gif form? happy. But more to the point why are the gifs on their side? sad Is this some nostalgic longing for the good old days of ascii art and non-proportional fonts? ;-) Talking of which I need a better non-proportional font for reading email. I'm bored with Courier New. Can anyone recommend one in Truetype format (with a pointer?)

The total software, services and hardware opportunity derived from Web services will catapult from $1.6 billion in 2004 to $34 billion by 2007, according to research firm IDC. You know, there's something quite comforting to be working in an area that is right on the hype curve again. Go back 3 years, substitute "Netmarkets" for "Web Services" and we were awash in the same headdlines. It got so silly that I used to have a section in a newsletter I was doing that had a title "The X Market will be Y big in Z years". Let's hope we don't go down the same route and blow it all this time around.

Google News Google has a news search site (in beta). Link [thanks, bOing bOing] This is a sitter for RSS. Can we get Google to start producing RSS natively? 




Here's a little tip I picked up from the end of an article in The Register. When you can't be bothered to find the URL for a link, just add these words to the end of the article. (Google can be reached here). Or in other words, STFW, idiot.

Cool robot of the week from Nasa is just so cool! [thanks, bOing bOing]

Radio has an update to yesterday's update. New feature: Automatically Generated Links. This is the feature Julian Bond has been patiently waiting for.   In the documentation page, it says, "What if an item has a Title but no Link?". To which I have to reply. "What if an item has a permalink and no title?" Which is surely the general case. Now I'm not currently using Radio and maybe I've misunderstood and it already does this, but I'd like to see Radio users generate RSS with the permalink in the link tag by default and for them to have the option to do something different. And there not to be any linkage with whther there's a title or not. At the moment, it looks like this only happens if they also enter a title. Guess I'll just be patient for a little while longer. happy




Blogging your way to knowledge :: Dotcom Scoop : I am a promiscuous Internet tart that doesn't like being told what to read.

The readers reply to Orlowski's piece on bloggin in the Register. Blog almighty! Your take on the techno-utopians' triumphalism [thanks, The Register] One of the best comments asks where Orlowski's blog is, seeing as he says "we" a lot. Well have you got a blog, punk? Well have you? Maybe we should ask the same question of Dvorak?




New (Radio) Feature: Titles and Links in Radio-generated RSS It's good to see Radio now supporting the title and link tags in the RSS it generates. It would be even better to see Radio provide an optional setting to auto-fill the Link tag with the Permalink of the item. Exactly as CNet do in the example quoted on the description page for the new feature.

I read a number of Radio generated blogs in RSS. I'd like to be able to blog about posts I see without having to visit the site and wonder around trying to find the permalink, so I can point back to it. Curiously, Scripting News is one of the few that does include a permalink in the Description tag. It seems to me that most of them don't although I'm not sure if this is Radio's default behaviour.

At the end of last week, I went live with a new site for Ecademy at http://www.theecademy.com. The focus is on E-Commerce and Web Services, primarily in the UK. The site uses a number of our favourite technologies.

  • RSS News import from 60 or so feeds, grouped into topics

  • Slashdot style articles and comments on web services topics

  • RSS export of content generated on the site

  • Group Blogging, somewhat like O'Reilly

  • Blogger (& Drupal) API for blog input

  • Automatic Weblogs.com ping 

  • A link to WSindex, a directory of Web Services resources on the net

    Needless to say, if anyone wants a similar niche portal for some other industry or market, I'd be happy to help set it up. For money! ;-)  

  • 1 to 20 of 3860