If you are a web developer and aren't familiar with the term "REST," you should know that you regularly work within this software architecture. REST is a term that can describe the interactions that occur between client and server on the World Wide Web. However, as with many terms, its original definition actually takes on further meaning as different parties have used it. In this paper, I assume REST to be more specifically applied to describe communication between a client and server as part of a specific API.
I am presenting a guide to you here on how to get started developing your own RESTful API. This guide has been split into two parts. In this part, I provide a very brief description of REST as it applies to this guide. I will then describe how to build your very own RESTful server using a CGI script (which should be easily extrapolated into FastCGI or mod_perl or another web framework). In the next article, we'll go over how to access this server from a RESTful client written using libwww-perl. I will end with a couple useful extensions that should be considered, and I will share some other important resources.