If you're building a distribution based on ExtUtils::MakeMaker, and you want to learn the nuts and bolts (which you should) before proceeding to use the convenience layers such as Module::Install and Dist::Zilla, there are three PODs that you should familiarize yourself with: