Slashdot Log In
Source Control For Bills In Congress?
Posted by
kdawson
on Tue Mar 06, 2007 11:49 PM
from the real-subversion dept.
from the real-subversion dept.
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?"
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.
alternatively... (Score:5, Insightful)
Re:alternatively... (Score:5, Interesting)
Parent
Re:alternatively... (Score:5, Insightful)
Parent
Really need both: change control & full review (Score:5, Insightful)
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
Parent
Re:alternatively... (Score:5, Insightful)
Parent
I think I can see it now... (Score:5, Funny)
1) Don't be a twit.
Sincerely,
Congress
THIS SPACE INTENTIONALLY LEFT BLANK.
Parent
alternatively...RTF(_) (Score:5, Funny)
Parent
Re:Alternative 2 (Score:5, Funny)
Parent
I don't think you understand (Score:5, Insightful)
Re:I don't think you understand (Score:5, Interesting)
First, I read about something called the Federal Register [wikipedia.org] the other day. As I understand, it is a daily publication of the GPO, responsible for creating a record of public government communication.
Where does this fit into the equation? Wikipedia says it has been operating since the 1930s. That to me suggests existing infrastructure. Could this program be adopted to handle pending Congressional legislation? Does something similar exist already? Are these even valid questions? I'm trying to get a sense of the public accounting context that exists today.
Now, once we set up a legislative mechanism to get the information in place, there are practical considerations. I happen to agree with the parent's cynicism. Open government is less corrupt government, and there will surely be resistance to a program like this. What is the likelihood that something like this would be ignored? The aforementioned Wikipedia states that the Register is for public notices not "classified." Do government agencies really bother? Would Congress bother? Would it matter, practically speaking?
Then there's the question of volume. I understand the current Register is thousands upon thousands of pages. What would be the best way to handle all this data? Pressure our Congressmen to form a committee to look into the possibility of proposing vaguely worded, easily subverted legislation that would create a billion dollar, privacy infringing, twenty-year behemoth of a program? Or dictate simply that the data should be available in a specified format (something akin to a patch) in a timely manner.
I think the latter would be better, because it would force We the People to take a little responsibility for the program. I mean really, who doesn't think that an enterprising group of dedicated people, working for free in their spare time would work more efficiently than a monstrous bureaucracy? Sound like a familiar Slashdot battle?
Either someone will rise to the challenge and write a utility to "visualize" the data in an interesting way, or not. If not, I think we have bigger problems than Congressmen not reading their bills.
Make the data (near) freely available, then leave it up to The People to figure out how to use it. That's my take.
Parent
Fat chance (Score:5, Insightful)
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?
Re:Fat chance (Score:5, Insightful)
You add version control... The first thing they'll do is hire aides to add literally thousands of minute ammendments to every bill for the simple reason that it now becomes impossible to read every minor change log. They may well not sneak anything nefarious in to this bill, the next one or the next ten. Then, one day, fifty bills later, after people have long since given up reading change logs, one of the thousand minor edits will do just what they're currently doing.
With source control for code, you can monitor what goes in because people are rarely actively trying to sneak anything in. If you do have someone who wants that chance and so starts spamming change logs, you can identify their malicious intent, go to your boss and get them fired. In congress, sadly, they've long since turned a blind eye to such pork barrel [wikipedia.org] behavior and, if they turn a blind eye to it in this form, there's no reason not to expect them to turn a blind eye to it in a future form.
The original poster's mistake is thinking that congress somehow wants to not be corrupt. Yes, we can force a fix on one form... not that they actually want that fix... but, as the old saying goes, "Where there's a will, there's a way." and a lot of politicians have a very strong will for sneaking in self serving measures.
Parent
Re:Fat chance (Score:5, Insightful)
Parent
Re:Fat chance (Score:5, Insightful)
Even if the watchdog groups don't catch the shenanigans before the bill passes, there will at least be a transparent record of who did what.
Public accountability has a way of leading to public pressure. A Senator/Congressman will only be able to fire so many aides for sneaking in legislation before the public will say "maybe the problem isn't with the aides."
Parent
Read the Bills Act (Score:5, Insightful)
Re: Very Simple To Do (Score:5, Funny)
Anyone here at Slashdot know someone on the inside?
Parent
Should, yes... (Score:5, Funny)
*SQL = Staffer Quill Language
Yes, and a debuggable malloc too. (Score:5, Interesting)
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.
Throw in a garbage collector as well. (Score:5, Insightful)
Parent
Re:Throw in a garbage collector as well. (Score:5, Insightful)
OK, as long as there's somebody to implement an OnSunset() function that notifies the legislature. Otherwise, you could end up with situations where, for example, the meat industry suddenly no longer has to control rodents, and nobody realizes it until they walk into their local KFC and find that all the chicken has been replaced by.... oh... nevermind.
Parent
Read The Bills Act (Score:5, Informative)
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.
Re:Read The Bills Act (Score:5, Funny)
Parent
Not needed. (Score:5, Informative)
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/ [house.gov]
Been there... Done that (Score:5, Insightful)
Let's look at the change log (Score:5, Informative)
First, we're talking about 109th Congress, H.R. 3199, section 502, "INTERIM APPOINTMENT OF UNITED STATES ATTORNEYS." Version control is in Thomas [loc.gov], 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.