Computer programmers work with flowcharts to map out how various 'if-then' scenarios might unfold. After all, a program is nothing more than a complex set of conditional instructions (e.g. algorithms).
Law is kind of the same thing. Laws can proscribe certain kinds of behavior, or limit it based upon conditions. But lawyers don't use flowcharts much, so that's one big difference between them and programmers. But, even if attorneys did, they'd create much different flowcharts. And that's were you begin to see the real separation between attorneys and programmers.
Let's use a real life example. In June of 2005 the IRS passed some regulations, including one called Circular 230. If you've ever gotten a routine email from a lawyer with boilerplate language that seems irrelevant and unnecessary then odds are you've been exposed to the Circular 230 problem.
Here's the problem. IRS Circular 230 says, basically, that if an attorney wants to avoid any possible liability for giving people tax advice (that they then use to create a shady tax shelter) the attorney has to put in some boilerplate language. Attorneys obviously want to avoid have a client say 'hey, you told me that it was okay in one of your emails.' So when is it advisable to put boilerplate into an email?
Let's map out the problem?constructing a 'written' flowchart, if you will.
Here are the conditionals: (1) the attorney's communication has to be 'written'; (2) and it has to contain tax advice; and (3) that advice has to be used, or possibly used, by the recipient to (a) avoid IRS penalties or (b) to promote some kind of tax-minimizing or tax-avoiding scheme.
Here's how a computer programmer would create an algorithm to determine when to use boilerplate:
1. Does the email contain any tax advice? 2. Is it possible the tax advice will be used by the recipient to avoid IRS penalties or to promote a tax avoiding scheme?
OUTCOME: if answer to both (1) and (2) is YES, then insert boilerplate
And here's how a typical attorney would map it out:
1. Am I sending an email to someone else? OUTCOME: if answer to (1) is YES, then insert boilerplate.
So if you get an email from an attorney that has no discussion of tax issues, but which nevertheless contains the boilerplate, you'll now be able understand the logic. Now, close your eyes, bow your head, and give thanks that attorneys don't design software.