Source Control For Bills In Congress?
grepya writes "An article in Slate talks about the sneaky way a major change in the Patriot Act reauthorization bill was made by (possibly) a Congressional staffer without even his boss knowing about it. (The change increased the power of the Executive at the expense of the other two branches of government.) Now, I write software for a large and complex system containing millions of lines of code and I know that nobody could slip a single line of code into my project without my knowledge. This is because everything that goes into the build goes into a source control system, and email notification is generated to interested parties. This is for a body of work that affects perhaps a few hundred thousand people at most (our company and the combined population of all our customer organizations). Shouldn't the same process be applied to bills being debated in national legislatures that affect potentially hundreds of millions of people?"
... maybe the US Congress should read the bill before they pass it into law.
They want it to be this way by design.
Bill Clinton: Pimp we can believe in. - The Shirt!!!
Shouldn't the same process be applied to bills being debated in national legislatures that affect potentially hundreds of millions of people?
You mentioned getting email notifications about changes to the repository. You work with the code every day (or nearly every day). You see, these representatives in congress often times vote on bills which they have not even themselves read. They get the executive summary.
That is like the difference between you reading the code for a newly modified parser class and getting one of your underlings to brief you about the changes. You might spend an hour or more reading source code for a whole new class, and only two minutes getting briefed on it. You have to get them actually read the bills first.
Maybe we should require that all bills be read aloud in their entirety in an open session of congress?
Its all done with paper.
Maybe if some of the politicians passing laws about technology were a bit more tech savvy we wouldn't see any of this. Corruption by camouflage. I bet that even though the changes weren't supposed to be in there. They won't be amended. That would just be silly.
Make Congress Read the Bills. If they have to sit through a reading, maybe they'll cut down on the length and complexity of the laws. Here, apparently nobody knew what they were passing into law.
This problem should really take care of itself. Just get a staffer to SQL-inject* the necessary clause as a rider for some boring budget stuff that no one will read all the way through, wait for Dubya to sign it, and then pop out and shout p0wned! Then they'll have to build that foolproof system, and we'll be all set.
*SQL = Staffer Quill Language
You see? You see? Your stupid minds! Stupid! Stupid!
I once had a conversation with a lawyer friend, who explained that there are portions of the law that refer to laws that have been repealed. I tried to explain to him that in computing this is directly analogous to de-referencing a pointer to memory that's been free()'d. We all know what this does in a program. In law, it perhaps there is a default judgement in cases like this. He was just a law student at the time, and IANAL, so maybe some real lawyers could explain how this situation is handled now.
For all intensive purposes, "whom" is no longer a word. That begs the question, "who cares"?
That would make "earmarks" and "pork" very difficult to insert in bills without leaving evidence of who did it. Congress would never allow such things to be audited.
Those who do study history are doomed to stand helplessly by while everyone else repeats it.
Courtney Love describes how all recording contracts became "Work for Hire" by a similar process:
l ove/index.html
http://archive.salon.com/tech/feature/2000/06/14/
There is another way to look at controlling legislation, IMHO much more important than mere source control:
A group called DownSizeDC.org is promoting a bill that would force every legislator who votes for a bill to sign a declaration that have either read the entire text of the bill, or had it read to them. The "Read the Bills Act" would also require that every piece of legislation be posted on the Net in its final form for a full 7 days before any vote could occur, giving the rest of us time to read and react...
There used to be requirements in US House and Senate for reading of the bills, but they both routinely waive that requirement. If it were required, the number and complexitiy of bills actually presented would go down dramatically.
If we could pass laws/amendments to "sunset" EVERY existing law, then our esteemed representatives could spend their time deciding what laws are important enough to renew, rather than making up new malarkey.
This issue is a bit more complicated than you think.
Sadly, this is a bit alarmist.
Bills are already drafted using XML assigned numbers. Any amenment to a bill has its own number, bills which are "engrossed" or passed have a different number. They know exactly what they are voting for.
http://xml.house.gov/
If all Congressional documents were stored in a Subversion repository, Homeland Security would positively short-circuit trying to follow up on all of the suspicious emails from young DC residents saying things like "Hey, are you sure the latest pages are committed to Subversion yet?" and "Something just bombed in my sandbox, I'm going to have to nuke everything in sight and do an update!"
Going off on the same tangent, here's an example of a fragile base class. The Virginia legislature shortened (rather than completely eliminate, as in your malloc() dangling reference example) a list of businesses subject to some exemptions, not realizing that that same list was also used by another law saying which businesses had to be closed on Sundays.
The irony of slashdot telling people to RTFB is black hole massive.
Such things already exist. I know someone who works for a company that makes version control software for documents. Their biggest customers are law firms. Nobody in a fortune 500 company wants some new hire paralegal modifying a clause in a billion dollar contract that it took months to negotiate. Congress people know the system could be made more fool proof but that would remove one more venue of plausible deniability they can use with their constituents. In Washinton crap just doesn't naturally roll down hill, it's designed to do so. Just as "Scooter"...
Congressmen do not read the bills for the simple fact that most of the major bills, tax, spending, etc., are not finalized (i.e., have major changes being made) utill the last minute. They often admit that they don't know what's in the bill being voted on.
They 'know' that cuts in any pet spending program cannot be made because we cannot 'afford to pay for the cuts'.
They hypocritically claim to know that we cannot afford to cut anything and yet admit that they vote for legislation that they do not know how much is being spent and what items it is spent on in bills.
The third Congressional sham is that they claim that reducing the rate of growth of spending on a particular program is a cut. A cut is an actual reduction in spending year over year. This is due to the 'baseline-budgeting' where spending on each program is automatically increased by 4% a year without congressional action.
These are reasons why you should not believe the parroted lines from each party.
Congress should be judged based on the actual bills they pass and not on the CNN Crossfire type of sound-bites.
Wasn't this in the last episode of "24"?
No, no no, you're thinking of the one where Jack yelled into his cellphone "Chloe, There's NO TIME!", got shot and died, was brought back to life, saved the President, yelled "DAMMIT!", confonted the bad guy (a different high ranking government official bad guy than last week), pulled out his gun, pistol-whipped the high ranking government official and threatened to kill him with "TELL ME WHAT I WANT TO KNOW NOW!"
DAMMIT! You just gave away the entire next season!
Has I understand it, it should be simple enough to just have somebody just slip this new Mandatory Read law in.
Anyone here at Slashdot know someone on the inside?
Letter To Iran
cvs? It sounds like someone's already using subversion...
Do you have ESP?
The legal system on an index card, volume 1:
1) Don't be a twit.
Sincerely,
Congress
THIS SPACE INTENTIONALLY LEFT BLANK.
"Ladies and gentlemen, my killbot features Lotus Notes and a machine gun. It is the finest available."
Well, that would be a start, but I still don't think that it obviates the sort of version-control system that the GP is talking about.
... maybe it's because they're pushing half-baked, half-assed stuff out the door to the "users" (citizens)?
Just think: if you were working on a big software or documentation project, would you want your QA process to involve nothing but some guy standing up and reading the source code out loud? No way -- everyone would be asleep or bored to tears (well, unless it was Perl, then they'd probably be waiting for his face to just fall off).
There's a reason that change management is a big issue, in addition to peer review and transparency. In fact, they compliment each other. When you can produce a list of what each person has changed, you have a basis for what you want to concentrate your reviewing efforts on.
Now, change-management isn't a cureall -- anyone in software knows that just because something hasn't changed, doesn't mean it's not buggy. You could change something that causes something that hasn't been changed to break, or you could just discover a bug later; either of those things are possible with laws as well as software. Unless you also have some way of tracking dependencies within the bills (cross references, etc.), it might be possible to "break" the law (make it internally inconsistent) with a minor change somewhere else. So that would still require full readings.
Still, it's ridiculous that there isn't something in place right now, to prevent some staffer from just sneaking language into a bill that's a surefire pass, without anyone noticing until it gets printed up in the Congressional Record.
On the whole, maybe Congress needs to hire some QA people? I mean, it's obvious they have a "client satisfaction" (voters) issue, and that the "deliverables" (laws) really suck
"Ladies and gentlemen, my killbot features Lotus Notes and a machine gun. It is the finest available."
First, we're talking about 109th Congress, H.R. 3199, section 502, "INTERIM APPOINTMENT OF UNITED STATES ATTORNEYS." Version control is in Thomas, run by the Library of Congress. (Unfortunately, you can't link to Thomas documents effectively; it's a front end to a non-Web system and the URLs are temporary.)
So where did that go in? The versions passed by the House and Senate are quite different, and this bill was rewritten in conference committee. This language isn't in either the House or the Senate version. We go to the Bill Summary and Status File, and look under "Amendments". This is the change log for the bill. Nothing about this is in there.
This change was added in the House-Senate conference committee, which is how stuff like this usually sneaks in.
The only reference to this change is in the conference committee's report, at House Congressional Record page H1130. The text is:
Section 502. Interim appointment of United States Attorneys
Section 502 is a new section and addresses an inconsistency in the appointment process of United States Attorneys.
That's where it went in. But there's no indication of who put it there. The members of the conference committee were appointed by the Speaker of the House, and they were:
One of those members of Congress is responsible.
Not to be an ass, but have you ever read a law in its original form?
I'd hardly call it english. Legalise really is its own form of code.
I think the GP's point stands, it'd be useful to have some sort of independent QA organization that would validate a bill against its intent.
Of course, then again, I think Pork should be illegal as well. Putting a $100 million into a defense spending bill for Senator Tube's state to build a bridge to an island of 50 people should get someone hung.
This is the point of having a painfully slow congressional process. Anyone who has ever watched the House debate something on the floor via c-span (or committees online) knows that the time taken to decide anything (*especially to decide that something is worthy of a decision) is outrageous. And that is exactly what the framers had in mind when they established the rules for engaging in Congressional debates.