None

The New York Times on Bloggers

A Blogger's Big Fish Fantasy is the latest from New York Times writer Catherine Greenman in today's Circuits.  This is the article I was talking about two weeks ago - it discusses the struggles, and sometime successes of webloggers looking to establish audiences.  Of course, not all bloggers are looking for audiences, but some are, and it is human nature to want to participate in conversations - to feel like someone is out there reading and thinking about what one says. 

And since the NYT is my old hometown paper, being quoted is sure to make my folks proud.  Kudos as well to Meg, Paul, Susan (who, along with Ryan, was found via the earlier blog entry), and Elizabeth, and great plugs for NewsMonster and Popdex, as well as Technorati.

BusinessWeek on Blogs

BusinessWeek Online has just produced a special report on The Social Web, and the best article of the bunch is Jane Black's piece on weblogs, titled, The Wild World of Open Source Media.  Jane succinctly describes the thrall of blogging as well as its impact on the wider media world, using Salam Pax and the resignations at the NYT as examples.  She did her research as well - discussing diverse viewpoints: from David Weinberger and Glenn Reynolds, Nick Denton to Clay Shirky.

She also writes kindly about Technorati:

It hasn't taken long, however, for the impact of Sifry's software to exceed his harmless narcissism. In the eight months since Technorati appeared, it has become a tool not just for bloggers but for anyone who wants to discover what's on the global agenda.
Well, shucks. 

Technorati Keword Search

I'm extremely proud to announce the newest Technorati feature, Keyword Search.  You can now search Technorati's database of over 360,000 weblogs and get up-to-date information on your search terms.  Bookmark this page:

http://www.technorati.com/cosmos/search.html

The indexes are rebuilt several times each day, which means that it can take as little as 2 hours from the time you post something on your weblog to when it shows up in Keyword Search results.

A few disclaimers:  This is BETA, I whipped it up on little sleep over the weekend, and it may still have bugs.  There are some things that need fixing, like the results ordering and some parts of the user interface.  Rather than wait for everything to be perfect, I figured I'd release what I had in the hopes that some of you would find it useful. As always, I'm interested in getting feedback on how to improve it.

I've also implemented a REST-ful API for search requests as well.  This means that you can use HTTP GET or POST to the following URL:

http://api.technorati.com/search

and you'll get back an XML document with the search results.  Standard disclaimers apply, and you've got to abide by the Terms Of Service, which basically says that the results are for non-commercial use only, and must include a "powered by Technorati" link when displaying the results. 

First off, you'll need a Technorati API key, and if you don't have one already, you can get one for free by signing up as a Technorati member on the signup page and then retrieve your API Key

Next, construct your query.  For the sake of readability, I'm going to show this as an HTTP GET query, but it can just as easily be encoded in a POST for all of you REST zealots. :-)

query=SEARCH_TERM
Don't forget to URL encode your search term if it has spaces or quotes in it.
key=API_KEY
Here's where you put in your Technorati API Key.  You get 500 queries per day, from midnight to midnight PST.
start=RANKING
The API call returns 20 results.  If you want to see result 21-40, set start=21.  You can begin viewing results anywhere in the stream, so if you set start=30, you'd see results 30-49.  Note that there is no guarantee that results will be contiguous - rankings can change, and because the indexes are rebuilt frequently, some rankings may change between calls.  If this is an issue for you, let us know
version=0.9
type=xml
These two variables are built to allow for various format changes as time goes on.  The current Technorati API is at version 0.9, and as long as you set version=0.9 in your API call, we'll always return API  0.9 results.  This gives you developers the assurance that your applications will work for a long time, and it allows us to make changes and extensions to the API.  If you leave the version variable out of your query, it will default to the most recent version of the API (which is currently 0.9).

The type variable controls the format of the output itself.  We may decide at some future time to support other formats other than this XML format.  Putting in this variable allows developers to specify the exact type of output you want to receive.  Right now, the only legal value is type=xml, and it is the default value.

So, if you wanted to perform an API call on say, "David Sifry" and return the first 20 results, you would use (GET syntax):
http://api.technorati.com/search?query=%22David+Sifry%22&key=94035daac6b136378856f3239648ab27&start=1
Please send your feedback and comments, and if you have problems or questions, check on the api-discuss mailing list - lots of smart people hang out there.

Note to self - we still need to make changes to the XML DTD (Ken?) to incorporate the search results.  We also need to include some different sorting options, like sorting by date or authority, not just by relevance. 

Time for a physical - and a social software lazyweb request

