[Insight-users] VXL : Toms library : ACM Copyright : non-commercial license
Luis Ibanez
luis.ibanez at kitware.com
Sat Jan 30 17:35:26 EST 2010
Hi Steve,
On Sat, Jan 30, 2010 at 4:36 PM, Steve M. Robbins <steve at sumost.ca> wrote:
> First of all, thanks to you and all the ITK folks for taking the
> licensing issue seriously. From a selfish point of view: it makes my
> life easier as the Debian packager.
>
----------------------------------------------------------------------
We have to thanks a lot the Debian packagers,
you are the ones who keep us on our toes, and
force us to pay the due attention to licensing issues.
----------------------------------------------------------------------
>
> However, I'm curious about this remark:
>
>> The fact that we are still carrying around
>> FORTRAN code from the 80's is an obvious
>> symptom of technological decadence.
>
> Without checking, I would speculate that it may be that the problem
> was well enough understood in the 80's that it isn't worth rewriting
> the code each decade.
>
> What is the "obvious technological decadence" you perceive?
>
------------------------------------------------------------------
I wish I could say that I came up with this, but the truth
is that I'm just quoting & copying from Isaac Asimov's
remarks in The Foundation Trilogy.
Two symptoms of technological decadence are:
1) When the technicians of today no longer know
how is that devices of years past work.
2) When we no longer know how to build those
devices or not even know how to repair them.
and... we still use those devices,
and rely on them.
---
What is wrong with that code, is not that it was
made in the 80's. After all, Euclidean Geometry
is a lot older and it is doing quite good and well.
The problem with that code is that:
1) Nobody is maintaining it.
a) There is no repository (no CVS, SVN, git...)
b) There are no Tests
c) There are no Nightly Dashboards
d) No bug tracker
e) No mailing list to report problems
2) Nobody today understands that code.
Let's be honest, here,
I do not understand that code.
(and I don't know anybody who
understands it either)
3) We have a collective trust in that code
that is close to Religious Zealotry.
The fallacious reasoning goes like this:
"Oh, well, this is code that has been
around for decades, so I guess it is
all good, optimized and bug free".
Come on people !!!
In 2010, we all know that there
is NO such thing as "bug-free" code.
Much less when we are talking about code
that *do not even* have tests.
There is no repository, so we don't know
the development history of that code.
Was it written by two people ? three ?
was one of them a brilliant developer and
the two others were grad students that were
just trying to publish a paper in ACM ?
Did one of the dumb ones retouch the code
before submitting it for publication to ACM ?
a) How do we know that all those functions work ?
b) How do we know that some intern at ACM didn't
mess up the variables when he was transcribing
it from a manuscript to a typewriter ?
because, yeah, keep in mind that this code was
transcribed with typewriters !!!
and yet,
we use that code for programs that are used
today in surgery rooms, power plants and in
weapons systems.
As a collective we have come to believe the myth
of some sort of "superior thinking" on the part of the
people who wrote this code using punch cards.
It is unacceptable that in 2010, having millions
of software developers in the world, we come to
believe that NOBODY can write code for solving
linear equations. Much less when the argument
is based on the notion that:
"The ancients were smarter and they
already solved that problem for us".
That's the sort of lazy reasoning that allowed
Aristotelian writings to obstruct the progress of
science for two thousand years.
In short:
It is Technological Decadence.
Luis
More information about the Insight-users
mailing list