It’s (almost) always a pleasure to work with coders: the average free/open source coder’s knowledge of open source licence is streets ahead of the average lawyer’s, and licensing conversations with them tend to be very high bandwidth, and get a lot achieved in a short time.
Sometimes, though, they won’t accept the answer “it depends”. Lawyers like giving this answer, and clients hate hearing it, entirely understandably. But the fact of the matter is that it really does, sometime, just depend. As a class of people, coders tend to be less satisfied with answer than other clients.
I think it’s because a legal document is superficially like a program. This isn’t a new observation, by any means, but both programs and contracts can contain variables, constants, a definitions section (which can effectively invoke other documents/code by static or dynamic linking, or macros), termination processes. And, of course, bugs.
However, a computer system is deterministic. In the absence of the occasional cosmic ray, the same initial conditions will produce the same output. Legal documents are only ever “run”, if there is a dispute. Their operating system is the court system, and their CPU is the judge’s brain. There is no guarantee that, given the same set of facts base, two judges will come up with the same answer.
Lawyers giving legal advice are, essentially, making a prediction about what decision a judge will come to at some unspecified point in the future. Judges are not CPUs.
Another issue is that, even if the law itself doesn’t change (and, of course, new legislation is being passed all the time), the attitude of judges changes significantly. In the Unfair Contract Terms Act 1977 was passed. Without going into details , this piece of legislation allows judges to interfere with the explicitly agreed terms of contracts agreed between parties; even, in certain circumstances, where those contracts are between businesses.
The willingness of judges to use the legislation to interfere has increased and decreased over the years. Currently, there seems to be a bit of a resurgence on the interventionist side: even though the underlying legislation has remained the same, judges seem more inclined to say that a particular term is unreasonable, and therefore unenforceable.
The lawyer can explain this to the client, and, where the issue in question is potentially covered by this piece of legislation, there is, unfortunately, only one answer: it depends.
Can lawyers draft documents so that their interpretation is more certain? We are always trying to do that. But there’s one trick that maybe lawyers could adopt which coders can’t. More next time.