14 ms·
How I changed the law with a GitHub pull request
- rubbingalcohol 8y ago> My edit wasn’t substantive. This sort of “technical correction,” as lawyers would call it, didn’t need to be passed by the Council and signed by the Mayor. Okay, so they didn't "change the law." It's a cool story but not a fan of clickbait titles either.
- DoreenMichele 8y agoIt would probably go over better if the phrase about changing the law were in quotations marks to indicate it is kind of being tongue in cheek. It's not entirely inaccurate, more like a smidgen of double entendre. I mean, I'm sympathetic to your complaint. It implies something more substantive than it really means. But I also appreciate word play. (shrug)
- conquistadog 8y agoA fix is indeed a change, even if minor. To be fair, my own distaste for clickbait is palpable here. But I think I can suspend it in light of the importance of this article's bigger point. I've always thought this sounded like a good idea, and to see it actually happening is pretty amazing. Here's hoping it catches on.
- dgreisen 8y agoAs with most things in the law, it is complicated. The District legislative process shares many similarities to the federal government's. They pass laws, which are the official representation of the will of the Council. These laws are kinda like hand-crafted change sets. Change sets that can change other change sets. These change sets are almost impossible to use as they are, so the Council creates an official compilation of all the change sets as applied and organized by subject. This is the Code of the District of Columbia. Usually, when people think about "the law" they are thinking about the code, because that is how people interact with it. The laws as passed by the Council cannot (and should not) be changed via pull request. Here, the useful representation of those laws, the representation used by everybody who actually interacts with the law, has been updated via PR to more perfectly reflect the underlying laws.
- baroffoos 8y agoThey didn't change it if you think of the intent of the law and the words it was written with to be different things.
- DoreenMichele 8y agoFrom the Why It Matters section: The Council is able to publish the law better and faster than ever before. With the District’s previous codification contractor, updates to the DC Code were published three times a year, and there could be a five-to-seven month delay in seeing the latest laws. But the Open Law Library has shortened the publication process to about a week after a law is enacted. It also means we’re all getting to see more of the actual law that governs us—not the law as it was months ago.
- flas9sd 8y agoI saw that as the core message justifying the headline. He as a civic hacker has interest in modern methods arriving in administrative circles and bringing a spotlight to it - inspiring others to do as well. I was surprised I knew the author - he maintains mail-in-a-box, a popular mail selfhosting package.
- fzeroracer 8y agoThis is pretty common in government agencies from what I've seen. Many contractors take forever to do even the most basic of changes because of how contracting works in order to milk as much money as possible. But agencies that move towards open source initiatives, non-profits etc end up being a lot more responsive and overall end up a lot better off. Unfortunately there's a lot of entrenched commercial entities (ex Oracle) that want things to remain the same so it's going to be hard to rout them. Initiatives like this give me a bit of hope though.
- CodeWriter23 8y agoI’m personally not OK with a system that enables a single individual (the "lawyer" in the article) to declare modification to a law as insubstantial, then modify the law. Some review process needs to be there, and frankly, even a typo correction IMO needs to be run by the Mayor because she/he signed one thing into law and this process changes what they signed. We cannot ever assume we know the intent of the Chief Executive, even when “obviously” in error. OTOH, a diff system for law is awesome. California uses a similar system but it is cumbersome to do things like “show me how this section evolved over time”.
- jcranmer 8y agoJudging from screenshots, the person who accepted the change was on the DC City Council.
- CodeWriter23 8y agoStill, not the Mayor. And, did it unilaterally, inviting abuse.
- zanny 8y agoIf you want to abuse the law doing so in a public ledger that anyone accessing has a copy of (such that just reverting commits on github doesn't remove from them everyones histories) seems like a really unwise way of going about it. Whats important is having eyes on what changes are made, and if you want to track changes and revisions to something... github (and gitlab, phabricator, etc) is pretty close to the optimization of that problem humanity has developed up to this point.
- craftyguy 8y agoNo law was changed. The title is straight up clickbait.
- CodeWriter23 8y agoActually, it was changed. A reference from "Subchapter I" was changed to "Subchapter II", under the authority of the single lawyer that reviewed it.
- alistairSH 8y agoIn stark contrast to Georgia, which has actively made access to its laws harder through copyright enforcement. https://www.eff.org/deeplinks/2018/10/appeals-court-tells-georgia-state-code-cant-be-copyrighted https://www.eff.org/deeplinks/2018/10/appeals-court-tells-ge...
- adiian 8y agoOn one side it makes sense to have a public repository like git used for this, but having a private company being responsible for this it's bit strange. The fact that a pull request was accepted was now that strange because it could have been done by the council representative. For this kind of use case it would make more sense to me some sort of block chain, not controlled by a single company. "This isn’t a copy of the DC law. It is an authoritative source. It is where the DC Council stores the digital versions of enacted laws, and this source feeds directly into the Council’s DC Code website at https://code.dccouncil.us/dc/council/code/." https://code.dccouncil.us/dc/council/code/."
- Klathmon 8y agoTo be fair, I don't think anyone believes that this is the one and only source of the law in all forms. As in if GitHub suddenly started changing it on their own, we wouldn't all throw up our arms and resign to our new GitHub overlords. It would be treated no differently than someone else trying to tamper with the written law in any form.
- Rotten194 8y agoWhy would you use a blockchain? There's already a central authority - the DC city government. They should just host their own git instance.
- misterhtmlcss 8y agoI'm willing to bet GH is being mirrored internally as you suggest otherwise you'd be exposing the only current digital copy to hackers. That just seems a reasonable expectation to me. So the activity is likely happening on the larger and more exposed GH service, while internally there is a daily copy bring backed up that isn't (as) exposed to hackers. Something life that would be a great way to displace risk.
- zanny 8y agoBut thats not how git works. Everyone who uses the repo has a copy of it. Even if you hack GH the worst possible outcome is a hard reset of the repo, which would break pulls anyway. Unless a literal city council thinks its a good idea to not have local copies of their own law source code they are modifying regularly or something.
- Klathmon 8y agoThis is such a great way of making access to the law more open and welcoming, which is a great thing to me! I haven't been able to check yet, but does anyone know if you are allowed to use this process to propose new laws or clarifications of laws more substantial than simple typo fixes? Sure, you aren't going to have non-lawyers crafting legislation, but could this be used to bring up clarifications that could impact rulings or increase/decrease scope of current laws or something similar? (I'm not a lawyer, so I don't know what are big and what are small changes here) Imagine if proposed laws could be commented on, have changes offered, debated, and ultimately decided on in an open fashion like this! With a public "audit trail" of sorts showing the history of changes the law went through. I know this is optimistic, but I wholeheartedly believe that more openness and more people involved will ultimately lead to better laws.
- iamdave 8y agoI haven't been able to check yet, but does anyone know if you are allowed to use this process to propose new laws or clarifications of laws more substantial than simple typo fixes? "You" as in you, a citizen off the street proposing a new law? Unlikely. You could use it to form the basis for a ballot initiative, I would think?
- gammateam 8y agoI've been wanting this for a long time, I wanted to take it further though: I want draft laws, I want to see all representatives as contributors and be able to see their contributions and changes to draft laws. the House should have a master branch that submits pull requests to another repository, the other chamber having one too The Governor/President gets to approve PR's from that jurisdiction It would become SUPER easy to track origins and changes of laws, let alone browse them, and comment on them. I'd like to see this done retroactively all the way back to English law
- bytematic 8y agoI would love to see a constitution drafted for a fictional country.
- peanutz454 8y agoOur better still, a fictional Constitution for all humans on Earth.
- all2 8y agoGood luck with that. There are too many belief sets, even for things like basic freedoms, for everyone to fall under a single law effectively. Any effort to do so will lead to tyranny.
- 8y ago
- sytse 8y agoSomeone make a site that has French laws in GitLab https://www.lafabriquedelaloi.fr/articles.html?loi=pjl12-689 https://www.lafabriquedelaloi.fr/articles.html?loi=pjl12-689
- deleted 8y ago[deleted]
- deleted 8y ago[deleted]
- Buetol 8y agoHi, the GitLab for the french laws from La Fabrique is here: https://git.regardscitoyens.org/parlement https://git.regardscitoyens.org/parlement It's a only a small part of the laws published on https://lafabriquedelaloi.fr https://lafabriquedelaloi.fr for now but should be complete soon ! Disclaimer: I work on the project
- prepend 8y agoThis is neat as long as DC sticks to a policy of open source laws and free access. Github has always done this, but I fear that 50 years from now we could be in a situation like access to case law where you have to pay a third party to read.
- baroffoos 8y agoYeah it makes me slightly uncomfortable to put the law in the hands of a private company. Github is allowed to block me for whatever reason they want, does that now mean I get locked out of this? Would much rather see this on a self hosted GitLab but this is a good start for sure.
- supz 8y agoThis is great, I would also love to see laws have applicable test cases created. For a practical example, in NJ they recently changed gun laws, and they forgot to include an exemption for police officers, so they ended up being restricted by the new laws the same way civilians are. (I really bit my tongue on this, not going to get political, here). The law should have had a test case created, which would have the equivalent of ensuring that police officers are not in violation of the law, when they are serving active duty, or going home. NJ’s assembly had to rush in some middle of the night legislation to fix this “bug” in the law, that nobody caught. I would love to see this applied to all laws. As the article states, software and law have a lot in common. Testing should be one of them.
- dgreisen 8y agoHi all, I'm a co-founder of Open Law Library, the non-profit that built the platform DC uses to codify and publish their laws. We were so excited when we saw a member of the public make a PR. I'm happy to answer any questions.
- baroffoos 8y agoThis is really awesome and I hope to see something like this come to my country. One thing I was wondering is how you would deal with more tricky issues/pull requests. Obviously we probably won't see people writing whole new laws in the pull requests editor but what if it was something like a sentience was written in an unclear way and someone opened an issue asking for it to be clarified or maybe they made a PR rewriting it to make more sense while still keeping the intent the same?
- dgreisen 8y agoWe are in talks with several international governments. We would be delighted to help your country! The system does not in any way change the legislative process, so you cannot use a pull request to make any substantive change to the law. That would include rewording, changing punctuation, fixing numbering, etc. If such a pull request were made, it would be immediately closed. As throughout history, the only way to make a substantive change to the law is to petition your representative to sponsor a bill and then convince the legislature to pass it.
- Iv 8y agoA few years ago, while the French parliament was discussing the modifications in law to allow gay marriage, many people were scrutinizing amendments and proposed amendment, and a developer presented all the MPs work in a git repository. It really felt like the future of democracy: https://github.com/steeve/france.code-civil/commit/dfd5918f90025e15eecd72daff912b547433daed?diff=split https://github.com/steeve/france.code-civil/commit/dfd5918f9...
- gcb0 8y agoThe only relevant link on the article https://github.com/DCCouncil/dc-law-xml https://github.com/DCCouncil/dc-law-xml
- pablo1 8y agoI always reach that website when I randomly hit my keyboard in the browser's address bar to see if my internet connection is working. Seems to be a great domain. (Colemak user here)
- rumcajz 8y agoWhile this is a great development, hosting AUTHORITATIVE text of the law at a private service (GitHub, owned by Microsoft) doesn't sound like a good idea. Consider what would happen if Microsoft decided to delete the repo. There will still be copies of the law at different places, but there would no authoritative version. Imagine a lawsuit where each party is arguing that their copy of the law is the "correct" one.
- gregknicholson 8y agoSurely there was an open procurement process, where they considered the available options for web-based version control, and came to the conclusion that GitHub was justifiably better than its competitors. They wouldn't just have picked someone's favourite service without thinking, because fair competition is a fundamental ingredient of a well-functioning capitalist market economy. Right?
- gibsons77 8y agoThere's a way to store this in an immutable and trustless manor, but the B word gets a lot of push back around here.
- acdha 8y agoThat's because Git already provides the same solutions for problems which exist in reality (immutability, trustless, distributed). All that's left out is the opportunity for some grifter to [if we're lucky] match it at substantially greater cost.
- beatgammit 8y agoIs this type of thing something people want? I have been thinking of running for local office (one seat in particular is always uncontested), and my platform would basically be: I'll set up a method for constituents to voice their opinion in a transparent way. I'm thinking something like change.org, but with some way to verify residency. I think citizens don't get as involved as they want to because the barrier to entry is too high and the results are too opaque (don't know how many called, emailed, etc). I would love to start a movement for more open government, but I'm just not sure the demand is there.
- TheGrumpyBrit 8y agoMy side gig, like most sites these days, publishes a privacy policy and terms of service. From the start, I published those documents in a public Git repository - it provides a clear source of what version was in force at the time of any given argument. When you might later be discussing the content of those documents in court, that can be essential. Of course, it could also work against you, but either way, it's one less thing that's open for discussion.
- choot 8y agoSo by hacking GitHub, now laws can be changed? I want sentences to be GitHub as well, so that an inmate can hack github to change his sentence.
- pbw 8y agoI wrote this a while ago: http://www.kmeme.com/2010/03/healthcare-diff.html http://www.kmeme.com/2010/03/healthcare-diff.html I wonder how well code-style line-oriented diffs work for laws. If you word wrap then your single-line changes can cascade and effect many lines. If you don’t word wrap seems like you need a better way to see diffs within long lines. Seems totally solvable, but that what github does for code might not be right. But this is so awesome, pull requesting a typo. Go DC really forward thinking.
- kortex 8y agoWikipedia seems to handle this just fine, as does most markdowns. Manual word wrapping seems like more of an issue for code than plaintext. I don't manually wrap readme's anymore, that's what window-width-aware editors are for.
- amai 8y agoIf the law is on github, does Microsoft then own the law?
- jasonh3 8y agoIt's great that DC is making their latest laws available to everyone, however it's a little scary that the commits aren't signed, meaning that anyone who gained access to the github repo could forge them (and do more than fixing typos). Hopefully DC (and others) will look at doing GPG signatures[0,1] so that they don't have to trust github's authentication as much. Github has a nice GUI that reflects signatures with the "Verified" tag, which you can see at[2]. 0: https://git-scm.com/book/en/v2/Git-Tools-Signing-Your-Work https://git-scm.com/book/en/v2/Git-Tools-Signing-Your-Work 1: https://help.github.com/articles/signing-commits/ https://help.github.com/articles/signing-commits/ 2: https://github.com/QubesOS/qubes-doc/commits/master https://github.com/QubesOS/qubes-doc/commits/master
- acdha 8y ago> meaning that anyone who gained access to the github repo could forge them (and do more than fixing typos). … which would immediately be noticed by everyone using the repo. How many scenarios are there where a compromise wouldn’t include GPG keys or the attacker simply uploading their own key?
- jasonh3 8y agoI hope you would be correct, that lots of people would notice a compromise, though I'm not convinced that this would be the case since the attacker could pretend to be the single committer. > How many scenarios are there where a compromise wouldn’t include GPG keys or the attacker simply uploading their own key? If the user's github credentials were compromised (lots of ways for that to happen which don't involve their system/keys being compromised, like using the same password across sites), then using GPG signatures would still allow cloners to check/detect problems since they wouldn't have the maliciously-updated github GPG key (or they might be one of the few folks still using the Web of Trust). Furthermore, it's possible to have a local system compromise that doesn't give access to GPG keys, as keys could either be password protected or kept on a separate system that's primarily used for signatures (not extreme for a system that distributes law). Also, signatures not only protect the latest commit, they also sign the previous commit hash(es), protecting previous commits and preventing a history rewrite. Without them, a history rewrite that left recent commits unchanged but modified some text could have the chance to go unnoticed. EDIT: small clarity tweak