in reply to Re^5: Debugging a module that's failing under taint mode
in thread Debugging a module that's failing under taint mode

Well said kcott. The ideal of the DRY principle is that every piece of knowledge should have a single, unambiguous, authoritative representation within a system. Note that DRY is broader than just code, including things like database schemas, configuration files, test plans, build systems and doco. Violations of DRY are sometimes called WET: "write everything twice" or "we enjoy typing". ;-)

Bod, in your current system are there any places where you find yourself having to make multiple changes in response to a single value changing? If so, you might enjoy thinking about how to eliminate these sort of error-prone chores. In large complex legacy environments, with multiple programming languages and tools in use across multiple platforms, Perl is an ideal glue language for building little tools to eliminate DRY violations.

  • Comment on Re^6: Debugging a module that's failing under taint mode

Replies are listed 'Best First'.
Re^7: Debugging a module that's failing under taint mode
by Bod (Parson) on Jul 04, 2021 at 17:49 UTC
    Bod, in your current system are there any places where you find yourself having to make multiple changes in response to a single value changing?

    I have always been reasonably good at making code reusable and avoiding having to make multiple changes.

    One glaring exception to this is a blog which exists separately on two different websites. Recently I needed wanted to add a new image inclusion option and had to separately add it to both instances. This is high on the list of things to refactor and make use of Template. Even more so because the blog on my personal site could do with some functional updating and it would be just silly to create a third instance! Instead I shall write a module that does all the formatting and rendering in a way that can be easily passed to a site specific Template file.

    In marketing I am big beleiver in COPE. We write a blog, shorten it to form a promotional email, shorten that into a Facebook post and shorten that into a tweet.