Basics

FacebookTwitter
In 1995, Clayton Christenson coined the term Disruptive Innovations in his article titled " Disruptive Technologies: Catching the Wave. " His contention was that some new products or services that appear in the marketplace are so revolutionary that they render existing technologies obsolete. We are seeing a new example of this phenomenon with the emergence of a sector being referred to as "Backend as a Service"—BaaS. BaaS is replacing the traditional server-side stack as a dependable, feature-rich option for powering mobile and web apps. https://blog.apigee.com/detail/baas_the_mobile_backend_is_now_a_service

BaaS: The Mobile Backend is now a Service

http://www.robbagby.com/rest/rest-in-wcf-blog-series-index/

REST in WCF Blog Series Index | Demystifying The Code

Posted by RobBagby on August 5, 2008 · 5 Comments
Arguments and discussions

How to GET a Cup of Coffee

http://www.infoq.com/articles/webber-rest-workflow Posted by Jim Webber, Savas Parastatidis & Ian Robinson on Oct 02, 2008 Sections Enterprise Architecture , Architecture & Design Topics Workflow / BPM ,
Persevere is an open source set of tools for persistence and distributed computing using an intuitive standards-based JSON interfaces of HTTP REST, JSON-RPC, JSONPath, and REST Channels. The core of the Persevere project is the Persevere Server. The Persevere server includes a Persevere JavaScript client, but the standards-based interface is intended to be used with any framework or client. The Persevere Server is an object storage engine and application server (running on Java/Rhino) that provides persistent data storage of dynamic JSON data in an interactive server side JavaScript environment with the following key features:

persevere-framework - Google Code

http://code.google.com/p/persevere-framework/
http://net.tutsplus.com/tutorials/other/a-beginners-introduction-to-http-and-rest/

A Beginner’s Introduction to HTTP and REST

Hypertext Transfer Protocol (HTTP) is the life of the web.

How I Explained REST to My Wife

http://tomayko.com/writings/rest-to-my-wife After receiving a number of reasonable complaints about the gender-oriented nature of this article from people I respect very much, I've decided to take it down for good. While the dialog was never intended as commentary on the role of gender in technology, I'm convinced that it could too easily be taken that way and am not at all comfortable with that possibility. My deepest apologies to anyone that was offended by my work. There is nothing more terrifying to me than the thought of something I created acting as a deterrent to anyone following their ambitions, or from forming them in the first place. <p style="text-align:right;color:#A8A8A8"></p>
This section defines the syntax and semantics of all standard HTTP/1.1 header fields. For entity-header fields, both sender and recipient refer to either the client or the server, depending on who sends and who receives the entity. 14.1 Accept The Accept request-header field can be used to specify certain media types which are acceptable for the response. Accept headers can be used to indicate that the request is specifically limited to a small set of desired types, as in the case of a request for an in-line image. http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html

HTTP/1.1: Header Field Definitions

MIME Media Types

MIME Media Types http://www.iana.org/assignments/media-types/index.html
The set of common methods for HTTP/1.1 is defined below. Although this set can be expanded, additional methods cannot be assumed to share the same semantics for separately extended clients and servers. The Host request-header field (section 14.23 ) MUST accompany all HTTP/1.1 requests. http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html

HTTP/1.1: Method Definitions

http://en.wikipedia.org/wiki/Hypermedia

Hypermedia

Hypermedia is used as a logical extension of the term hypertext in which graphics, audio, video, plain text and hyperlinks intertwine to create a generally non-linear medium of information.
HATEOAS , an abbreviation for Hypermedia as the Engine of Application State , is a constraint of the REST application architecture that distinguishes it from most other network application architectures.

HATEOAS

I was talk­ing to a col­league who has to be­come savvy in a hurry about mod­ern Web ap­pli­ca­tions and he asked “How do I learn about REST?” Good ques­tion. I thought of a cou­ple of sug­ges­tions, then asked Twit­ter and got some more.

ongoing · Learning REST

Remote procedure call

In computer science , a remote procedure call ( RPC ) is an inter-process communication that allows a computer program to cause a subroutine or procedure to execute in another address space (commonly on another computer on a shared network) without the programmer explicitly coding the details for this remote interaction. That is, the programmer writes essentially the same code whether the subroutine is local to the executing program, or remote. When the software in question uses object-oriented principles, RPC is called remote invocation or remote method invocation .

Atom Publishing Format and Protocol (atompub) - Charter

Note: The data for concluded WGs is occasionally incorrect.
Each Status-Code is described below, including a description of which method(s) it can follow and any metainformation required in the response. 10.1 Informational 1xx This class of status code indicates a provisional response, consisting only of the Status-Line and optional headers, and is terminated by an empty line.

HTTP/1.1: Status Code Definitions

Representational state transfer

Constraints

The REST architectural style describes the following six constraints applied to the architecture, while leaving the implementation of the individual components free to design:

Client–server
Stateless
Cacheable
Layered system
Code on demand (optional)
Uniform interface

The only optional constraint of REST architecture is code on demand. If a service violates any other constraint, it cannot strictly be referred to as RESTful.
Complying with these constraints, and thus conforming to the REST architectural style, will enable any kind of distributed hypermedia system to have desirable emergent properties, such as performance, scalability, simplicity, modifiability, visibility, portability and reliability. by vikasjee Dec 16

The Concept:

The client begins sending requests when it is ready to make the transition to a new state. While one or more requests are outstanding, the client is considered to be in transition. The representation of each application state contains links that may be used next time the client chooses to initiate a new state transition.

The name "Representational State Transfer" is intended to evoke an image of how a well-designed Web application behaves: a network of web pages (a virtual state-machine), where the user progresses through the application by selecting links (state transitions), resulting in the next page (representing the next state of the application) being transferred to the user and rendered for their use. by vikasjee Dec 16