beforeafter-small.jpgI've lost 50 pounds on the Atkins plan since November.  I feel great.  Take a quick look at these before and after photos.  Now, I want to go to a doctor and get a complete physical - both for health insurance reasons (lower those premiums!) and because it has been about 3 years since I've seen my doctor.  Well, there's the rub - when I called to make an appointment, they told me that he moved out of town.  Couldn't wait for me to call, I guess.  Frankly, I never much liked him anyway.

So here's my dilemma - I'm looking for recommendations of a good doctor or group in San Francisco that can become my new GP.  This is where the social software idea hit me - I'd love to go to a place like LinkedIn and make a non-work-related request - like finding a good doctor or dentist - and get back responses from my friends or my friends' friends. I know there are tons of good doctors in San Francisco, but this is the kind of choice that becomes so much easier to make if I can get a response from someone I trust - which is the point of these networking services, no?  I'm sure there's even a business model in there, perhaps something like the Meetup model.

So, dear readers, got any suggestions on a good doctor in SF that takes Blue Shield?  Submit it as a comment or drop me a line.

Looking for bloggers who went looking for audiences

Today I got a call from a NYT reporter who is looking to find people who have started weblogs, written for a while, and had a hard time finding an audience.  Are you one of those people?  Ideally, you should have tried a variety of methods to gain an audience, and after trials and travails, you now have a regular readership.  If you're interested in being interviewed to find out your experiences, leave a comment below describing why you would be right for the article, some of the things you did that didn't work, and some of the things that worked.  Don't forget to leave a way to contact you, as the reporter will want to follow up with a number of people.  No promises that you'll get a call, but this does sound like an interesting upcoming article.

Welcome to the world, Noah!

dscn5286.jpgYesterday, May 13th, at 7:21am, my son Noah Joseph was born.  He weighed 8 lbs 10.2 oz, was 21 inches in length, and I'm about as happy as can be.  Mother and son are resting comfortably.  More pictures are forthcoming, but here's one of his foot right after birth, check out those wrinkles!  Big sister Melody has already met him, and she's already planning tea parties.  If you've tried contacting me recently, I'm gonna be somewhat unresponsive for a few days.  More later...

Technorati API 0.9

I'm proud to announce the first public release of the Technorati API, the application programming interface to Technorati's weblog index and search engine.

Over the past few months, I've gotten a lot of requests from people who wanted to be able to use the Technorati database for a variety of purposes - everything from social network research to mini-applications that would send them a page or an IM whenever someone posted a link to their website.  I created the Technorati API order to help foster these creative ideas and developers. I've also got a whole bunch of other work going on, so I didn't want to become a bottleneck between you and the data.

One thing to note: This is beta-level software right now.  Nothing is set in stone, but the code is working, and a number of people have already given some great feedback that has led to changes in the API that make it significantly more portable and forward-compatible than I originally designed it.  I'm planning on adding additional attributes and functions to the API.  Things may change again if someone finds an important structural issue or bug, so you may want to wait a bit (until the 1.0 version comes out) to build big enterprise applications with it. :-)

First off, regarding licensing:  I'm making API calls free for personal, noncommercial use, and you'd be capped at a certain number of requests per day, currently 500 queries a day. The draft terms of service is up on the website.  This is pretty much what some other folks are doing with their API.  I would also like to get some attribution added that points a hyperlink (and maybe a small picture) back to Technorati for people who use and republish the information, sort of like a Creative Commons non-commercial and attribution license.  Of course people who pay money will get to use the data without these restrictions.  If you're interested in licensing Technorati data for commercial applications, or if you want more than 500 queries per day, please send an email to api-sales@technorati.com.

Skip the next 3 indented paragraphs if you're not a super-geek, and read on, starting at "So here's the initial API calls that I've built"...

        The API calls would be built (at first) with a REST-ful interface - a standard web-browser-like program (curl, wget, lynx, etc)would pull down the info, something like:
       
http://api.technorati.com/PROCEDURENAME?key=KEY&val1=VAL1&val2=VAL2 and so forth.
       
        If enough people clamor for it, I can do a SOAP or XML-RPC interface, but REST-ful is easier for me to do, and I don't think people need the multiple-way communications channel that something like XML-RPC or SOAP gives them in addition to the REST interface.  In other words, each API call will be stateless, AFAICT. Besides, I have never written a WSDL file :-)
       
So here's the initial API calls that I've built:


API call #1: Cosmos

GET format:
http://api.technorati.com/cosmos?VAR=VALUE&VAR=VALUE ...

POST format:
http://api.technorati.com/cosmos
with the variables and values returned in an HTTP POST call.

This returns the Link Cosmos for the URL you specify.
       
Set the following variables to get the results you want:
       
url: Set this to the target URL you are searching for.
       
