
We Need a Programmer for President - friendlytuna
http://java.dzone.com/articles/would-you-vote-programmer
======
dkhenry
I think the author greatly exaggerates the assumpitions he makes about
"programmers", just because you know how to write computer code doesn't mean
you will want to spend more money on the space program or be opposed to
software patents. Furthermore this list isn't the benefits from a technical
person running the country its someone who agrees with his ideology. How about
we need a engineer to be running this country so that

    
    
        * They understand how to break down large problem to small ones 
        * Are efficient and always looking for ways to make other parts of the system efficient
        * Understand the technical issues facing the country 
        * Knows the value of having, and the benefit of relying on expects in each problem domain
        * Knows how to plan and implement solutions to complex problems 
        * Knows how to map problems across domains to leverage existing knowledge 
        * Isn't afraid of getting into the details of problems.
    

I think thats a better list.

~~~
jpdoctor
I notice that "building consensus among people" is absent from your list.

In fact, the word "people" is missing from your list.

~~~
sageikosa
Yep. To be chief executive, one needs to have executive experience in managing
large organizations of diverse talent. Except for the last election cycle, the
US of A went for about 40 years of electing a president with executive
experience (governors mostly, but also some people who had been Vice
President, or ran the CIA).

The last cycle was an aberration, in that both major party candidates were
legislative politicos (disregarding McCain's officer status in the Air Force),
and there was no clear large organization management experience in the field.

~~~
philwelch
McCain served in the Navy, not the Air Force.

~~~
sageikosa
My bad, I knew he was a pilot, didn't check my references.

------
kristiandupont
Programmers make good programmers. Programmers who make good project managers
are not that common. Programmers who make good CEO's are rare. I don't think
I've met a programmer who would make a good president.

Sure, if you re-think the world to some utopia where the president only needs
to figure out what the problems are, design new laws and implement them by
pushing a button, then yes. But you don't need to watch a lot of West Wing to
realize that the skills required are primarily people-skills: communication,
diplomacy, delegation and negotiation. Some programmers have these, sure, but
they are not their typical strengths.

~~~
geebee
_Programmers who make good CEO's are rare. I don't think I've met a programmer
who would make a good president._

Agreed, but have you met a lot of lawyers who would make good CEOs or
presidents? I think you may be talking about rare _people_.

Just as an interesting reference point, people with undergraduate engineering
degrees are actually represented as CEOs in the fortune 500 far out of
proportion to their percentage of the undergraduate degree population. I
believe it's reverse for government, though.

Of course, programming != engineering, though a lot of the programmers I know
did major in some kind of STEM field.

------
67726e
Maybe we should get someone with a CS degree running for president. If HN is
any indication, it is the only degree to qualify you as an expert in
economics, history, politics, various forms of science, religion, and
sociology.

~~~
pvarangot
I think you mean a college dropout from a CS degree program.

~~~
jorgeleo
why not

[http://www.huffingtonpost.com/2012/06/19/college-dropouts-
wh...](http://www.huffingtonpost.com/2012/06/19/college-dropouts-who-made-it-
successful_n_1610645.html)

------
PaulHoule
U.S. programmers, as a whole, won't get behind one stance on immigration.

I know many programmers from India, for instance, and they are talented people
that I really like. I've seen the real contribution that these people make to
America's bottom line.

I've also seen many corporate "body shops" where frankly, there's a class war
going on, and management wants to "tame" the complexity of software developers
by making us low-priced and low-status cogs. The low status may be more
fundamental than the low price, because a professionalized stratum of
programmers is a threat against managers who build castles in the air and send
us off on charges of the light brigade and to build Marginot Lines.

Many U.S. programmers see H1-B as a weapon that will be used against them.

Personally I see something in both points of view on this issue but I'd find
it hard to take either side as a platform position or to support an
organization that takes a stance on H1-B one way or the other.

I definitely think we're missing a real professional organization for software
developers. The ACM fails at this because it represents the interests of
academic computer scientists, not practitioners.

I'd very much like to pay dues to something like the ACM, oriented towards
practitioners, but unfortunately this doesn't exist.

~~~
geebee
This is a good point. The most common profession among legislators in the US
so far has been law. They have most definitely not shown any interest in
making it easier for foreign lawyers to practice in the US (I'd say they've
shown remarkably cartel-like inclinations, really)... but they are relatively
enthusiastic about getting more STEM workers here.

------
rayiner
I always find these sorts of articles ridiculous. Its like those people who
always say "we need an businessman president!" A regular profession is largely
irrelevant to the skills needed to be an effective President. The relevant
limitation isn't someone who has the right ideas. It's finding someone who can
savvily spend political capital to achieve particular ends.

~~~
dhconnelly
Working in a given profession for an extended period of time imparts a certain
world view. Most politicians were lawyers, and I think it shows. Maybe we need
a "hacker" president, not just a programmer, but I do believe that a
programmer president would have a point of view very different from those
currently represented in the government--one that can understand and
appreciate the technological challenges that will continue to grow in
importance. The Internet and its effects on business, war, civil liberties,
and everyday life is very much uncharted territory and understood by very few.
Until someone in a position of sufficient influence, perhaps the president,
understands software, I think the government will remain in the dark ages.

~~~
rayiner
Having been both a programmer and a lawyer, I don't think the world views are
really that different. They are both detail-oriented and analytical. I think
lawyers have a stronger inclination towards fairness and programmers have a
stronger inclination towards correctness, but I think most good lawyers would
be good programmers and vice versa.

You don't need to be a programmer to understand the impact of the internet on
civil liberties, etc. How does knowing about how TCP provides reliability on
top of IP help you understand the impact oF the Internet on civil rights
beyond just using the Internet? I think that's an old/young thing, not a
programmer/lawyer thing.

I don't think shuffling among different highly analyrical/detail-oriented
professions will achieve sea-change. I'd much rather see someone in office
with a legitimately different world view. Maybe a social worker. Somebody
whose job requires empathy, communication, and being able to work with people
in the toughest situations.

------
LarryMade
Programmer? Uh.. no.

I worked for 25 years in house techie/programmer for a child development
agency. I had discovered that the best leaders are the ones who know how to
lead, set the course and work with all the groups. From having a good staff to
rely on as well as be an effective communicator with drive and empathy.
Definitely good to to be a people person.

I think having a programmer oriented person in the cabinet staff would be a
good thing, but not as a leader.

------
tokenizer
While personally I think this is a great idea, it's nothing new.

In a technocratic society; specialists rule. It wouldn't matter whether the
President would be a programmer, engineer, or theorist. Any scientist would do
an equally good job at re-factoring the government's inefficiencies.

But sadly, a FPTP voting process means it's a popularity contest. Fix the
voting system, and open up this possibility. My vote's on this:
<http://www.youtube.com/watch?v=3Y3jE3B8HsE>

~~~
nitrogen
Instant runoff voting has the problem of nonmonotonicity. A simpler ranking
system without rounds of elimination and vote shuffling would be better, IMO.

~~~
zackmorris
Proportional representation might work until we have a runoff system of some
kind. So for example at the state level, if 40% vote liberal, 40% vote
conservative, 10% vote green and 10% vote libertarian, then that percentage
from each party would go into office.

So out of 100 representatives, 10 of them would be green and 10 would be
libertarian, instead of the 0 (or maybe 1 if we're lucky) that we end up with
now. They use this system all over in Europe and even though they have their
own unique set of problems, they're able to stay on top of issues that the US
seems perpetually unable to grasp.

------
bdunbar
"Issue #4: Internet Freedoms"

Adding an amendment for 'the internet' is lame.

The already existing Bill of Rights covers it nicely.

That we're getting laws and executive orders that nullify civil rights isn't a
problem with the internet, but with the guys writing the laws and executive
orders.

~~~
protomyth
I believe we are going to need a second Bill of Rights to overrule all the
Supreme Court cases that have dampened the 4th and 5th amendments plus put in
some explicit privacy protections. I had some hope of them going the other way
given the 2nd amendment cases and Citizens United, but it looks like thats not
a trend.

This administration is worse than the last and that one wasn't any friend of
civil rights either. The thought process that a GPS can be attached to
someones car or data kept in the cloud can be searched without warrants is
going to be a killer for civil rights.

~~~
bdunbar
Layering on an a second layer of rules to the already existing rules doesn't
work so well for computer systems. I doubt it will work as expected in real
life.

At least my experience is the more rules you have, and the more rules
clarifying the rules, the more wiggle room you leave people to exploit
loopholes.

What we need aren't more rules but actual enforcement of the existing rules.
'Congress shall make no' and 'The government may not do anything not
enumerated herein' are pretty clear.

~~~
protomyth
Well, layering (really replacing or adding) is really the only option with
regards to the Constitution. It needs to show a modern intent to some of the
amendments that have suffered in the modern era.

------
sputknick
I remember in philosophy class in college learning that ancient philosophers
thought philosophers should lead society. I think there is a quote from Thomas
Jefferson where he says the best president would be one who was a farmer.

I think the best way for our people to change the government is through the
House of Representatives. I think we could get an engineer elected in SV,
NoVa, Boston, Austin, RTP... maybe a few other places if we really tried. That
would be a good place to start.

------
utopkara
Programmers can't even make proper choices when designing software for people,
how would they do while designing government?

I would say, being a programmer might even make you a worse president:

1) There are no advantages to being a programmer while responding to
significant issue questions regarding abortion, health care, gun control, etc.
Programming profession is oblivious to these human concerns.

2) Software is infinitely flexible and costs little to change. Government,
might look like just a bunch of sentences written in laws and rules; but
changing them are infinitely expensive. Being a programmer puts you in a
mindset that is far from advantageous in this setting.

