I'm replying a bit late, but I just wanted to point out something that you seem to have missed. Using "libraries" and "generated code" are not mutually exclusive techniques. It is perfectly feasible to use centralized code generation routines (i.e. generate code from libraries), if you want to keep going down that road. I would avoid it, but it's a distinct possibility.

Another possibility that you seem to have overlooked is using code libraries, but not One Big Library that is used in every project. You indicate that some projects need customizations. This is still perfectly doable, even with code that is centralized and clean. You can make subclasses of certain libraries, for instance. Or you can make additional libraries to encapsulate the customized behavior. Once again, you seem to have set up two choices that are not actually opposing. You can have your cake and eat it too! :-)

I hope my late reply still has some usefulness to you...

Update: bibliophile's earlier post mentions the idea I was getting at:

I'm actually going with a few libraries. The "common" common stuff that everything needs, and separate libs that distinct groups need.

In reply to Re^2: (OT) Generated Code vs. Libraries by revdiablo
in thread (OT) Generated Code vs. Libraries by Mutant

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.