First de facto standard Blog API was Blogger API by Evan Williams. It was naive in design and had some design peculiarities like appkey puzzled others, but it worked. Evan's "experimental" disclaimer lost its merit when his API was taken up by others without him complaining loudly about it.
Dave Winer then designed MetaWeblog API to supplement Blogger API with some notable overlaps in features. MetaWeblog API is a classic example of 'embrace and extend' strategy which has many benefits as well as many problems. One such benefit is taking of initiative which is the opening note of many war songs.
Both Evan and Dave had the opportunity to remove the danger of confrontation when MetaWeblog API was being designed. Unfortunately, neither did so. In fact, both aggrevated the situation by Dave not supporting appkey parameter from MetaWeblog API and Evan starting work on Blogger API 2.0.
I think both Dave and Evan are responsible for the mess we have today and I see little chance of a universal Blog API emerging for a while. If I had the power to dictate things, I would have the Echo project adopt the union of Blogger API 1.0 and MetaWeblog API as Echo API 0.0 and extend it as needed without breaking backward compatibility.
Will everyone involved sacrifice their prides, ideals, and needs for the good of all? Maybe, just itty bitty miraculous maybe.
Update #1: I thought I should make some of the implications of my proposal clear:
- Echo API 0.0 will be just as pretty as it is now. Will you choose beauty and elegance over universal Blog API and continuity?
- Members of Echo project will control the future of the universal Blog API. If you want some control, join the project.
- All the blogging tools will continue to work.
- XML-RPC binding must be supported. SOAP and REST binding are up to the Echo project.
Update #2: Since people seem to be still mixed up about what I mean by "just do it", let me list the specific actions that must take place before the miracle can happen.
- Dave must say "I will support Echo API 1.0 if it is backward compatible with the union of Blogger API 1.0 and MetaWeblog API as it is now."
- Evan must say "I will support Echo API 1.0 even if it is backward compatible with the union of Blogger API 1.0 and MetaWeblog API as it is now."
- Echo must say "We will use the union of Blogger API 1.0 and MetaWeblog API as the basis for Echo API 1.0 with the understanding that backward compatibility must not be broken."
Three seemingly simple but courageous actions are the key ingredients for the miracle. And PLEASE don't say it any differently, add other conditions, recount the past, or even make apologies. Just do it.
Lastly, I don't want people to send me their opinions, questions, nor criticisms. Time for discussion is over. If you want it to happen, just do your part without worrying about others doing their part. Trust me, you have everything to lose by doing it, so mine as well do it without thinking about it.