Programmers (or engineers) could perhaps make good bureaucrats, creating
mechanisms that will realize the specifications given by people.

------
mephi5t0
Programmers most of the time have no people skills. Programmer will never win
a debate. you need to be able to lie or change subjects with a smile and no
sweat. Also if you can talk really well you could explain your idea to people
and they will go for it. On the other hand you may have a 1000X times better
idea but if you can't explain it properly or connect to people they will move
inin 30 sec. I think this whole thing is pure speculations. you could say we
need a NASA astronaut or a Math PhD for a president as well...

------
nhebb
This article isn't something I take seriously, but FWIW Herman Cain has a BS
in Math and an MS in Computer science. It didn't seem to help him in the
primaries.

~~~
rayiner
Jimmy Carter was a nuclear engineer.

~~~
ams6110
... and one of the worst presidents in history.

------
lifeisstillgood
Total rubbish - Presidents are not wanted for their ability to program CPUs;
They are wanted for their ability to adjust the programming of the human mind.

One speech, one vision can re-program millions of minds, one policy
consistently followed can affect billions.

We need leaders who know how humans work. We would like leaders who use that
ethically and for the good of all.

Here's hoping.

------
TamDenholm
I'm not American but i think saying a programmer should be President is just
as bad as saying a lawyer should be President, which pretty much all
politicians are. I'd rather see a world leader and their Government use an
approach like a meritocracy. To me, old white guys that cant turn on a
computer shouldn't be making laws that govern the internet and that's
applicable to any subject. Assign those that know their shit in that field to
administer it.

