REST

Lingwo.ws: Now without the delusions of grandeur!

I'm in the middle of an intense refactor of the Python implementation of Lingwo.ws.  Its mainly based on experience I had using the Perl port at work (oh yeah, over the summer, I ported it to Perl so we could use it at work).

Since I've began this project, I've learned alot about REST and building APIs.  One of the main things I've discovered is that I'm not the only one working on this.  Not by a long shot.

Here are just a handful of other REST + JSON specification in the works:

Lingwo.ws tutorial, part 1: Creating a service

This is the first part in a four part series on Lingwo.ws.  In this part, we will:

  • Install the reference implementation.
  • Create a simple example service.
  • Use "curl" to experiment using the service.

What is Lingwo.ws?

Lingwo.ws is an open specification for a way to design RESTful web services.  I've described earlier why this is desirable, but to summarize:

  • Shared expectations: RESTful web services can be just about anything, so long as they follow a few design principles.  So, when someone says a service is RESTful, you will still need to read its documentation and learn how specifically that service works.  If a service conforms to Lingwo.ws, however, this means it conforms to a specific design.

Introducing Lingwo.ws

Over the past several months, I've been thinking about how to make a really strong RESTful API for Lingwo.flashcards.  At my straight job, there has also been lots of talk about building a RESTful API (although, unfortunately, no actual work!  I'm bursting at the seams to start it!).  This and the fact that all the other Lingwo Projects will need APIs, has compelled me to take the API design I've come up with and release it as an open specification.

So, to start over... Lingwo.ws is an open specification for a pattern by which one can design RESTful web-services.

But why do we need such a specification?

Well, being RESTful means that you adhere to some rather abstract concepts.  Two APIs can be designed in drastically different ways and still be perfectly RESTful.  We can gain alot by having a standard:

Syndicate content