[Edu-sig] negative connotation of "object orientation"

Kirby Urner kurner at oreillyschool.com
Sun Oct 30 04:25:37 CET 2011


On Wed, Oct 26, 2011 at 8:25 PM, michel paul <mpaul213 at gmail.com> wrote:

> On Wed, Oct 26, 2011 at 3:36 PM, kirby urner <kirby.urner at gmail.com>wrote:
>
>>
>> PS:  on a related topic, there's also a negative connotation
>> associated with "imperative programming".  The word "imperative" gets
>> translated to mean "bullying".  The functional programmers exploit
>> that connotation, and imply that functional programming is kinder to
>> children.
>>
>
> OK, this is very interesting, especially in light of the Math 2.0 thread.
> So 'imperative' and 'procedural' are pretty much the same thing, right?
> But 'procedural' doesn't tend to imply 'bullying'.  It can simply mean
> 'orderly', spelling out a sequence of steps.  I just found this
> procedural/functional comparison<http://en.wikipedia.org/wiki/Procedural_programming#Comparison_with_functional_programming>
>  useful.
>

Thanks for that reference.  Here's the opening paragraph:

*Procedural programming* can sometimes be used as a synonym for imperative
> programming <http://en.wikipedia.org/wiki/Imperative_programming>(specifying the steps the program must take to reach the desired state),
> but can also refer (as in this article) to a programming paradigm<http://en.wikipedia.org/wiki/Programming_paradigm>,
> derived from structured programming<http://en.wikipedia.org/wiki/Structured_programming>,
> based upon the concept of the *procedure call*. Procedures, also known as
> routines, subroutines <http://en.wikipedia.org/wiki/Subroutine>, methods,
> or functions (not to be confused with mathematical functions, but similar
> to those used in functional programming<http://en.wikipedia.org/wiki/Functional_programming>)
> simply contain a series of computational steps to be carried out. Any given
> procedure might be called at any point during a program's execution,
> including by other procedures or itself.<http://en.wikipedia.org/wiki/Procedural_programming#cite_note-0>
>
What intrigues me is the prospect not *confusing* these functions with "the
mathematical functions" but being somewhat precise about the relationship,
as they're not on wholly different planets, either, or shouldn't be, unless
we're reading *The Little Prince* or something (everyone gets their own
planet in that book -- which has a snake, a constrictor, but it's not a
python).

I hosted a long thread at the Math Forum recently, on math-teach, where I
trucked out the "Dolciani" meaning of function, what we learn in "schoolish
math", especially since the New Math era, when much was done to formalize
the teaching of functions in pre-college courses.

http://mathforum.org/kb/thread.jspa?threadID=2303870&tstart=60  (quite
length, a silly argument about which of the two meanings of function is
"more general")

Predictably, there's a skeptical backlash and the thought of using Python
functions to help unlock the secrets of their mathematical counterparts is
generally dismissed as trying to get computer science treated as
mathematics.

I regard that broken record more as brokenness in the English language than
a real debate.  The categories into which "knowledge and skills" have been
subdivided are too arbitrary to matter much, their half-life will be short
(flash in the pan, obsolete as we speak).

Fortunately, I'm teaching Python to adults and getting to field test my
more activist mathematics concepts, so I am personally not that frustrated.

The other thing is I work with the Diversity people and am alert to these
anti-engineer stereotypes.

The "object oriented" moniker attracts flak from more than one angle then:

   - we have some functional programmers who think OOP is symptomatic of
   everything wrong with programmers and programming, and

   - we have some physicists who think "object oriented" means lacking in
   personal depth, warmth = a domineering pain in the ass, or a shy person
   with no social skills (many subspecies)

OOPers are basically somewhere between Lex Luthor in Smallville
(calculating) and Spongebob Squarepants (a dork).

How can we ever be cool, with that kind of PR dogging us around, feeding
the behind-our-backs gossip?
Kirby
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/edu-sig/attachments/20111029/c3c53412/attachment.html>


More information about the Edu-sig mailing list