On another note, I cant remember what country it was, i think either Japan or
China, the majority of the higher tier politicians are engineers, rather than
lawyers, which i think is a good thing, but again, over abundance of one
profession hurts other issues.

------
Tyrannosaurs
There's an assumption here that presidents get to do what they like regardless
of anything else.

Planet Money has been running an infrequent series within the series about
policies economists of all persuasions believe should be the US economic
policy. It's great - all solid, reasonable stuff from an economic perspective
but also (as they make clear) entirely contrary to public opinion.

Even assuming (and it's a massive and somewhat arrogant assumption) that a
programmer knows what's right for America, it completely fails to address how
that programmer (or anyone else) might get such policies enacted, especially
as of the 8 at least 5 are contentious and 2 (congress and immigration) are
potentially politically suicidal.

------
rit
Most of the listed responsibility items would not fall under the purview of
the Executive (the President) but rather the Legislature (Congress - the House
+ Senate).

There seems to be a persistent expectation in the United States that the
President is an all powerful position that can dictate laws, etc. Remember
that he can merely suggest to the legislature what should be done. While
executive orders are available they often have limited scope and can be easily
challenged (or even ignored).

In fact, legislatively the only _real_ power the US President has is negative,
not positive - he can say __no __to a legislation (by vetoing it).

Let's take a look at a few of the proposed items here:

* Issue #1: Teach Programming at an Early Age

The majority of curriculum decisions are deferred to a LOCAL level in the
United States - mandates from individual states & school districts primarily
decide what is being taught. Worse, because Texas is one of the largest text
book markets many manufacturers simply print the textbooks used across the US
to the Texas educational standards.

The only major influence I've seen in recent years on a national education
standard is No Child Left Behind which, by many reports, has simply pushed
schools to focus on test taking. By many reports, "Race To The Top"
(<http://en.wikipedia.org/wiki/Race_to_the_Top>) has made this no better.

If you look at Wikipedia's article on the Department of Education, they do not
really set policy in the US. Instead, 'The primary functions of the Department
of Education are to "establish policy for, administer and coordinate most
federal assistance to education, collect data on US schools, and to enforce
federal educational laws regarding privacy and civil rights."[10] The
Department of Education does not establish schools or colleges'

* Issue #2: Fixing Immigration

Again, this is primarily up to Congress to act on, and there seems to be no
desire to do so. The President really has no influence on this issue directly.

* Issue #3 Abolish Software Patents

This is primarily a legislation issue – we must fix the patent system and that
has to be done in Congress. The one place a President might influence this
would be the appointment of Supreme Court Justices; and let us not forget that
Congress has veto power over these.

* Issue #4: Internet Freedoms

This discusses amending the US Constitution; this process is not done by the
US President. There are, to my knowledge, two ways of amending the US
Constitution.

1\. The US Congress can draft a proposed amendment with a MAJORITY of Congress
approving it (2/3+), and put it to the States to ratify - 3/4+ of them must
ratify it.

2\. A Majority of the States can demand Congress form a Constitutional
Convention to discuss creating a new amendment, then 3/4+ of them must ratify
it.

I don't recall if every state deals with the Ratification of amendments the
same, but I believe some can have the state legislature ratify on the people's
behalf, while others have a direct popular vote.

* Issue #5: Cybersecurity

You might pull this off at the Executive level, by further empowering agencies
like Homeland Security. But real action requires coordination with a Congress
who can draft penalties for companies that don't comply, etc.

* Issue #6: Refactoring Congress and Agencies

Only Congress may refactor Congress; the Executive has little to no power over
this.

* Issue #7: Improve Government UX

Again, we need Congress to refactor this, and probably constitutional
amendment processes. A system like our Congress thrives on "insider" behavior
and has little incentive to change itself.

* Issue #8: Space

Developers may care about space (I do, as well) but the majority of the United
States does not. The President may propose a budget, but ultimately the
Congress decides it.

the NASA budget tends to be less than 1% of the US Federal Budget, and getting
it higher than that is a battle that would require a radical change in the
perceptions of the American Public as well as Congress.
([http://en.wikipedia.org/wiki/Budget_of_NASA#Annual_budget.2C...](http://en.wikipedia.org/wiki/Budget_of_NASA#Annual_budget.2C_1958-2012))

~~~
hooande
The office of the presidency has more power than you think it does. The
president is expected to set the legislative agenda, meaning that he or she
has a lot of influence over what the houses of congress will talk about. ie,
the ability to block the agenda of others using veto power until they agree to
discuss certain issues. The past several presidents have had control of at
least one body of congress, and the majority leader will usually take
direction from the president on what should be on the agenda.

For example, Barack Obama has had an impact on #5 and #7 from your list. He's
most likely going to make a big push on immigration reform in his next term,
though it most likely won't involve H1-B visas (though he has spoken in favor
of the issue, at the urging of his many silicon valley supporters).

Your point is correct that the president is not all powerful. But if he or she
really wants to push for any of the items you mentioned, they have the power
to make it the subject of national discussion. A president who is particularly
skilled at dealing with congress (like LBJ) can go a long way toward turning
bills into law.

~~~
jbooth
Yes and no. Obama repeatedly pushed immigration in his first term and it got
nowhere. If Republicans control the house, I predict it continues to go
nowhere (although he might be able to bash them over the head with it and
other issues enough that they get thrown out in 2014).

But yes, there are some things he can do (and has done) within federal
agencies that directly report to him as regards cybersecurity and UX.

------
RivieraKid
Imagine that you are given a massive code base, full of bad practices, code
duplication, no uniform coding style, lots of it written written in COBOL.
Most parts of it are written by average or incompetent programmers. If you
attempt to refactor or get rid of something, you are met with a stiff
resistence by people who don't want to lose their jobs or just don't like
change. Would a programmer want this?

------
adelevie
To any programmers looking to work in Congress, there's a job opening for a
"Software Technician" in the Office of Legislative Counsel[0]:

    
    
        MEM-098-12
        The House Office of Legislative Counsel is looking for a Software Technician to 
        augment their existing IT staff. This position is a support position that solves daily 
        software issues as they arise and performs preventive maintenance routines.4
        Core Responsibilities:
        To troubleshoot and maintain office drafting software, document management 
        software, and related supporting software. To monitor nightly scheduled jobs for 
        errors and fix as needed. To work with systems administrator in solving problems 
        when underlying operating system or network permissions may be part of the 
        problem. Assist end-users with resolution of system related technical challenges
        Duties:
        Check logs from nightly automated scripts on SQL server, and utility file servers 
        for anomalies; assist in deploying/installing software written by office 
        programmers as well as outside vendors; provide backup assistance to the system 
        administrator on desktop and operating system issues when necessary; 
        create/modify utility scripts in DOS batch and VBscript ; test certain software on 
        new desktops and laptops before they are assigned to users ; perform SQL queries 
        to assist in troubleshooting; performs or commissions network, personal 
        computer, and peripheral maintenance; adds, updates, and deletes users from the 
        document management and authoring systems; eventually provides computer 
        software training to staff; document tasks and fixes in internal wiki used by 
        office;  attend weekly staff meeting to discuss present and potential upcoming 
        issues; Performs other duties as assigned.
        Qualifications:
        At least 4 years technical training or equivalent work experience with computers, 
        software and hardware; at least 2 years experience working with Windows 
        networks (LAN); strong academic credentials; knowledge of current Windows 
        software and applications; ability to work with technical peers and users of 
        computer systems;
        some knowledge of SQL queries, XML markup language, PERL programming 
        language, and VB programming language helpful; strong oral  and  written  
        communication  skills; abilityto work cooperatively and courteously with others; 
        and
        availability to after hours and as needed (a few times a year generally)
        Applicant Instructions:
        Email resume and cover letter with subject line “Software Technician” to 
        legcoun@mail.house.gov.
    

[0] <http://www.house.gov/content/jobs/members_and_committees.php> (free
subscription required)

------
zackmorris
My main concern with having a programmer in office is that technicians don't
always have a deep understanding of concepts like civics, or psychology, or
the contexts that groups use to arrive at the opinions that they have.

An effective public servant is just that: someone who is able to save and
spend political capital in a way that best serves his or her constituency (the
people) instead of choosing merely the most technical sound or inexpensive
solution to a problem.

So in that respect, usually more socially minded people like teachers and
nurses make good politicians. They understand that the electorate is more
capable than it realizes and can rise above problems that on paper appear to
be too complex or expensive to solve (for example by spending its way out of a
depression instead of choosing austerity which shrinks an economy).

------
zeteo
Sounds more like a party platform. First organize a pressure group inside one
of the major parties. (Even Ron Paul eventually decided he's more effective
_inside_ the GOP.) Win a couple of primaries. Get a speaking spot at the
convention. Then you can start dreaming about the presidency.

------
seanmcdirmid
I'm waiting for some of those rich Googlers or Facebookers to get into
politics with a platform based on an incredibly objective data-driven policy
agenda. Bring on the technocrats!

------
codeonfire
There are so many disparaging generalities and stereotyping presented here.
The anti-intellectualism and programmer hate is on full display. An important
question is why is this socially acceptable in 2012. We get it. you are afraid
of smart people in charge.

------
xradionut
(Actually we just need to wait for the next reset, an a direct hit from
asteroid. :) )

The problem isn't the president, the problem is that people are greedy and
non-rational.

------
tokenadult
Let me comment on some of those points after reading through the blog post
kindly submitted here.

"Issue #1: Teach Programming at an Early Age

. . . .

"Ask any programmer how old they were when they first started coding. A survey
done on that very question shows that programmers who were still coding well
into their thirties started learning, on average, at age 13 with a standard
deviation of about 5 years, which is a window from age 8 to 18."

More interesting than asking current programmers at what age they started
programming would be asking them whether they first learned to enjoy
programming and to become good at it because of school lessons, or despite
school lessons. Comments on that issue from working programmers would be very
interesting to me here.

"Therefore, I believe we need to require all Middle School students to take a
course that equips them with a basic understanding of computers and computer
programs."

I took a unit in BASIC programming on a time-sharing terminal as part of my
eighth grade mathematics class during the Baby Boom generation. That didn't
turn me into a programmer. Some of my high school classmates who did turn into
programmers endured our high school's optional course on computers (as I also
did), but they actually learned their programming by doing what they felt like
on the PLATO time-sharing terminal at our public library, by playing around
with their early Hewlett Packard electronic calculators, and as they became
college students by building their own microcomputers before those were a
commercially available product. My oldest son, who is currently a software
engineer at a startup in New York City (yeah, they have their electricity back
now) learned to program in a joint class arranged by our homeschooling support
group, with voluntary attendance, through some voluntary distance-learning
courses, and through a lot of building his own projects on GitHub while taking
computer science classes through dual enrollment at our state flagship
university while of high school age.

