Python is readable

Nathan Rice nathan.alexander.rice at gmail.com
Fri Mar 30 06:38:26 CEST 2012


>>> He did no such thing. I challenge you to find me one place where Joel
>>> has *ever* claimed that "the very notion of abstraction" is meaningless
>>> or without use.
> [snip quote]
>> To me, this directly indicates he views higher order abstractions
>> skeptically,
>
> Yes he does, and so we all should, but that's not the claim you made. You
> stated that he "fired the broadsides at the very notion of abstraction".
> He did no such thing. He fired a broadside at (1) software hype based on
> (2) hyper-abstractions which either don't solve any problems that people
> care about, or don't solve them any better than more concrete solutions.

Mathematics is all about abstraction.  There are theories and
structures in mathematics that have probably gone over a hundred years
before being applied.  As an analogy, just because a spear isn't
useful while farming doesn't mean it won't save your life when you
venture into the woods and come upon a bear.

>> and assumes because he does not see meaning in them, they
>> don't hold any meaning.
>
> You are making assumptions about his mindset that not only aren't
> justified by his comments, but are *contradicted* by his comments. He
> repeatedly describes the people coming up with these hyper-abstractions
> as "great thinkers", "clever thinkers", etc. who are seeing patterns in
> what people do. He's not saying that they're dummies. He's saying that
> they're seeing patterns that don't mean anything, not that the patterns
> aren't there.

He is basically saying they are too clever for their own good, as a
result of being fixated upon purely intellectual constructs.  If math
was a failed discipline I might be willing to entertain that notion,
but quite the opposite, it is certainly the most successful area of
study.

>
>> Despite Joel's beliefs, new advances in science
>> are in many ways the result of advances in mathematics brought on by
>> very deep abstraction.  Just as an example, Von Neumann's treatment of
>> quantum mechanics with linear operators in Hilbert spaces utilizes very
>> abstract mathematics, and without it we wouldn't have modern
>> electronics.
>
> I doubt that very much. The first patent for the transistor was made in
> 1925, a year before von Neumann even *started* working on quantum
> mechanics.

The electronic properties of silicon (among other compounds) is an
obvious example of where quantum theory provides for us.  We might
have basic circuits, but we wouldn't have semiconductors.

> In general, theory *follows* practice, not the other way around: parts of
> quantum mechanics theory followed discoveries made using the transistor:

You do need data points to identify an explanatory mathematical structure.

> The Romans had perfectly functioning concrete without any abstract
> understanding of chemistry. If we didn't have QM, we'd still have
> advanced electronics. Perhaps not *exactly* the electronics we have now,
> but we'd have something. We just wouldn't understand *why* it works, and
> so be less capable of *predicting* useful approaches and more dependent
> on trial-and-error. Medicine and pharmaceuticals continue to be
> discovered even when we can't predict the properties of molecules.

The stochastic method, while useful, is many orders of magnitude less
efficient than analytically closed solutions.  Not having access to
closed form solutions would have put us back hundreds of years at
least.

> My aunt makes the best damn lasagna you've ever tasted without any
> overarching abstract theory of human taste. And if you think that quantum
> mechanics is more difficult than understanding human perceptions of
> taste, you are badly mistaken.

Taste is subjective, and your aunt probably started from a good recipe
and tweaked it for local palates.  That recipe could easily be over a
hundred years old.  An overarching mathematical theory of human
taste/mouth perception, if such a silly thing were to exist, would be
able to generate new recipes that were perfect for a given person's
tastes very quickly.

Additionally, just to troll this point some more (fun times!), I would
argue that there is an implicit theory of human taste (chefs refer to
it indirectly as gastronomy) that is very poorly organized and lacks
any sort of scientific rigor.  Nonetheless, enough empirical
observations about pairings of flavors, aromas and textures have been
made to guide the creation of new recipes.  Gastronomy doesn't need to
be organized or rigorous because fundamentally it isn't very
important.

> In any case, Spolsky is not making a general attack on abstract science.
> Your hyperbole is completely unjustified.

The mathematics of the 20th century, (from the early 30s onward) tend
to get VERY abstract, in just the way Joel decries.  Category theory,
model theory, modern algebraic geometry, topos theory, algebraic graph
theory, abstract algebras and topological complexes are all very
difficult to understand because they seem so incredibly abstract, yet
most of them already have important applications.  I'm 100% positive
if you just presented Joel with seminal papers in some of those areas,
he would apply the "astronaut" rubber stamp, because the material is
challenging, and he wouldn't get it (I love math, and I've had to read
some papers 10+ times before they click).

All I'm suggesting here is that if someone creates something abstract
that is elegant and contains a kernel of fundamental truth on some
level but doesn't immediately suggest applications, file it in the
"neat and worth revisiting at some point in the distant future" bin
and move on, don't denigrate them as asphyxiating space cases who need
to stop following their curiosity, come down to earth, and produce
some shiny bauble for immediate human consumption.



More information about the Python-list mailing list