divegeek / uscode

The United States Code
http://uscode.house.gov/download/download.shtml
806 stars 57 forks source link

Markdown? #1

Open pocketarc opened 13 years ago

pocketarc commented 13 years ago

Your idea seems incredibly interesting, although I'd say that most people dealing with the law have no idea about anything related to computers, let alone version control systems, or git. Another thing that could be done is process all the code into Markdown, or any other other such syntax, to make the whole thing not only more legible, but also possible to parse and style in any required ways.

sc68cal commented 13 years ago

It would certainly be better than the XHTML version that is provided.

I've also been rolling an idea around in my head, to try and backtrack the changes to the US Code, to the bill stored in Thomas that actually changed it. Markdown would make inserting the links easy, that's for sure.

mikejs commented 13 years ago

You might be interested in the XML version of the Code that Cornell Law School maintains. Unlike in the official XHTML, references and cross-references are nicely marked up; in the past, I was part of a group that used it to do some basic link analysis of the Code.

cooljeanius commented 12 years ago

I actually used the email form on their website last semester to write to them about making the code more readable (not necessarily in Markdown or XML per se, but it's along the same lines). Anyway, here's the response they sent me (along with my original message that it was in reply to):

Mr. Gallager:

Thank you for your comments and suggestions. Version 2 of the website, now in development, will have internal links to U.S. Code sections and the Statutes at Large and prior versions of the Code on a drop down menu. We appreciate your suggestions for versioning the Code and turning the Code into a programming language.

Ralph V. Seep Law Revision Counsel U.S. House of Representatives


From: Eric Gallager Sent: Wednesday, October 12, 2011 11:23 PM To: uscode Subject: Taking Advantage Of The Digital Medium In Writing/Publishing The US Code

Dear Sir or Madam,

My name is Eric Gallager, and I am a student of political science at The George Washington University in Foggy Bottom and an intern on Capitol Hill. I was recently looking at the US Code as published at http://uscodebeta.house.gov/, and I was struck by how much potential it had to be reformatted to take better advantage of the digital medium.

First of all, there's the issue of internal links. I would expect that as the US Code is being published online, it would have a level of inter-linking at least comparable to that seen in Wikipedia. Laws constantly cross-reference each other, and it is disappointing that even in the HTML version (HTML being the language of links), none of these cross-references actually link to the other parts of the code they are cross-referencing (or if they do, it is neither obvious nor consistent).

Second, there is the issue of versioning. The US legal code is constantly revised, and yet the way that revisions to it are handled online is done rather clumsily. MediaWiki has an easy way of seeing changes between documents called diffs, Microsoft Word has had the "Track Changes" feature built into it since forever, and Mac OS X Lion has a versioning system built into it at the OS level. Any of these could be an easier way to visualize changes to the US Code. Instead of having to write out the procedural language to "Change line #x of §y to say z" in the legislation, with laws being written on software with a versioning system, lawmakers could instead simply change the code to what they want to amend it to, and then the changes would automatically show in the versioning system. Speaking of procedural language, that brings me to my third point.

This proposal may be a little more ambitious than the previous two, but bear with me. One thing about all the procedural language in legislation is that it makes the legislation close to unreadable. So the idea I had, is what if we change the procedural language of legislation into a Turing-complete programming language? This way all the procedural language would be used for would be as a method of organizing and displaying the actual content of the legislation. In other words, the US Code would become actual computer "code." Based only on my minimal knowledge of programming and procedural legislative language, I came up with a possible way a "hello world" program could look in a programming language based on US legislation:

An Act To Say “Hello World”
   Be It Enacted by the Senate and House of Representatives of the United States of America in Congress assembled,
       “hello world”
Approved September 8, 2011

When compiled and run, the program/legislative act would simply say, "hello world". It is clear how much this cuts down on the length of laws. Besides making the displayed portions of the law more readable, making legislative language into a programming language could have added benefits. For example, by an act of legislation, Congress could require all computers to be able to compile and run this legislative programming language, and then if Congress passes any future legislation regarding computers, it could automatically push that legislation out to all computers, where it would run automatically. The government wouldn't even have to enforce cyber laws any more, because they would automatically be enforced by being coded into everyone's computers. However, Congress doesn't have to go that far (I would also argue that it shouldn't go that far either, but that's another issue). The benefits of making legislative language into a programming language should be clear by now. And if you have any doubts about the possibilities of turning natural language phrases into a programming language, I would simply point to LOLCODE, which took internet lingo and turned it into a programming language. This sort of thing is definitely possible.

So those are my 3 main proposals for bringing the US Legal Code into the 21st Century and taking full advantage of the digital medium: hyperlinking the code, versioning the code, and turning the code into a programming language. Honestly, if even just the first proposal were completed, I would be happy, but I can still dream about the others. Thank you for your time and please let me know if you have any questions.

Sincerely, Eric Gallager

_

I haven't checked back since then to see if the "Version 2" he mentioned is up yet though...

sc68cal commented 10 years ago

@cooljeanius This may be what they were referring to?

http://uscodebeta.house.gov/download/download.shtml

cooljeanius commented 9 months ago

@cooljeanius This may be what they were referring to?

http://uscodebeta.house.gov/download/download.shtml

Link takes too long to connect these days; here's an archive link: http://web.archive.org/web/20140109051538/http://uscodebeta.house.gov/download/download.shtml