in reply to
Starting a Large Project
you might want to break it down into several small discrete milestones , which you can try to complete one at a time, eventually linking those steps at the time of integration testing.
as you debug and test each step, the next milestone in your project will be less susceptible to bugs and errors caused by the steps preceding it and should, on the whole, make it more manageable to manage the entire process
I would also recommend saying a small prayer to the Gods of Perl every morning before you start to code... :-)