[plt-scheme] Re: Programming for non-programmers

From: Brent Fulgham (bfulg at pacbell.net)
Date: Thu Oct 14 15:21:02 EDT 2004

--- Noel Welsh wrote:
> > Perhaps the US can out-educate inexpensive
> > overseas labor, enough to catch up 
> > cost-effectiveness-wise.  (An HtDP in
> > every high school!)
> Preach on, brother. (And generalise the US to
> "Western nations".)  Here are two puzzles I'd like
> to solve:
>   1. How can I make myself 20x more productive than
>      an Indian SE, so our salaries are comparable
>   2. Why aren't top SE's paid £300ph (circa $600ph),
>      which is what a top lawyer would easily charge?

>      Software is incredibly valuable, or Microsoft 
>      wouldn't be what it is, so something must be 
>      wrong if we can't charge what lawyers do.

I can't speak to #1, although when all factors are
properly accounted you probably could get away with
being 2 to 5 times as productive and be a better

As for item #2, there are at least three reasons I can
think of for the disparity.

1)  Lawyers often go into politics, and so they have
very strong representation in government. 
there are very few instances where things are allowed
to pass through government that would harm the
industry.  Laws are usually written with an
of how it will effect lawyers, and there is strong and
immediate feedback into the system to avoid bad law.
There is no similar support for the technical world.

2)  Lawyers generally deliver their product "on time".
 When a judge has set a trial date, the lawyers
appear at the appointed time.  This gives the illusion
of competence and professionalism that our industry's
constant schedule slips and cost overruns severely

3)  We have allowed the term "Programming" to be
applied to all manner of trivial tasks.  In some ways,
the simple macro programming that most people are
exposed gives them the impression that programming
is easy.  Similarly, the mid-90's appelation of
"Web Developer" to people who simply modified HTML
files for new content gave many the impression that
such work was at the same level as "real" development.

And I thought of one more:

4)  Software companies are allowed to get away with
truly horrible support and warranty of their products.
Until companies are held accountable for the software
that people rely on for their livelihood, comfort,
and even their lives, they will continue to feel
comfortable farming such work out to the lowest
and to hiring unskilled people to perform what some
have termed "the hardest branch of mathematics."

Right now there is no disincentive to do so.  "If Joe
is a slow/buggy developer, so what?  We met our
delivery date, and we can fix bugs as they are found
by our customers."  If a medical device manufacturer,
or a bridge builder had this attitude, they would
rapidly be run out of business (or placed in jail).


Posted on the users mailing list.