As our applications scale and grow in size, there will be a time when we will need to better organize our code to make it sustainable and more reusable. Modules are the response for this need, so let's take a look at how they work and how we can implement them in our application. Modules can be either internal or external. In this book, we will mostly focus on external modules, but it is a good idea to overview the two types now.