[OT] Extra time spent
Adam D. Ruppe via Digitalmars-d
digitalmars-d at puremagic.com
Fri May 30 08:25:59 PDT 2014
On Friday, 30 May 2014 at 15:09:00 UTC, Chris wrote:
> Plus, if there's a bug, you're stuck. I like to re-invent the
> wheel too, because existing wheels might not be fit for your
> purpose.
Aye. But I don't like the term "reinvent the wheel" because
writing new code isn't really an invention most the time; I often
don't create new theoretical concepts, it is just a new instance.
To take the wheel analogy further, inventing it would mean things
like figuring out that it needs to be round, figuring out
concepts like spokes and tires and inflation etc.
That's not what I'd do if you asked me to get you a wheel. The
options there are to buy one off-the-shelf or to go ahead and
build one (quite possibly using some or many off-the-shelf
components - a few existing library functions here and there - or
maybe making my own but using existing molds - e.g. looking up
the algorithm on wikipedia but not downloading an existing
library).
I already know that round wheels rock and you need to grease the
hub and that , say, 27 inches is a pretty good size and 36 spokes
is a nice round number. I don't have to do the research that went
into figuring all that out.
"Re-inventing the wheel" makes it sound a lot harder than it is.
In reality, what we're doing when writing our own libraries is
more like "assembling a new wheel from your existing knowledge".
You don't want to ride on a wheel assembled by an idiot, but if
an experienced mechanic gave me a wheel she or he build, I'd use
it and I'd like it. (indeed experienced mechanics tend to take
very good care of their bikes!)
More information about the Digitalmars-d
mailing list