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!

Write your comment



(it will not be displayed)





About

My name is Brian Rinaldi and I am the Web Community Manager for Flash Platform at Adobe. I am a regular blogger, speaker and author. I also founded RIA Unleashed conference in Boston. The views expressed on this site are my own & not those of my employer.