Slashdot Mirror


Legal Code In a Version Control System?

coldmist writes "Sen. Thomas Carper (D-Del.) is on the Senate Finance Committee, which just finished work on the health care bill. The committee recently rejected an amendment which would have required them to post the legislation for public viewing for 72 hours before it went to final vote. Several senators felt that the actual legal code would be too cryptic and complicated to be useful. Carper himself said, 'I don't expect to actually read the legislative language because reading the legislative language is among the more confusing things I've ever read in my life.' So, why don't they put it in SVN (or some similar version control system) where people can tkdiff the changes (i.e. new legislation is in a branch) or output a patchset? If a bill is passed, it's merged into the trunk. It just seems so logical to me, yet I can't find any mention of doing this on the web. What do you think?"

15 of 334 comments (clear)

  1. If the legal code is too confusing by selven · · Score: 5, Insightful

    CHANGE THE LAW. Keeping the bible in Latin worked only for the priests and keeping the law in legal speak is working only for the lawyers.

    1. Re:If the legal code is too confusing by jimicus · · Score: 4, Insightful

      So instead what winds up happening is the men and women voting for the law don't understand the law themselves.

      It gets voted in and suddenly there's a bunch of consequences which they never envisioned because the law gets implemented more-or-less as written and if that's radically different to what was intended - tough.

      This has already happened a few times in the UK with the Regulation of Investigatory Powers Act - local councils were given a bunch of snooping powers (which, we assume, were originally intended to help them weed out those who cheat council-administered benefits) are using them to track down the person who insists on putting paper in their glass recycling box.

    2. Re:If the legal code is too confusing by selven · · Score: 4, Insightful

      That's not the point. The bible was also read in Latin, after which the priest would helpfully interpret the Latin to the peasants in whatever way he wanted.

    3. Re:If the legal code is too confusing by agurk · · Score: 4, Insightful

      If programming languages was written in plain words we wouldn't need programmers, but the secret order of computer programmers refuse to do it that way - simple programming is not possible they claim. What they really are afraid of is the fact that normal humans (non programmers) could just diff the text to look for bugs and even make their own software.

      PS! A lot of the people here at slashdot.org are members of this secret order so they will probably mod me down and try to shut me up - BUT justice will prevail.

    4. Re:If the legal code is too confusing by alexhs · · Score: 4, Informative

      I think you're missing the point.

      Here is an example of bill.

      Go to section 3.

      You will see that the bill is actually a diff on previous laws.

      To read the law modified by this bill, you need to get the text of the laws referenced by this bill.

      Hence the idea of using a version control system, to be able to read side-by-side the law before and after the bill.

      --
      I have discovered a truly marvelous proof of killer sig, which this margin is too narrow to contain.
    5. Re:If the legal code is too confusing by commodore64_love · · Score: 4, Insightful

      Power to the People!

      What? I'm serious. Better to put the power in the hands of the people, than a priest class, lawyer class, or some other oligarchy.

      --
      "I disapprove of what you say, but I will defend to the death your right to say it." - historian Evelyn Beatrice Hall
  2. Seems consistent with every issue by cjfs · · Score: 4, Interesting

    If you can't convince them, confuse them. -- Harry Truman

  3. Needs disipline by MichaelSmith · · Score: 4, Interesting

    I have built a version controlled document management system around mercurial for my wife's architectural practice. I have found it very difficult to convince users to follow the conventions we use for software. They are too used to putting version and project information in file names. It means nothing for them to rename a file from a.dxf to a_new.dxf and commit it.

    The formal structure of software tends to keep this behaviour in check. The environment we are talking about here may be formal and controlled enough for this to work, but it is going to take training and enforcement to get it to work.

  4. Asking way too much of the lawyers. by reiisi · · Score: 4, Insightful

    As PJ (over at Groklaw) likes to say, law is squishy.

    Source code and law look a lot alike, but we have to remember that law is squishy.

    We also should remember that lawyers are often seeking for an advantage for their clients (or constituents). This seeking for advantage runs counter to the work patterns of many of us who deal with free/open source stuff, but it is quite common in the legal world.

    It would be a great tool for legislators who want the law to make sense, but such are too rare. The others would quickly find ways to pervert the tools.

    --
    Computer memory is just fancy paper, CPUs just fancy pens with fancy erasers; the 'net is just a fancy backyard fence.
  5. Re:Lack of training/intelligence? by palegray.net · · Score: 4, Insightful
    I think you missed the bigger issue:

    ... don't expect to actually read the legislative language ...

    If United States Senators can't be bothered to read and comprehend the legislation they're voting on, then:

    (1) why are they elected to posts that, as the most basic of job requirements, requires the ability to do so, and

    (2) why haven't they been removed from office for complete and utter failure to serve the American people?

    That's right, folks... your elected officials are attempting to pass legislation that will have massive consequences for our generation and several more to come, without having actually read the material they're about to vote on. Here's the best part: this is nonthing new. It's been the status quo for a huge chunk of Washington's electoral finest for longer than I've been alive. Outstanding work!

  6. More importantly by 4D6963 · · Score: 4, Funny

    Legal code these days is the equivalent of assembly language, it's complicated but it describes on a low-level what has to be done. While it's fine and dandy, the problem these days is that too much code is produced. Hence I propose that we make a GCC-Legalese or LLVM-Legalese fork so that we can -Os legislation. Better yet, we could simply write law in a higher level language, intent, and the compiler's intent preprocessor would turn that into faithful lower level code.

    I also propose that we start forking Valgrind as to automatically find legal loopholes, conflicts and grey areas before a law is passed. Finally I think we should rewrite common law in Objective-Law++ so we can benefit from the many advantages offered by objection-oriented law over procedural law. Any thoughts on Convict Collection?

    --
    You just got troll'd!
  7. The law is a kind of code, but ... by Jacques+Chester · · Score: 4, Interesting

    1. There's an enormous amount of existing code. Look at how much Slashdot talks about COBOL, which is around 50 years old. In common law countries (eg Britain, the USA and Australia), the law has code nearly a millennium old, written in a variety of languages.

    2. Corner cases. There are lots of these. Much like software, they are usually discovered in "maintenance mode"; ie after the law is passed. As time goes on, legal draftsmen begin to include lots of standard boilerplate, which will only rarely actually be applied.

    3. Legal draftsmen. Never heard of these? Who do you think actually sits down and writes the law? It's not the politicians. They give drafting instructions, which are translated into legalese.

    Expecting politicians to read and comprehend legalese is a bit like expecting businessmen to read and comprehend assembler. It will never, ever happen. The idea of "plain english" law is a lot like "automatic programming". A total pipedream that will never happen.

    The law is a semi-structured language. You can think of it as a distributed rule system created by a mix of engineered modules (Acts of Congress / Parliament) and reverse engineering.

    The reverse engineered parts are case law. Lawyers feed in black-box test cases, then carefully record what the CPU (the judges) output. Over time they map out what the law "is". The reason legalese repeats the same phrases over and over again is because they have been proved, in court, to have specific and reliable semantics. "It ain't broke", so to speak.

    I personally think there's enormous scope for borrowing software engineering practice and tools for legal drafting, but it's no panacea. I even used to think that we could treat legalese as a kind of assembler and develop a higher level language that "compiles down" to it. But it doesn't solve the problem, just moves it around.

    Laws are flawed and problematic because they deal with humans. Humans who are complex and motivated and intelligent. No purely rule-based system will ever completely tame human ingenuity, just as no code will ever fully describe all subject domains.

    Disclaimer: I used to be a law student, until I came to my senses.

    --

    Classical Liberalism: All your base are belong to you.

  8. Re:Life is complex by jonbryce · · Score: 4, Insightful

    You don't need to understand the linux kernel source to do some shopping in Konqueror. The kernel developers and GCC understand it perfectly, and that's what matters.

    All of use are supposed to understand what the law says. Ignorance is not an excuse. But if Supreme Court judges can't even agree on what the law means, what hope is there for the rest of us?

  9. Re:The legislative language isn't that important.. by massysett · · Score: 5, Insightful

    "Plain language version"? "Corrected"? "Translated"? "Legislation that is passed on"? What on earth are you talking about? This is horrifyingly wrong. There is no "plain language version". Legislation is not "translated". Committees report a bill with specific language; though it may be amended later (generally on the floor, or in conference) there is no "correction".

    And "The legislative language isn't that important"? That is so amazingly, completely, and gravely wrong that I have no idea where to start debunking it.

    Yes, I AM a lawyer and I work on issues involving legislation every single day, so I fully expect I will get modded down. The perils of crowdsourcing.

  10. Re:Too early yet by CodeBuster · · Score: 5, Insightful

    How is that different than the situation we have today?

    The taxpayer would get stuck with all of the unpaid hospital bills (right now the hospitals eat them or try to make up the cost on those who have credit and can pay). Right now you only pay if you visit the hospital, but if the taxpayer has to pick up the tab then everyone pays regularly, even healthy people who rarely need hospital services. As bad as the present situation is this only makes it worse. The grandparents are correct: this bill is dishonest and the Democrats are pushing it dishonestly...period. Why do the Democrats shy away from having a head on debate about socialism and socialized medicine? Shouldn't they be proud of their socialism? Why do they try to sneak it through the back door? If their true position is too weak to stand up to real debate then they deserve to fail.