How this book works
Before we start with the first clone chapter, let's review how each of the subsequent chapters are structured. Each chapter after this book has the same structure:
We start off with a description of the kind of application we will be cloning in the chapter. For example, in the second chapter we will clone TinyURL, so we will start off by discussing URL shorteners in general. This will include the history of URL shorteners and how they came about.
After that we follow with a description of the specific application that we will be cloning, for example TinyURL. This might include discussion of its market share and why it is the most popular application of its kind.
Next we list the specific major features of the application we want to clone and briefly explain what the feature is all about.
After the list of features we jump into a discussion on how we design the clone of each feature.
Before jumping into the actual code, we run through various technologies and third party providers we will be using for the clone.
The actual code and description of the implementation will cover both the data model as well as the application flow. This will be the bulk of the chapter.
After the description of the implementation we describe how the clone can be deployed.
Finally we wrap up with a summary of what we have done for the chapter.