The end result

If you discipline yourself and spend a little extra time putting common procedures in external modules, you will build up a library of reusable components. When you need to use one of those functions, it's already packaged in a convenient form, and the time invested in building the library will be rewarded later in productivity.

The example for this section include a couple of JavaScript modules and their header files so that you can get a better idea of abstraction and what can be gained with this approach. Feel free to use these modules in your projects as you see fit. And, if you create any really good modules of your own, I would love to see them.