Scripting News for 6/24/2007

I give up 

I don’t identify as a consumer. Why not get it over with and refer to me as a parasite.

Will Linked-in open up? 

Apparently Linked-in is considering its options as a platform with an API. The reason: Facebook, newly open to developers, is stealing its thunder. It would be cool if they just implemented an identity service that managed relationships between users, and allowed developers to define the relationships. Rather than incrementally one-upping each other by being slightly more open, why not go all the way, and operate an indentity service for your own application and for everyone else. This would put Linked-in (or whoever) at the center of Internet 3.0.

A few days ago, I wrote about explosive deconstruction of social networks, and said I didn’t know how it was going to happen but it was definitely going to happen. I posited that perhaps Twitter was enough of an identity system to serve as the core, and since then I have been able to latch a compelling app onto Twitter, one that captured a lot of people’s imaginations in less than 48 hours. So that tells me that Twitter is probably sufficient (I have to finish the implementation).

Twitter meets podcasting, day 2 

Continuing yesterday’s thread.

I’m now working on a web service that takes four parameters:

1. username (a string)

2. password (a string)

3. MP3 bits (base64-encoded binary)

4. metadata (a struct)

The username and password are for the user’s Twitter account. This data passes through the web service, it is not retained. You have my word of honor on that.

The bits are the “gram” — the official limit is 200K, but there’s a little bit of grace. (We’ll accept slightly more than 200K.)

The metadata is a struct that can contain fields that have the same names as an RSS 2.0 item, such as title, link, description, category, source, etc. Very much like the Metaweblog API. Not all the elements are acceptable, but ones that aren’t are ignored. (For example, enclosure.) All are optional, as is the struct itself. The title, if present, is used in forming the Twitter post. The remaining elements are retained, and used to form feed(s).

The twits are also posted to a global Twitter account — twitogram. (They don’t allow accounts whose name begin with “twitter.”)

The username and password must be valid for the MP3 to be retained.

The service returns a string, if successful, the URL where the gram is stored. (I’m using Amazon S3 for the storage, so it should be fairly reliable.)

There’s a limit to the number of grams you can post over time. Not sure exactly what the limit will be. Maybe no more than one every ten minutes? Interested in people’s opinion.

The ideal client for this service, it seems, is Flash, because it can do the MP3 recording and has XML-RPC support. I will also implement a RESTful interface.

Disclaimer #1: Who does he think he is? Just some guy. πŸ™‚

Disclaimer #2: My mother loves me. (I think.)

More dislcaimers will follow.

Postscript #1: 29 hits today for TwitterGram.

Sign of the time 

Rafe Needleman: “Go to friend’s wedding or blog Federated fracas?”

Berkeley hills 

Berkeley hills

This is the neighborhood I take my walks in.

What you can’t tell from the picture is how perfect the climate is for exercise.

I think it’s the nicest weather in the whole United States.

4 responses to this post.

  1. Dave,

    You are right on with the “gram size”. It’s 200KBytes is a perfect size for the mobi/EVDO twitter.

    I also love the CS/Web/Social Media Physics you’ve invented here:
    1 twitter “gram” = 200KBytes

    Keep digging!!!
    Harold Gilchrist


  2. one word: ‘nice’ πŸ™‚


  3. CB Radio over RSS? πŸ™‚


  4. looks a little bit like twitcasting..


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: