It's not that I'm going to do procedural first and objects later. The vast majority of these students will never take another programming class. There is also a significant level of math phobia in this course, so anything I can do to make it less complicated is a win. Indeed, they spent the first couple of weeks with LEGO robots...
I was under the impression that Python was trying to be "multiparadigm", so you could program in a procedural, OO, or functional style. This doesn't seem to bear out for any but the simplest programs, but I'm hoping I can pretend it's procedural for CS0. Peter Drake Assistant Professor of Computer Science Lewis & Clark College http://www.lclark.edu/~drake/ On Feb 6, 2007, at 4:58 PM, kirby urner wrote: > On 2/6/07, Peter Drake <[EMAIL PROTECTED]> wrote: I'm planning to > keep things at a very low level throughout the > course. These students aren't ever going to be writing programs more > than ten or twenty lines long, so all of the OO machinery is > unnecessarily confusing. (I am, of course, not trying to start any > kind of paradigm war here; I'm just explaining where I'm coming from.) > > I confess to being overtly suspicious of any programming course > using Python that doesn't dive in to OO. Seems a waste of a good > opportunity to enlighten students as to the state of the art, even if > they're not planning to become programmers. Indeed, some of the > simplest programs one might want to write in Python involve > subclassing something from the standard library and overwriting > a few methods. > > But this isn't to heap criticism on your CS0 in particular. I've seen > any number of CS departments doing this ontogeny recapitulates > phylogeny thing, slogging through procedural code for an entire > semester, before unveiling OO in a second year. I explicitly inveigh > against that practice in my aforementioned screencast "classes > and subclasses". But then, I have a different demographic. My > students are learning mathematics, and need operator overloading > from the get go. How else to implement Vectors in a satisfying > manner, other than by implementing __add__ and/or __mul__? > > Kirby > _______________________________________________ Edu-sig mailing list [email protected] http://mail.python.org/mailman/listinfo/edu-sig
