in reply to Package declaration & use strict;

At some point, you have to come to terms with the realization that there is simply no way to enforce any policy upon Perl code. There is a way around every single safeguard you might try to put up. (Yes, even inside-out objects.)

The solution I've found that works best is code reviews. If you see something that violates the coding standards your organization has in place, then you need to flag it in the code review.

Aren't doing code reviews? Why not do the next best thing and pair-program. If Joe writes the test, Bill writes the code. If Bill writes the test, Joe writes the code. End result is both tests and reviews. This works really well in distributed environments, too. :-)


My criteria for good software:
  1. Does it work?
  2. Can someone else come in, make a change, and be reasonably certain no bugs were introduced?