"An early start program like this would ensure that everyone gets a taste of
what it's like to code, giving us a greater opportunity to inspire more kids
to become developers."

Mandatory school courses in MANY subjects frequently have little or nothing to
do with what actual practitioners do with the same subject in the free-
enterprise workplace. It would be an interesting issue to study empirically,
but for all the evidence I have seen, mandatory school courses can do as much
to turn pupils off to subjects as they do to spark learner interest.

"Issue #6: Refactoring Congress and Agencies

"If Congress were a software product, customers would have abandoned it long
ago. If I am elected president, I intend to bring a set of fresh eyes to every
little process in congress, the executive branch, and our many government
agencies."

Translated into English, what he is saying is that he is going to violate the
separation of powers among three branches of federal government that is built
into the United States Constitution. And Congress will succeed in blocking him
from doing that--with my full support. I don't want a dictator in the United
States, and I'm more worried about a President who becomes a dictator with no
checks and balances than I am about an inefficient Congress. (Indeed, I
cherish the saying of a wise friend of mine who said, in a conversation about
politics with a mathematics teacher and me, "I'm an engineer. The last thing I
want is EFFICIENT government.") On the other hand, to give this point its due,
if he would like to do more private-sector contracting to deliver services of
the executive branch that the President leads, I'm happy to see him do
competitive contracting to the full extent allowed by law, and to use the
bully pulpit of the presidency to persuade Congress to pass more laws that
would allow more flexibility in management of executive branch agencies.

"Issue #8: Space

"Developers care about space. Maybe it has something to do with an
appreciation for inspiring innovation in the fields of engineering,"

but more likely it has more to do with most developers reading more science
fiction novels than they read books about history and current events. I'm a
child of the Space Age, and I liked nothing better in my youth than watching
TV news reports about space missions and reading continually books (fiction
and nonfiction) about all aspects of space exploration. But the cruel expense
of boosting materials out of earth's gravity well even into near-earth orbit
has convinced me, once I grew up and learned economics, that manned space
exploration (particularly) is a huge waste of money, and even unmanned space
exploration (which I support in general, for instance by putting photographs
of Mars on my computer as my desktop wallpaper) needs to be very carefully
managed not to become a money pit. I agree with Neil deGrasse Tyson that there
is a rapturous sense of wonder derived from exploring space that expands our
imaginations, and that basic science research in general is very important,
but it is easy to spend too much on the space program, which was certainly
done by the space shuttle program and arguably by the Apollo program. There
are a lot of exciting and stimulating basic science problems to solve right
here on earth.

As Winston Churchill said, "Many forms of Government have been tried and will
be tried in this world of sin and woe. No one pretends that democracy is
perfect or all-wise. Indeed, it has been said that democracy is the worst form
of government except all those other forms that have been tried from time to
time."

------
IgorPartola
I have been thinking about a similar idea for a while now. Would love to get
some feedback. Basically, one can view the government (as a concept, not the
specific people) and the set of laws, from the Constitution down, as a complex
software system. To justify this analogy, I think of the fact that the laws
define the behavior of the society (the system), and interact with each other
in ways both expected and unexpected. There are scalability issues, e.g.: laws
that were meant to be applied to only certain circumstances bleed over to
others impeding progress (software patents), and the people of the government
are supposed to act as a sort of CPU that both executes the laws/code and
enforces integrity constraints when a fault happens (typically done by the
judicial branch in the US).

Now that we've established that... what a poor way to write software. First of
all, making laws in the US is an additive process. As a developer, you
approach a system that is large, intertwined and sometimes contains large
streaks of spaghetti and you are asked to make a small tweak. You can refactor
the system to accommodate the new paradigm, or you can simply hack on the
feature on the peripheral. On top of that, you are not the permanent
maintainer of the system; you are a contractor how is only working on it
temporarily. Lastly, you won't be the one using the feature (maintaining the
law or affected by the law).

