On 2/7/07, Andre Roberge <[EMAIL PROTECTED]> wrote:
Programming is a tool used in studying computer science - just like
math is a tool useful in the study of Physics. OOP is a modern tool
used in studying computer science; just like vector-based calculus is
a modern tool used in studying Physics.
OOP is a tool for analyzing a problem in terms of objects and their
relationships. It's not just a way of writing code, it's a style of
thinking.
It's also accessible to newbies.
To bleep over it, in a course about using computers to solve problems,
seems wasteful of a golden opportunity, since Python makes it easy
("working pseudocode" "fits your brain" and all that).
Choosing to use a simple tool (procedural programming, supplemented by
relevant usage of "dot notation" with little if any mention of
object/classes) so that more applications of computer science,
including graphics, can be covered is most likely more appropriate.
I sincerely doubt it. You can try to make the case, but nothing I've seen
here so far has been persuasive.
Graphics are paradigm objects. It's very lazy to revert to procedural
techniques in the face of a language that offers so much more.
Stick to FORTRAN maybe?
You wrote: "we're in a dark age right now". Let me agree and take
this statement to the extreme. Forget about OOP. We need to start
teaching kids about qubits, and the bra and ket notation. This is
where the future lies, with quantum computing and quantum
cryptography. Furthermore, the notation is *a lot* simpler than the
"rib" syntax which you are so fond of, as long as you only deal with
finite dimensional spaces. Yet, I would not argue that this would
be appropriate for a CS0 course.
Your analogies of OO with advanced mathematics, thereby suggesting
that OO should be seen as beyond the reach of CS0 is precisely the
attitude I disagree with.
It's woven into our everyday patterns of thought, OO is, including ideas
of inheritance, even polymorphism.
What a great opportunity to connect ordinary patterns of thought with
a formal, machine-executabe language. What a waste to ignore this
opportunity.
Students taking a CS0 course have to be able to write simple programs,
in various areas (including graphics). There's nothing wrong in
teaching procedurally based programming at that level. What is
important is to make them *think* ... not to dazzle them with the
latest tool.
André
I feel sorry for students who get suckered into taking such CS0s and
wish they wouldn't get their first impressions of Python from such
courses.
Bad PR for Python Nation the way I see it.
Fortunately, not all CS0s are so crummy.
Kirby
_______________________________________________
Edu-sig mailing list
[email protected]
http://mail.python.org/mailman/listinfo/edu-sig