Hacker News new | ask | show | jobs
by hilyen 1375 days ago
Not directly related, but I dream of a future where laws are published on GIT. New laws, or updates get pull requested, approval is voted on, then merged to master.
7 comments

My dream is that the world would adapt a system of law so simple that any one person would be a able to understand the totality of it, removing the need for lawyers.
Masks.

That one issue alone is a perfect example of why law is complex and experts in law are needed. Morals are subjective. Countries are large.

This was on front page a few months ago https://news.ycombinator.com/item?id=18528365

Edit: 2018, so not a few months ago

There was a bill that got published on Github a few months back: https://github.com/responsible-financial-innovation-act22/RF...

Not sure if any suggested changes got incorporated or even addressed, but it's a really interesting concept

I helped make an example of this in GitHub for the Declaration of Independence: https://github.com/usgov/forget-the-king/pull/1
Or if laws were executable descriptions of how to make certain changes to world state.

There could be some sort of VM (state machine?) which executes these laws (programs). A queue accepts change requests from the edges, e.g. citizen1 wants to sell her car to citizen2 would generate a change request. The queue processor validates the change request, finds the appropriate reducer (= law) for it, applies the reducer to current world state + change request and derive the new world state.

The programs (laws) themselves could also be objects of the world state. Changing the law is then another change request (self-modifying code).

One big issue with this is that the reducers should probably also work at the edges. Paying with a credit card in a shop should work even if the Internet is down. Diverging state histories should be the norm not an exception. We should figure out how to ensure we can always resolve the merge conflicts.

Bitcoin.
This is, to some extent, the same original line of thinking that spawned out things like Ethereum. A lot of people hate on crypto, but at its core I think it's a very hopeful and interesting idea.
I don't see much value in this beyond diffing? The hard part in making laws is reaching concensus, not the actual edits.
Understanding amendments would be a very good use case. Often changes to the law are not new laws, but changes in other laws. Any time I've tried to actually parse the law, I've found getting a good picture of the current state of the law, and a snapshot of the law in the past is tricky.

To take this example I found off the NYS assembly website legalizing adultery (it was the first one I found, I swear)

https://nyassembly.gov/leg/?default_fld=&leg_video=&bn=A0010...

It's phrased as "Section 255.17 of the penal law is REPEALED", but if you try to find "the penal law", but if you look up a a copy of the penal code do you see 255.17 in it? If so, how can you find out what was actually repealed. If not, do you need to hunt through every possible amendment to figure out the state of the law is at the time of reading?

That is exactly how it works, they just don't use git.

"New laws" have to quite literally be diffs of the existing law.