views:

548

answers:

4

I know that some big players have embraced it and are actually exposing some of their services in APP compliant way, already. However, I haven't found many other (smaller) players in this field. Do you know any web application/service that uses APP as its public API protocol? What is your own take on AtomPub? Do you have any practical experiences using it? What are its limitations and drawbacks? Do you prefer AtomPub as your REST style or do you have some other favourite one? And why?

I know, these are many questions, not just one. The thing I'm interested here in is simple, though - how did the APP standard hit the market and particularly how does it seem with its adoption among web developers?

A: 

My own research so far:

  • Wordpress supports AtomPub as its API protocol since version 2.3
  • GData is probably the biggest shot in the AtomPub field so far
  • Habari - new promising blogging system promotes APP as one of its main features
  • BlogSvc.net - an AtomPub server, blog engine for .NET platform, written in C#
  • Jangle - an open source project designed to facilitate API access to Library Systems
Milan Novota
+2  A: 

There's also mod_atom - an Apache module that stores entries in the filesystem.

Alex Morega
+1  A: 

Last time I checked (2007 or so) Atompub was fairly complex to implement. While you can whip together something that emits valid Atom feeds during the lunch break, implementing AtomPub was a fairly big undertaking.

That might have changed due to better libraries and tools but still it might be too complex to be implemented by smaller sides just because it's cool.

And the lack of killer AtomPub client applications puts little or no pressure on server operators to offer an AtomPub interface.

mdorseif
+3  A: 

The company that I work for, is developing a lot of RESTful services. However none of them expose public APIs.(In the sense that all services are internally consumed by our own clients). The reason why we went for REST architectural style was that we wanted our services to be easily consumable and more importantly scale well.

From my own practical experience I have come to the conclusion that HTTP + ATOM syndication format is a good idea, provided you want to keep things flexible(In terms of different content model, attaching and extending meta data associated with payloads, uniform parsing etc). ATOM ensures that everybody interprets the payload in an uniform manner without any scope for ambiguity.

However if one does not have any such complex requirements or does not forsee such requirements then the ATOM format could be a bit of an overhead. (For instance elements like Author,Title etc make sense more in the blogging/RSS world and may not make sense in your particular problem domain).

Also if the goal is to just serialize data structures at one end and reconstruct it at the other end, then most web frameworks(like WCF) have custom formats which are more appealing.

So in my opinion ATOM Pub is good if you need flexiblity in terms of data representation and if the playing field is huge with different kind of client.

However if you have a good knowledge of potential clients and server/client usage patterns then custom formats might be a good idea.

If the client is browser based then formats like JSON are very appealing.

Hope this answers your question.

Prashanth