Services for the Open Web - Karsten Januszewski at FOWA
Posted on Feb 26, 2010
After a brief break, Ryan Carson welcomed Karsten Januszewski (@irhetoric)
of Microsoft to the stage to discuss services. Services have become
ubiquitous on the web and most sites are now taking advantage of some
service of some sort. Karsten encourages you to open up your site via
services because it allows innovation to happen that you didn't think
was possible. This innovation can drive traffic and increase loyalty.
You should give thought to your services strategy and not just "tack it
on." Not surprisingly, Karsten uses Twitter as an example of a company
that thought threw their service architecture from the get-go.
Some
of the options available for creating services for your site include
JSON, POX, ATOM, SOAP and microformats. Ideally, you'd like to provide
support for as many (or all) of the formats that you can.
JSON
(or JavaScript Object Notation) has helped make services more prolific.
Working with JSON is "brain dead easy" to consume in JavaScript because
it is native. Its cross-domain possibilities are a big advantage because
you can do cross-domain calls. Its also quite compact. The only
negative he could come up with is that there are cases where it isn't
expressive enough.
POX via REST (as in, plain old XML) is mature
and very customizable format for creating complex structures. It easily
adds you to encode data and add schemas. However, cross-domain from the
client via JavaScript can be very tricky. You can call these
from runtimes like Flash and Silverlight directly and cross-domain.
ATOM
is the predominant syndication format over RSS over the past couple
years. ATOM has a read and write aspect - you can do HTTP Posts via ATOM
to write (RSS is read only). It is a well-known schema with a lot of
support across languages and is especially good for list oriented data.
SOAP
(Simple Object Access Protocol) was originally designed for
interoperability between Java and .net. It has a sophisticated RPC
(remote procedure call) syntax with a well thought out and flexible
security model. However it is not particularly JavaScript friendly or
some other languages.
Microformats (HTML) allow you to mark up
your existing HTML code with some existing class tags (from
microformats.com) that makes the data available for extraction via your
existing code. It is simple and no additional code is needed to support
the format (beyond your existing pages) but it is limited to existing
microformats specifications).
Karsten ends by saying not to be
afraid to open up your API and dive in because the libraries are mature
and stable. You'll be surprised what good things might happen.
Comments
There are currently no comments for this entry...be the first!