[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Not "Satanism;" realism.



Brett Glass wrote:

> At 06:09 PM 12/31/98 -0600, Steve Cohen wrote:
>
> >That's their problem.  I view programming as craftsmanship.  It's not
> >significantly different than any other form of skilled labor.  I've been a
> >skilled tradesman and the feeling you get from a job well done is identical in
> >either arena.  The only difference is that in one you literally get your hands
> >dirty and in the other, you don't.
>
> Not so: there's a world of difference. When you build a house, you build
> one physical object. When you create a design for a house, or invent a
> way to build a house better, you are doing something fundamentally different
> and more productive and deserve to reap the benefits of having created
> that new intellectual capital. Good programming is not just labor; it's
> architecture and invention. And it deserves to be rewarded as such.

Yeah, but don't place too big a gulf between the craftsman and the "designer".
Did you ever see carpenters bitching about some fancy curlicue that some architect

dreamed up?  Or a plumber complaining about having no room to work with in the
architect's "cutting-edge" design?  The architect who is too far removed from
realities of actual construction to know these things is not much of an
architect.  I'm sure you've seen these types in programming - fresh out of
college, they figure on maybe a year of "mere coding" before they advance to being

an "architect."  They are more interested in the money they'll be making than on
the craft itself.  I tend to steer clear of 'em.

As for your other example of "inventing a way of building a house better" where's
that going to come from - a permanent cadre of "inventors" or by practicising
tradespople who get an idea when the light goes on while they're working?  As
Thomas Edison said, "Genius is 98% perspiriation and 2% inspiration."  There are
all kinds of "inventions" and some are not necessarily marketable - they're more
like "tricks of the trade."  A special way of holding the workpiece in a milling
machine.  A coding convention that you're really happy with.  How about
programming books like Scott Meyers' "Effective C++".  Did he sell himself short
by releasing the "secrets" of good C++ programming for the mere price of a book?
Am I giving away the family jewels when I show some young programmer a better way
of doing something?

>
> >It's not the end of the world.  The
> >world is
> >not going to step aside just to let programmers maintain their entrepreneurial
> >fantasies.
>
> Nor will it go out of its way to reward you if you undervalue your work.
> It's perfectly happy to accept it at a lower price if you are foolish enough
> to give it away for less.
>
> If you're willing to sell yourself short, you're the loser.

But there are rewards, non-monetary to be sure, to putting code in the public
domain.  Maybe it's the respect of your peers which will translate into monetary
reward down the road.  Maybe the idea is inherently non-marketable.  Maybe the
person doesn't want the hassle of marketing the idea yet doesn't want to see
someone else getting rich off it either.  Maybe it's the ONLY way they can bring
their idea to some form of fruition without getting killed by Microsoft.  In any
case it's their determination to make.  Who's forcing you to do the same?  If you
have a better one you want to sell, I don't see what's stopping you.

You've said many times that gcc is an inadequate compiler.  It's certainly
generic.  It certainly doesn't have bells and whistles.  It's not hard to see that

a better mousetrap can be built.  I don't see how the mere existence of gcc
makes it impossible for you to do so.  Perhaps the lack of market share for some
of the platforms you're interested in has more to do with the problem than the
existence of gcc.  Or perhaps gcc is good enough for what its users are using it
for.  Aren't you putting yourself in the position of telling its satisfied users
that they shouldn't have the option of using this free compiler but must instead
pay for the better compiler made by you or someone else which may in fact be
better than they need?