Slashdot Log In
Congress Mulls API For Congressional Data
Posted by
kdawson
on Fri Mar 06, 2009 10:47 AM
from the it's-a-start dept.
from the it's-a-start dept.
Amerika sends in a Wired blog post on the desire in Congress to make data on lawmaking more easily available to the public. The senator who introduced the language into an omnibus appropriations bill wants feedback on the best way to make (e.g.) the Library of Congress's Thomas data more available — an API or bulk downloads, or both. Some comments on the blog posting call for an authenticated versioning system so we can know unequivocally how any particular language made its way into a bill. "Congress has apparently listened to the public's complaints about lack of convenient access to government data. The new Omnibus Appropriations Bill includes a section, introduced by Rep. Mike Honda (D-Calif.), that would mark the first tangible move toward making federal legislative data available to the public in bulk, so third parties can mash it up and redistribute it in innovative and accessible ways. This would include all the data currently distributed through the Library of Congress's Thomas web site — bill status and summary information, lists of sponsors, tracking timelines, voting records, etc."
Related Stories
This discussion has been archived.
No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
Full
Abbreviated
Hidden
Loading... please wait.
If this brings about more accountability (Score:2, Insightful)
...then I'm all for it.
Clarity is a good thing in government.
Re: (Score:3, Informative)
What good is accountability when most Congressional Districts are drawn [wikipedia.org] in such a way that the real election winds up being during the primary where only the most rapid party supporters (typically 10-15% of those eligible) turn out to vote?
Re:If this brings about more accountability (Score:4, Funny)
You're right, we shouldn't have increased accountability.
Parent
Re: (Score:3, Insightful)
That's not what I said. I just question how "accountable" they are when they have a 95% chance of being re-elected as long as they pander to the party base. In the final analysis the only way you can hold a politician accountable is to vote them out of office. Via gerrymandering and pork they've rigged the game to make this virtually impossible. Do you see the problem?
Re: (Score:2)
and not only that, *rabid* supporters too! But seriously primaries are no contest either. I believe more members of Congress are replaced by death in office than by primary challenges (I can't remember the exact stat and can't google it. It was either "by death in office" or "by death in office and retirement").
Law for geeks (Score:4, Insightful)
Legislation is a change to the code.
The legislative process is change control.
*It is perhaps not entirely coincidental that the "code base" of law in the US is designated by the prefix "United States Code".
Re:Law for geeks (Score:5, Informative)
Parent
Re: (Score:2)
Re:Law for geeks (Score:5, Interesting)
Parent
Re: (Score:2)
Re:Law for geeks (Score:5, Interesting)
I don't know about how git works for you, but for me, it requires a non-blank commit message. And if someone browses the log and sees a non-meaningful message, a message that doesn't explain the whole commit, or a singe commit which does "too much at once", questions get asked.
That's why we need "Git for government". Lots of small commits, references to why they happened (ie: links to C-Span video, audio or transcripts from meetings, etc)
This is something which needs to be taken on by someone on some level. It's not something which will happen immediately when someone passes a law requiring it. It'll need to be someone going up to a local lawmaker and dedicating all their time (100% of it) to tracking changes for them. Find out what's needed in terms of an interface to get real people to want to use it, make it so that non-programmers can benefit from it. Do this for one person, let anyone clone the results, and always be public about willingness to do it for anyone.
Re-election time comes around, and the person you're "sponsoring" gets to say: "I'm all for government transparency. Every last paragraph I've put into a bill over the past two years has an explanation attached to it. The service I use to make this available to the public is free for any lawmaker, and similar methods are available for free to all members of the public. Why has my opponent not bothered to do the same? What is he trying to hide?"
I would love to see an organization form around this very concept. "Free version control for government", a service provided by volunteers for absolutely anyone involved in writing laws or policy.
I don't see it as something which would ever really happen, of course.
Parent
Re: (Score:3, Insightful)
You're not going to get multiple tiny commits. You're going to get this from every single bill:
Rev1: Senator Whatshisname. New bill proposal. (contents copied verbatim from lobbyist e-mail request, but this won't be specified anywhere)
Rev2: Senate Committee chair. Updates from committee meeting. (massive replacement of the text, no names specified)
Rev3: Senate Committee chair. Merged with House bill upon committee recommendation. (more replacement, no names specified)
And simultaneously:
Rev1: House Wh
Re: (Score:2)
Re: (Score:2)
If something like that were really implemented, it wouldn't be used at all, save for a staffer occasionally being told to do the equivalent of a mass commit without merging, squashing everyone who gets in the way.
People just don't work in a way which programmers would like. There are lots of "change this word here", etc, which is very vcs-friendly, but there is also a lot of "Based on the meetings, I wrote these 100 pages last week. Please review it."
It's those "bulk commits" that we need to find a system t
Re: (Score:2)
We really should be using a revision control system for laws the way we do for code. Make read access public, and have commit access tied to official's accounts, with the ability to delegate to staff if they so desired(ie, Senator X has an account. If he wishes, he can authorize a SenatorX.MinionY account, so Minion Y can work on legislation for him; but it is immediately clear who is responsible, have it wo
And that's why Congress is so incredibly fubared (Score:2)
When was the last time that Congress did a code review? The whole legislative process can boil down to a typical intern's approach to building software "write code, compile it, if it works, throw it into production until the boss (SCOTUS) says otherwise."
The legislative process needs to be made more deliberate. There need to be teams of lawyers charged with reviewing laws and drafting up use cases. Unfortunately, you won't have that until something can be done to make politicians do their jobs, and not spen
Hmmph. (Score:5, Insightful)
It'd be more useful to see laws written in something resembling plain language. There is no excuse for 1,000 page omnibus bills. If it was line-item budgets, that would be one thing.
When you can't understand the law, you can't obey the law. And since ignorance of the law is no excuse, you can basically be arrested for anything. What a world.
Re: (Score:2)
Re: (Score:2)
When you can't understand the law, you can't obey the law.
That's the point. One big step towards a police state is making sure that everyone is doing *something* illegal at all times. 99% of the time if you're not causing problems they just let it slide. Once you get on their bad side they slap you with a "Oh, you didn't know it was illegal to register your Gmail account with your local police department because your 17 year old ex girlfriend sent you photos of herself nude 10 years ago?" That's an arrestin.
Re:Hmmph. (Score:5, Insightful)
Laws are fairly easy to understand when you read them through. The problem is that they are the driest most boring pieces of literature ever written.
Parent
Re: (Score:3, Insightful)
Yes, you've certainly explained the need for jargon, whether it's legalese or technical. Although jargon is confusing and excludes non-experts, plain language is just too ambiguous. Ever had a non-technical person explain a computer problem to you in "plain language"? Yeah, it's like that.
Re: (Score:3, Informative)
Too true. If you write in normal speech, you quickly have problems. Many words are just plain ambiguous. Even in technical specifications, it's something that has to be dealt with: if you're comparing two things for equality, what happens if one string has a precomposed Unicode character and the other one has the combining characteristics? Should the "K" (Kelvin sign glyph) and the "K" (Latin upper-case K) be considered equal?
Plain language is almost always hopelessly ambiguous. Most legalese is actually very readable if you have a bit of practice.
Not totally true. They are doing something about it [plainlanguage.gov].
Re: (Score:2)
People who write the law don't un
Re: (Score:3, Insightful)
I will grant that some obsfucation is deliberate, but a lot of it is an attempt to be precise. Plain language is all too often ambiguous. If you have ever tried to write a complicated contract, you will know what I mean. It's not that different from writing code - simple metacode may not be so simple once you have allowed for all possible exceptions and strange conditions.
Re:Hmmph. (Score:5, Informative)
Parent
Plain language can be unambiguous. (Score:2)
There's a lot of arguing back and forth about whether the government should use plain language.
The argument for is that then everybody can understand the law better; the argument against is that plain language tends to be ambiguous and the laws are complex in nature.
I conjecture the following: plain language can be used to describe complex systems in unambiguous ways (to the extent the systems are unambiguous, at least).
As a starting analogy, consider lambda calculus: you have three rewriting rules (variabl
authenticated versioning (Score:5, Insightful)
Not a chance. They'd never be able to use the excuse "some anonymous person slipped in this provision at the last hour and I didn't want to not vote for the bill just because of this" again...
Re:authenticated versioning (Score:4, Insightful)
Yep . . . this would provide transparency in government . . . and all politicians will scatter away like cockroaches, when you turn on the light in the room.
No more secret reciprocal vote tradings, secret deals (my spotted owls, for your unneeded dam), etc.
This thing will get quietly scuttled for . . . "technical" reasons.
Parent
Re: (Score:2)
Oh how fantastic that would be. I see the textual bulk of legislation going down drastically as you cut out all the BS and make people accountable for the content.
Hey, one can hope.
One feature I hope to see (Score:4, Insightful)
Re: (Score:2, Interesting)
Go to www.govtrack.us and ask for some funding to work on this as a project if you feel strongly about it.
Feedback. (Score:2)
Both. Duh.
Use wiki API as the guide (Score:3, Interesting)
The process of the bill writing seems to me to be very similar with how the Wikipedia articles get started / mature. Wikipedia API was designed specifically to work with the bulk data (see http://en.wikipedia.org/w/api.php [wikipedia.org] ) - we can just adapt a similar approach.
(Shameless plug: I was the dev who implemented the original wiki api)
A logic based language (Score:5, Interesting)
I have long thought that there should be a logic-based language for laws, at least for laws like the Tax code. My original idea in this direction was prolog, but something built on top of XML is probably more appropriate today.
It should, for example, be possible to automatically check that some 400 page law doesn't contain 1 paragraph that totally changes some other law, or that, say, 20 pages of consumer protections are not negated by two lines 100 pages later. The legal language used is already close to meta-code, but right now this all has to be checked by hand, allowing untold mischief. It should also be possible to check for logical inconsistencies and missing if-then-else options.
Some I am sure will see the current ... flexibility as a feature, not a bug, but I think it is high time to be able to do some automatic checking of what the Congress is doing and what proposed laws actually mean.
Re: (Score:2)
All I can say is "about time"... (Score:2)
distribute airbags too (Score:4, Informative)
These are sort of like an ebay auction: 24 hours before the vote these start to stream in. Often they are placeholders "text to be supplied" or very obscure references to the organization designated for the earmark. Not even the toiling interns who are supposed to vet these for their bosses can keep up last minute submissions.
Ironically the TARP bill last year was very streamlined and only had one earmark. But that was a controversial federal judge raise.
Another nausea in the bills are that 90% are resolutions commending people or organizations in their districts. this reads like the gossip pages in the newspapers. You see this if look at the full list of recent bills.
corruption (Score:3, Insightful)
I almost don't want to know. "Kickback" corruption spending is practiced by basically everyone in congress. Whenever an important bill comes up, everybody says they will vote against it unless there is language included to fund some boondoggle project from their major campaign contributors back home. So they all compromise and agree to add these little corruption amendments, then vote yes. They don't care about the main topic of the bill or their constituents. They just want their kickbacks.
If we have accountability, we will have a clear picture of a system which is rotten to the core. What help would it be to find a 100% corruption rate?
100%? (Score:2)
The number would be 99.8%. Dr Paul does not ever vote for those bills.
Re: (Score:2)
Use git (Score:3, Funny)
They should use git.
an API designed by a congressional comittee? (Score:2)
Putting on my tinfoil hat, but ... (Score:2)
And then isn't the reverse true? Won't it make it easier to collect a lot more information about who is pulling what data? I'm not saying it's happened in the past [aaup.org] (I don't know if that suit ever went anywhere) but it is certainly possible.
Fantastic! (Score:2)
XML (Score:3, Interesting)
[drumroll]
XML. The answer here is define to several XML schemas (schemata) to capture the structure of these documents and use existing standards and technology (i.e web services over http) to distribute. None of that is rocket science or would required years of development effort, but may required years of exectuion. Its not hard; its tedious. The tedious part will be converting all the old docs over to XML.
Re: (Score:2)
You will never see line-item veto again since SCOTUS ruled it was unconstitutional.
Re: (Score:3, Informative)
You will never see line-item veto again since SCOTUS ruled it was unconstitutional.
If only there were a way to change the Constitution. What's a good word for that? Oh! Amending! Wouldn't it be cool if someone had thought of that when they wrote the thing?
Re: (Score:2)
Hear, hear (Score:2)
I guess it takes a constitutional amendment to make that happen, and if so, let's do it. Also it's interesting that the Confederate president had line-item veto power explicitly granted in that constitution.
Re: (Score:2)