Appendix D. Designing a RESTful web API
As described in appendix C, REST introduces a new paradigm for distributed systems. It may still feel unfamiliar, and you probably have many questions about how you can use it for your own projects. You may even have the feeling of coming late to the party, having to catch up with yet another huge set of concepts and techniques that others are already mastering. We think it’s time to share a little secret with you, which is also good news: you aren’t late; in fact, you’re among the first ones.
This fact is one of the most exciting aspects of the current dynamic around REST: we’re witnessing the discovery and refinement of what makes the web so powerful and how it can be used for new things—in particular, in the field of enterprise computing (integration, cloud computing, Mobile Web, Semantic Web, and more). We’re at the beginning of mass adoption of REST in these domains, and a lot of fascinating discussions and innovations are happening in the REST space, similar to the early years of object-oriented programming. Researchers and practitioners around the world are proposing and discussing REST design and development practices, aware that some of them will be keys to the future of the web. Even better, many of these discussions and developments are public, and you can take part in them or benefit from them in your own projects.