negative connotation of "object orientation"
Appended: from a Physics teaching list I frequent. Note the negative connotations associated with "object orientation" (= asocial = lack of social affect). I take up this ethnographic thread in my blogs and this discussion list from time to time, as I think it's apropos to many subtopics (Diversity in particular). Here's my take on it from awhile back: http://worldgame.blogspot.com/2009/02/regardingobjectifying.html Kirby 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. === Well, it is at least reminiscent of Sheila Tobias. On a possibly related note, Simon BaronCohen studied personalities of scientists and engineers across many subfields. Among his results was (sorry to bring bad news) that the closer one comes to physics, mathematics, or similar engineering disciplines, the more closely the median practitioner resembles high functioning autism (which, of course, affects males over females by a ratio of 4.2 to 1). That in turns brings with it all manner of asocial phenomena  object orientation, lack of social affect and the like.  Show quoted text   Dr. Paul J. Camp Physics Department Spelman College Atlanta, GA 30314 4042705864 "The beauty of the cosmos derives not only from unity in variety but also from variety in unity"  Umberto Eco The Name of the Rose in response to: Inside Higher Ed Why Female Engineering Students Are Discouraged October 26, 2011  3:00am Women perform as well as men in engineering courses, but are less likely to stay in the field because of a confidence gap, according to research published in the new issue of http://www.asanet.org/press/engineering_and_women.cfmAmerican Sociological Review. Women are less likely to feel "professional role confidence," the study found, which has to do both with their view of their own talent and also of their sense that they are in the correct field. "Often, competence in engineering is associated in people's minds with men and masculinity more than it is with women and femininity. So, there are these microbiases that happen, and when they add up, they result in women being less confident in their expertise and their career fit," said the lead author of the study, Erin Cech, a postdoctoral fellow at Stanford University's Clayman Institute for Gender Research. http://www.insidehighered.com/quicktakes/2011/10/26/whyfemaleengineerings...http://www.insidehighered.com/quicktakes/2011/10/26/whyfemaleengineerings...
On Wed, Oct 26, 2011 at 3:36 PM, kirby urner
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 comparisonhttp://en.wikipedia.org/wiki/Procedural_programming#Comparison_with_function... useful. So I started my computational class off purely functionally this year, and I really liked the results. Some kids really got it, and it shows. Others, well ... not so much. Although, it seemed to have a positive effect on all of them as to how they organize ideas. Functional thinking really is a great discipline. Simultaneously, being able to quickly set up a loop to study something is sometimes just the right tool. And then, if you can take that loop and switch it into a list comprehension, you're heading back towards functional thinking. Now that I've opened things up to pure Pythonic expression, it's interesting to see how some kids totally get both styles of thinking but others definitely gravitate towards one or the other. Being able to express things in different paradigms as you can in Python I think is a big plus. Different kids really do latch on to computational thinking in different ways. It struck me the other day how if you open up any typical algebra text, one of the very early chapters will have a section on the 'properties' of 'equality'. Well, how is it that 'equality' has 'properties'? Objects have properties. It struck me that if we think it's important in math education to make kids learn and apply the names of the 'properties of equality', then our math curriculum is already object oriented! Using Sage (Python with super powers) we can construct equation objects and demonstrate the 'properties of equality': sage: linear_eq(a,b,c,d,x) = (a*x+b == c*x+d) sage: prob1 = linear_eq(2,3,5,8) sage: prob1 2*x + 3 == 5*x + 8 sage: _  3 2*x == 5*x + 5 sage: _  5*x 3*x == 5 sage: _ / 3 x == (5/3) sage: prob2 = linear_eq() sage: prob2 a*x + b == c*x + d sage: _b a*x == c*x  b + d sage: _c*x a*x  c*x == b + d sage: _.lhs().factor() == _.rhs() (a  c)*x == b + d sage: _/(ac) x == (b  d)/(a  c) Of course, you could also use Sage to just solve these outright: sage: prob1.solve(x) [x == (5/3)] sage: sage: prob2.solve(x) [x == (b  d)/(a  c)] but the previous let's us 'show our work'.  Michel  ================================== "What I cannot create, I do not understand."  Richard Feynman ================================== "Computer science is the new mathematics."  Dr. Christos Papadimitriou ==================================
On Wed, Oct 26, 2011 at 8:25 PM, michel paul
On Wed, Oct 26, 2011 at 3:36 PM, kirby urner
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 comparisonhttp://en.wikipedia.org/wiki/Procedural_programming#Comparison_with_function... 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 paradigmhttp://en.wikipedia.org/wiki/Programming_paradigm, derived from structured programminghttp://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 programminghttp://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_note0
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 mathteach, 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 precollege 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 halflife 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 antiengineer 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 behindourbacks gossip? Kirby
participants (3)

kirby urner

Kirby Urner

michel paul