Next, everything is a law in the US. I will use a made-up example here to not
stir up controversy with actual examples: the legislative branch may pass a
law that says "the Federal Highway Administration" shall oversee the
construction of I-999, a new highway through states XX and YY". That's not a
law, that's the FHA's job. The law should delegate, and not worry about what
the FHA is doing. It should of course include the integrity checks: if the FHA
does a poor job, the people responsible will be held accountable. Less laws
leads to less complex system and less unintended consequences.

There is also lots of legacy code, that nobody seems to want to clean up.
First, there are the ridiculous laws like "In Missouri, It is Illegal To Drive
With An Uncaged Bear (Caged Bears Are OK)". Legacy code weighs you down and
makes things more complex. There are also laws such as the "stand your ground"
law in Florida where you can get more of a sentence for discharging a firearm
into the air (warning shot) than shooting someone dead.

The solution seems to me to be in getting some system architects into the
White House, Congress and Senate. The system architects, developers and ops
people in charge should think long-term. Yes, we are in a recession now, and
yes, a large number of these individuals have to start worrying about
campaigning in less than two years, but while they may be in and out, we are
stuck with the laws they pass and enforce for pretty much an indefinite amount
of time. In fact, encouraging reduction of the lawbase should be a part of the
system. Refactoring should be encouraged, so long as it is done properly; I
know that's a vague term, but currently, so much of the system is off-limits/a
third rail, that nothing seems to get done about major issues.

Another solution would be to add expiration dates to laws, and the more
specific the law, the sooner it expires. That way, pain in the ass laws that
keep coming up should be done away with.

What does everyone think of this analogy?

~~~
IgorPartola
What's with the downvotes? I don't think this os off topic and I don't see how
this wpuld offend anyone.

------
mememememememe
The problem with making government into "Google" style is upward mobility. One
hand we want to cut down government size, make it simpler, but on high upward
mobility = expansion. You can increase salary but the person will remain as
secretary for the next 10 years? It's just boring.

