Slashdot Mirror


Congress Mulls API For Congressional Data

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."

27 of 121 comments (clear)

  1. If this brings about more accountability by Em+Emalb · · Score: 2, Insightful

    ...then I'm all for it.

    Clarity is a good thing in government.

    --
    Sent from your iPad.
    1. Re:If this brings about more accountability by Shakrai · · Score: 2, Informative

      What good is accountability when most Congressional Districts are drawn 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?

      --
      I want peace on earth and goodwill toward man.
      We are the United States Government! We don't do that sort of thing.
    2. Re:If this brings about more accountability by Em+Emalb · · Score: 4, Funny

      You're right, we shouldn't have increased accountability.

      --
      Sent from your iPad.
    3. Re:If this brings about more accountability by Shakrai · · Score: 2, 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?

      --
      I want peace on earth and goodwill toward man.
      We are the United States Government! We don't do that sort of thing.
  2. Law for geeks by Baldrson · · Score: 3, Insightful
    Law is code*.

    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".

    1. Re:Law for geeks by gEvil+(beta) · · Score: 4, Informative

      I think you have that backwards. It is not entirely coincidental that the rules that a computer program follows are called "code".

      --
      This guy's the limit!
    2. Re:Law for geeks by orclevegam · · Score: 4, Interesting

      They should use something like GIT and assign each congress critter a login (and make the revision history available to the public). Not only could we follow the larger modifications of a bill at the central level as it moves through congress, but we could look at the branches each congress critter checks in and see what kinds of modifications occur in their own office. What would be really neat is if someone then took that data and did a bit of correlation between changes made at particular times and recent visits of lobbyists. Imagine the questions that might be raised if a congress critter has a recent visit by say a Microsoft lobbyist, and then a few days later amends a seemingly unrelated bill in a way that turns out to be beneficial to MS.

      --
      Curiosity was framed, Ignorance killed the cat.
    3. Re:Law for geeks by Lord+Bitman · · 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.

      --
      -- 'The' Lord and Master Bitman On High, Master Of All
    4. Re:Law for geeks by b4dc0d3r · · Score: 2, 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 Whatshisname. House version of new bill proposal. (contents copied verbatim from different lobbyist e-mail request, but this won't be specified anywhere)
      Rev2: House Committee chair. Updates from committee meeting. (massive replacement of the text, no names specified)
      Rev3: House Committee chair. Deleted bill, updates moved to Senate version.

  3. Hmmph. by SatanicPuppy · · Score: 4, 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.

    --
    ad logicam Claiming a proposition is false because it was presented as the conclusion of a fallacious argument.
    1. Re:Hmmph. by DrLang21 · · Score: 4, Insightful

      I used to think this until I started to realize the difficulty of writing plain language that was not ridiculously easy to technically interpret in a way that I completely did not intend. Thus I now try to avoid plain language when writing a contract. What's even scarier is that our laws are still often easy to bend in ways that were not intended. Plain language would probably make it a lot worse.

      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.

      --
      I see the glass as full with a FoS of 2.
    2. Re:Hmmph. by larry+bagina · · Score: 2
      Time Geithner. The Treasury Secretary, the guy in charge of the IRS, couldn't get his taxes right. Tom Daschle, former senate minority and majority leader, couldn't get his taxes right. Charlie Rangle, one of the most important people when it comes to tax law, couldn't get his taxes right. Every time a new cabinet is assembled, half a dozen people drop out of consideration because they didn't pay their taxes. And no doubt more refuse consideration for the same reason.

      People who write the law don't understand the law. People who enforce the law don't understand the law.

      --
      Do you even lift?

      These aren't the 'roids you're looking for.

    3. Re:Hmmph. by mbone · · Score: 2, 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.

    4. Re:Hmmph. by OctaviusIII · · Score: 4, Informative

      That 1,000 pages thing is misleading: bills are printed on half-sized pages, double-spaced, in rather large font (Times New Roman 16 or 18) with wide margins (at least 0.75"). Were it a normal ol' book, it would probably be in the 200-300 range.

      --
      What's this? Another weblog? On transit?
    5. Re:Hmmph. by homer_ca · · Score: 2, 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.

    6. Re:Hmmph. by skarphace · · Score: 2, 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.

      --
      Bullish Machine Tzar
  4. authenticated versioning by BigHungryJoe · · Score: 4, 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...

    1. Re:authenticated versioning by PolygamousRanchKid+ · · Score: 3, 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.

      --
      Schroedinger's Brexit: The UK is both in and out of the EU at the same time!
  5. One feature I hope to see by MikeRT · · Score: 3, Insightful

    Bills should be accessible in a form similar to patches created by diff. There should be a web service that allows you to retrieve the affected USC titles, merge them, and then apply the new bill as a patch to the federal law so that you can quickly assemble a coherent view of how the law will change.

    1. Re:One feature I hope to see by Anonymous Coward · · 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.

  6. Use wiki API as the guide by yurik · · 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 ) - we can just adapt a similar approach.

    (Shameless plug: I was the dev who implemented the original wiki api)

  7. A logic based language by mbone · · Score: 4, 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.

  8. distribute airbags too by peter303 · · Score: 3, Informative

    I routinely look at large bills on thomas.loc.gov to see whats in them. 485 last minute earmarks in the stimulus bill and 9000 in the 2009 budget bills. Enough to make you gag.

    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.

  9. corruption by Lord+Ender · · Score: 2, 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?

    --
    A slashdotter who didn't build his own computer is like a Jedi who didn't build his own lightsaber.
  10. Re:that's why...for the thousandth time, we need by ceejayoz · · Score: 2, 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?

  11. Use git by Ingolfke · · Score: 2, Funny

    They should use git.

  12. XML by HighOrbit · · Score: 2, Interesting

    Don't reinvent the wheel, just use existing standards. US Code (law), Code of Fedreal Regulations, legislative bills are all already highly structured documents. And what commonly used data format is widely used for structured documents?

    [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.