So far in this book, we have focused on coding, concentrating particularly on the role of design in building flexible and reusable tools and applications. Development doesn't end with code, however. It is possible to come away from books and courses with a solid understanding of a language, yet still encounter problems when it comes to running and deploying a project.
In this chapter, we will move beyond code to introduce some of the tools and techniques that form the underpinnings of a successful development process. This chapter will cover