This section is devoted to the practical aspects of creating an addon from the ground up. Rather than picking one specific addon and showing you how it's written, I've decided to write this guide in a more general sense, and then pull in examples from various addons as I go.
This guide assumes a basic knowledge of how Lua works. For those with no experience with Lua, the online introduction Programming in Lua is an excellent resource for learning the basics of the language.