Don't forget the additional half-step at each step of your design:
- Examine each required feature
- Is there a CPAN module that already does this?
...
- Examine each algorithm or data structure in the program design
- Is there a CPAN module that already does this?
I know, it's just the obvious "don't reinvent the wheel" line. Still, I get carried away with my own (imagined) cleverness sometimes, and had to make this an official
part of my routine. If I don't look for pre-existing modules, I don't get to have any more coffee that day. A little self-imposed discipline there :-)
"All you need is ignorance and confidence; then success is sure."-- Mark Twain