Dare Obasanjo aka Carnage4Life
You can buy cars but you can't buy respect in the 'hood - Curtis Jackson
Navigation for Dare Obasanjo aka Carnage4Life - What's Wrong with the MetaWeblog API?
Content
Sidebar
Footer
June 29, 2003
@ 04:58 PM
Comments [0]
What's Wrong with the MetaWeblog API?
First a bit of background. The MetaWeblog API descripes a set of remote procedure calls invoked via XML-RPC for interacting with a weblog engine. One can perform actions like post a new entry, edit an entry, and retrieve an entry using the API. This means that people can use weblog clients such as
W.Bloggar
and
Blogert
to edit and post their weblog entries to any blog server that supports the API. I had planned to implement this API for RSS Bandit so I could also turn it into a blog client but decided against it due to significant issues with the MetaWeblog API and its ilk.
Below are the top three reasons I decided not to implement the MetaWeblog API (or any other of the current crop of APIs for posting/editing weblog content) in
RSS Bandit
but instead have decided to help Sam Ruby in making Echo come to fruition.
Security
: The MetaWeblog API has no concept of security. Passwords are sent in plaintext as parameters to XML-RPC functions (i.e. they are sent in plain text on the wire as part of the XML message).
Strongly Coupled To XML-RPC
: RSS and Joe Gregorio's
CommentAPI
have shown that one can build applications that retrieve and send XML documents from client to server directly using HTTP GET and POST instead of going through an added layer of indirection by using exlicit RPC mechanisms.
One can retrieve messages with HTTP GET and send them with HTTP POST. More importantly this means that other facilities can be layered upon the message format without having to complicate it. For instance, security can be handled with
HTTP authentication
instead of having to
unnecessarily complicate the API
. Tracking user identity can be done using HTTP cookies instead of placing application IDs in the actual message format like the
original Blogger API
did.
Both the Blogger API and the MetaWeblog API are extremely influenced by the RPC paradigm instead of being influenced by the technologies that are part and parcel of the WWW.
I also believe that there should be the API should not just be tied to XML-RPC but should have interfaces that utilize the XML Web Services family of technologies like
SOAP
and
WSDL
not just XML-RPC. There are many products and toolkits that support SOAP/WSDL/etc plus more are being built every day. It makes little sense to me that almost everywhere else in the software industry people are either exchanging XML documents using
RESTian principles
(i.e. HTTP GET and POST) or the XML Web Services family of technologies but when it comes to web content related technologies there is this anachronism where an arbitrarily different methodology is used.
This is not to say there aren't historic reasons for XML-RPC's predominance in this area but that in today's world there is no reason why industry proven methodologies cannot be adopted in tandem with the existing infrastructure.
Limited Functionality
: The MetaWeblog API only allows one to either post and edit blog entries, fetch information about a specific user or change the website template. This is a drop in the bucket considering all the things one would like to do with a weblog engine which can be supported by the engine. For instance there should be APIs methods for
Retrieving entries based on a search criteria (title, date, category, etc)
Posting comments in response to someone else's blog entry
Updating one's user information.
Managing one's visible blogroll.
To put it simply, the MetaWeblog API is a good first draft of a blog editing/posting API (which is not far from the truth since it is just a refactoring of v1.0 of the Blogger API) but it has significant issues which cannot simply be addressed by tweaking a method parameter here or a return type there.
It is time for evolution to take place. Most of the weblog community realizes this and is working together to make this evolution happen. Sadly there are some who view this as a disruption of their legacy and instead of helping are attempting to destroy the project. This is very unfortunate.
Tweet
Categories:
Tracked by:
http://www.25hoursaday.com/weblog/PermaLink.aspx?guid=ff9afe59-735e-4934-b748-ef...
[Pingback]
http://viezbaq.net/clock/index.html
[Pingback]
http://yftbsy1.net/internet/sitemap1.html
[Pingback]
http://fwmwly7.net/colorado/sitemap1.html
[Pingback]
http://issl7ti.net/internet/sitemap1.html
[Pingback]
http://eofw1lk.net/alabama/sitemap1.html
[Pingback]
http://bombaylogger.web.aplus.net/02/index.html
[Pingback]
http://fipmqpn.net/02/sitemap1.html
[Pingback]
http://restablog.dreamhosters.com/household/sitemap1.html
[Pingback]
http://host239.hostmonster.com/~blogford/sitemap1.html
[Pingback]
http://gator413.hostgator.com/~digital/family/sitemap1.html
[Pingback]
http://gthgkir.net/sitemap1.html
[Pingback]
http://uz7fdb5.net/games/sitemap1.html
[Pingback]
http://ik6bcb7.net/sitemap1.html
[Pingback]
http://box432.bluehost.com/~zbloginf/sitemap1.html
[Pingback]
http://gator442.hostgator.com/~hockteam/southwest/sitemap1.html
[Pingback]
« The Tank Goes On
|
Home
|
Insomnia »
Comments are closed.
RSS/Subscribe
Archives
All dates
All Posts
Search
Latest Posts
Girls Around Me app FREAK OUT is really a FourSquare freak out in Disguise
Some Thoughts on Address Book Privacy and Hashing as an Alternative to Gathering Raw Email Addresses
What I Learned After 3 Weeks of Writing Mobile Apps
The Social Graph: An Imperfect Abstraction or an Evolutionary Dead End?
The Real Problem with Facebook
Categories
Cloud Computing (3)
Comics (1)
Competitors/Web Companies (157)
Current Affairs (31)
Das Blog (3)
Life in the B0rg Cube (194)
Mindless Link Propagation (185)
Movie Review (13)
MSN (127)
Music (20)
Office Live (8)
Personal (53)
Platforms (57)
Programming (56)
Ramblings (144)
Rants (7)
RSS Bandit (215)
Seattle Startup Shoutout (4)
Social Software (182)
Startup Shoutout (4)
Syndication Technology (107)
Technology (162)
Trip Report (64)
Video Games (6)
Web Development (196)
Windows Live (228)
XML (203)
XML Web Services (114)
Archives
April, 2012 (1)
February, 2012 (1)
January, 2012 (1)
November, 2011 (1)
September, 2011 (3)
July, 2011 (2)
June, 2011 (1)
April, 2011 (1)
March, 2011 (1)
January, 2011 (2)
November, 2010 (2)
October, 2010 (2)
August, 2010 (3)
July, 2010 (3)
June, 2010 (3)
April, 2010 (6)
March, 2010 (3)
February, 2010 (5)
January, 2010 (4)
December, 2009 (2)
November, 2009 (8)
October, 2009 (2)
September, 2009 (3)
August, 2009 (4)
June, 2009 (1)
May, 2009 (12)
April, 2009 (5)
March, 2009 (16)
February, 2009 (11)
January, 2009 (20)
December, 2008 (12)
November, 2008 (12)
October, 2008 (22)
September, 2008 (12)
August, 2008 (15)
July, 2008 (18)
June, 2008 (19)
May, 2008 (12)
March, 2008 (2)
February, 2008 (27)
January, 2008 (20)
December, 2007 (26)
November, 2007 (25)
October, 2007 (30)
September, 2007 (16)
August, 2007 (34)
July, 2007 (26)
June, 2007 (32)
May, 2007 (38)
April, 2007 (15)
March, 2007 (32)
February, 2007 (33)
January, 2007 (31)
December, 2006 (29)
November, 2006 (47)
October, 2006 (26)
September, 2006 (45)
August, 2006 (41)
July, 2006 (38)
June, 2006 (47)
May, 2006 (34)
April, 2006 (39)
March, 2006 (35)
February, 2006 (45)
January, 2006 (42)
December, 2005 (43)
November, 2005 (40)
October, 2005 (48)
September, 2005 (45)
August, 2005 (40)
July, 2005 (31)
June, 2005 (35)
May, 2005 (39)
April, 2005 (31)
March, 2005 (39)
February, 2005 (22)
January, 2005 (25)
December, 2004 (32)
November, 2004 (27)
October, 2004 (24)
September, 2004 (26)
August, 2004 (21)
July, 2004 (27)
June, 2004 (28)
May, 2004 (40)
April, 2004 (37)
March, 2004 (41)
February, 2004 (51)
January, 2004 (54)
December, 2003 (42)
November, 2003 (40)
October, 2003 (41)
September, 2003 (9)
August, 2003 (11)
July, 2003 (10)
June, 2003 (15)
May, 2003 (12)
April, 2003 (13)
March, 2003 (13)
February, 2003 (13)
January, 2003 (13)
December, 2002 (12)
November, 2002 (8)
October, 2002 (6)
September, 2002 (5)
August, 2002 (6)
July, 2002 (7)
June, 2002 (4)
May, 2002 (8)
April, 2002 (3)
March, 2002 (1)
February, 2002 (1)
January, 2002 (4)
November, 2001 (4)
October, 2001 (3)
September, 2001 (3)
August, 2001 (1)
July, 2001 (1)
April, 2001 (3)
March, 2001 (2)
Admin
Sign In