type: Set this to 'link' and you'll get the freshest 20 links to your target URL.  Set it to 'weblog' and you'll get a reverse blogroll - the last 20 blogs who linked to the target URL.
       
start: Set this to a number > 0 and you'll get the start+20 freshest items (links or blogs), e.g. set it to 21, and you'll get the second page of rankings - items 21-40.

format: This allows you to request an output format. I anticipate we'll have multiple output formats, like XHTML, RSS (different flavors), and whatever else comes along.  For now, the only valid format accepted is "xml", which adheres to this DTD.  The format variable is optional - if you don't specify it, it will default to "xml".

version: This allows you to specify a particular Technorati API version response.  Right now, there is only one Technorati API, called version 0.9, but I anticipate newer versions, some of which may not be backwards compatible with earlier versions.  By implementing this variable across all Technorati API calls, application developers can feel assured that they will always get reliable results if they specify a particular API version for requests and results.  The version variable is optional - if you don't specify it, it will default to the more recent version of the API, which at this time is "0.9".

key: Put your Technorati API key in here.  You can get your API key by going to: http://www.technorati.com/members/apikey.html
       
If you're already a Technorati member, just log in and your key information (along with some accounting) is listed for you.  If you don't currently have a Technorati account, setting one up is easy and free, just follow the instructions on the signup page.
       
For example: This call (copy the link location to see thesyntax) will get you the Link Cosmos for the www.sifry.com website (including my blog, Sifry's Alerts).  That API key is my key, so please don't abuse it, get your own!

API call #2: Bloginfo

GET format:
http://api.technorati.com/bloginfo?url=URL&key=APIKEY

POST format (see the cosmos call above for explanation):
http://api.technorati.com/bloginfo

Give it any URL and it'll tell you what blog, if any, that URL came from, and all the info it has on that blog, like cosmos stats and RSS feed, etc.
       
For example: This call(copy the link location to see the syntax) will tell you information about the weblog that created the following permalink: http://www.sifry.com/alerts/archives/000286.html (BTW, the answer is Sifry's Alerts)


API Call #3: Outbound Blogs

GET format:
http://api.technorati.com/outbound?url=BLOGURL&key=APIKEY

POST format:
http://api.technorati.com/outbound

This call will list for you all of the blogs that are pointed to by a blogger (well, most of them anyway).  Simply give the URL of the weblog and it will return for you a list of weblogs that are linked to by that blog. (The database is currently a bit old on this one, I'll move it into production status over the next few weeks)
       
For example, it is a relatively simple call to iterate and get a 2 degrees of separation function from this, which I'm working on... ;-)

Finding out more

The place to go to find out more information on the Technorati API is the api-discuss mailing list.  You can subscribe by sending a message to api-discuss-subscribe@technorati.com or by going to the mailing list page above.  There is a web site that I created just for developers, called developers.technorati.com but right now it is pretty sparse. I'm looking for volunteers who would like to keep that site updated.  Right now I just don't have time.

If you've gotten this far and you're still interested, come join us!  Subscribe to the api-discuss list.  Get an API key, and start playing around.  Leave a comment and let us all know how you're using the API.  Have fun!

UPDATE: The API hasn't been out for a full day yet, and already there exist plugins and drivers for Radio Userland(Dave Winer), Python (pyTechnorati (Mark Pilgrim), two different technorati.py's - Phil Pearson's and Aaron Swartz', and at least three Movable Type plugins - Ben Hammersley's unreleased plugin, Joi Ito's SSI-based plugin, and Adam Kalsey's publicly released plugin!

Amazing. So here's my next thought: Dave Winer and others brought up the idea of Link Cosmos as trackback - and here's the simple equation that popped into my head:

Technorati Link Cosmos on each of your blog permalinks = instant trackback... Of course, you'd have to pull the information several times a day rather than being event based, but it wouldn't require any agreement between the linker and the linkee, and no messy XML-RPC calls involved... I'd love to see that in an MT plugin, I'd put it up on my blog!

Hilary Rosen to rewrite Iraq's copyright laws?

It is being reported in the My 6, 2003 Harper's Weekly Review (damn, no permalinks!) and The Register that Hilary Rosen, the CEO of the Recording Industry Association of America, is going to help rewrite Iraq's copyright laws.  Whoa!  I thought we were fighting this war for the freedom and liberation of the Iraqi people.  Hmmm, real, or hoax?  Rosen has announced her resignation from the RIAA by the end of 2003.  The only article I can find on this story is Andrew Orlowski, who isn't exactly known for his journalistic ethics or fact-checking ability.  He references investigative journalist Gregory Palast, who has written for Harper's in the past.  Orlowski also has quotes from Palast from the Democracy Now radio program.  Can anyone verify this?