Stories
Slash Boxes
Comments

News for nerds, stuff that matters

Slashdot Log In

Log In

Create Account  |  Retrieve Password

Congress Mulls API For Congressional Data

Posted by kdawson on Fri Mar 06, 2009 10:47 AM
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."
+ -
story

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
More
Loading... please wait.
  • ...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?

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

        • 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?

      • 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)

    by Baldrson (78598) * on Friday March 06 2009, @10:53AM (#27092009) Homepage Journal
    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".

    • Re:Law for geeks (Score:5, Informative)

      by gEvil (beta) (945888) on Friday March 06 2009, @10:56AM (#27092051)
      I think you have that backwards. It is not entirely coincidental that the rules that a computer program follows are called "code".
    • The only problem with the legislative process as change control is that it's hard to tell which coder is responsible for any given bug (or Easter egg!) in the system.
      • Re:Law for geeks (Score:5, Interesting)

        by orclevegam (940336) on Friday March 06 2009, @11:08AM (#27092221) Journal
        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.
        • And before anyone makes a big deal out of it, feel free to replace any occurrence of Microsoft in the previous statement with any other entity of their choosing.
        • Re:Law for geeks (Score:5, Interesting)

          by Lord Bitman (95493) on Friday March 06 2009, @11:40AM (#27092593) Homepage

          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.

          • 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

      • That is a serious problem; but it could be fixed with the application of tools that have been used for software stuff for years. It wouldn't be rocket surgery to have a system where the only way to start or change a bill would be with an authorized account in a revision control system. Then you could see exactly which account was responsible for any given changes. A lot of people wouldn't like it; but that is exactly why it needs to happen.
        • 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

    • What you say is true, which suggests that it would be quite nice to take this a great deal further.

      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
    • 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)

    by SatanicPuppy (611928) * <[moc.liamg] [ta] [yppupcinataS]> on Friday March 06 2009, @10:56AM (#27092045) Journal

    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.

    • 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)

      by DrLang21 (900992) on Friday March 06 2009, @11:02AM (#27092147)
      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.
      • 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].

    • 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 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)

      by OctaviusIII (969957) on Friday March 06 2009, @11:37AM (#27092547)
      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.
    • 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

  • by BigHungryJoe (737554) on Friday March 06 2009, @10:58AM (#27092073) Homepage

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

    • by PolygamousRanchKid (1290638) on Friday March 06 2009, @11:26AM (#27092425)

      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.

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

  • by MikeRT (947531) on Friday March 06 2009, @11:00AM (#27092111) Homepage
    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.
    • Re: (Score:2, Interesting)

      by Anonymous Coward

      Go to www.govtrack.us and ask for some funding to work on this as a project if you feel strongly about it.

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

    Both. Duh.

  • by yurik (160101) on Friday March 06 2009, @11:06AM (#27092181)

    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)

  • by mbone (558574) on Friday March 06 2009, @11:06AM (#27092193)

    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.

    • Shouldn't something similar to Perl be able to do just that? A bill contains references to every section of law it changes ("Public Law 103-34 Section 21a, Subsection B, line 32 shall read..."). If a script were written that could identify and read those references, couldn't that form the backbone of what you're referring to?
  • This is something that should have been looked at 15 years ago when the internet was starting to take off. An electronic copy with revision control to show how a bill has been changed and who introduced the changes is really needed and USEFUL system. Now we will be able to really see who is responsible for different things, not just the people who introduced the bill or were cosponsors, as well as who voted and how they voted on the bill. We won't just need to take their word on it that your representative
  • by peter303 (12292) on Friday March 06 2009, @11:07AM (#27092201)
    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.
  • corruption (Score:3, Insightful)

    by Lord Ender (156273) on Friday March 06 2009, @11:11AM (#27092257) Homepage

    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?

    • The number would be 99.8%. Dr Paul does not ever vote for those bills.

    • Where is "+1 The Sad Truth" when you need it? Legislation requiring future bills to be "about one thing" or some sort of legislation allowing us to see exactly who put what in there when has been overdue a long time. (Yes, that sentence is a train wreck. It's early.)
  • Use git (Score:3, Funny)

    by Ingolfke (515826) on Friday March 06 2009, @11:22AM (#27092377) Journal

    They should use git.

  • the first tangible move toward making federal legislative data available to the public in bulk

    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.
  • This is a fantastic idea! It would resolve a great deal of transparency problems with how our government works... yes, you can pour through Thomas, but Thomas is only a barely usable system, and its versioning capabilities definitely don't give the kind of information that would actually be useful to people trying to figure out who put line X in bill Y. If such an API existed (and was made truly useful in the ways being spoken of with versioning and robust searching), I would consider that a great victory
  • XML (Score:3, Interesting)

    by HighOrbit (631451) on Friday March 06 2009, @12:38PM (#27093401)
    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.
    • 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?

    • Or, politicians could suck it up and realize that a solid bill with utter B.S. attached is just an utter B.S. bill. Oh wait, we're talking about politicians.
    • 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.

    • Line-item vetos are tricky, though - it gives the President huge power to legislate spending. A better proposal is the concept of royal prerogative: every spending measure must come from the Government in power. Canada used to have a problem with earmarks until they reinstated this practice. Still, I have no idea how this could work in the US, so I'll leave that up to the constitutional experts.