From gef@ceid.upatras.gr Tue Jul 2 09:53:06 2002 From: gef@ceid.upatras.gr (gef@ceid.upatras.gr) Date: Tue, 2 Jul 2002 11:53:06 +0300 Subject: [Edu-sig] Who knows? Maybe someone here is interested in this... Message-ID: <20020702115306.A5730@ainos.kefalonia.com> Dear All, congratulations! Not only did I graduate, it has also been a nice demonstration of Python to a small but special set of people, in the Amstel Institute. You may find the presentation (and research report) here: http://amstel.science.uva.nl/~fotisg/python/ -> Thesis presentation If anyone wishes to contact me, two things: a) use the email address gef@ceid.upatras.gr; the other is unavailable by now b) I reply very slowly and in a sporadic way... good things need no hurry cheers, Fotis From urnerk@qwest.net Thu Jul 25 08:01:57 2002 From: urnerk@qwest.net (Kirby Urner) Date: Thu, 25 Jul 2002 00:01:57 -0700 Subject: [Edu-sig] Update from Urner In-Reply-To: <20020621160700.25268.qmail@linuxmail.org> Message-ID: <5.1.1.6.0.20020724233745.0236ca30@pop.ptld.qwest.net> As a previously very active poster here on edu-sig, I thought I'd drop in to say I'm still focused on math-through-programming (as a great way to teach), but am off sojourning in J these days. Earlier, Tim Peters pointed me to ISETL as in some ways a precursor to Python, and that was cool (I enjoyed my experiences with that language). He also pointed me to 'Concrete Mathematics' as a paradigm text at the college level, which was a good resource (good to work back from in K-12). I was a philosophy major in the old days and don't necessarily know what's what in computer science. I find Kenneth Iverson has these same interests (math through programming), has already done a companion to 'Concrete Mathematics', and is working on another re 'The Book of Numbers' (Conway and Guy). Excellent! Ken helped me with a close read of my first J essay: http://www.inetarena.com/~pdx4d/ocn/Jlang.html (he found a few typos, a misused grammatical term (conjunctive instead of conjunction), and suggested I include viewmat, though not in quite the way I did (to look at totient(n) powers modulo n)). APL was the first language I really got into, in the 1970s, but I'd lost track of Ken (APL's designer), and hadn't really tuned in J until some J guy hit my Python-focused website ( http://www.inetarena.com/~pdx4d/ocn/cp4e.html ) and suggested I check it out. Why is this relevant? Well, I'm always going to be a Python fan, so that'll keep bubbling up in my postings to math teacher groups (another one of those just tonight: http://www.mathforum.com/epigone/math-teach/taytrismoo (see mine of 25 July 2002 re passing functions to functions, with Python illustrating)). The fact that I'm mixing it up with J (long, steep learning curve) is probably somewhat indicative of where I might be finding synergies and curriculum ideas. Fortune tellers will tell. Perhaps some other Pythoneers tracking this list have some overlap with J as well? Anyone care to opine re J? (I see D. Ajoy on Jforum -- he's been helpful with Python, used to send me Logo programs in Spanish too). Cliff Nelson is over there too, but I'm not planning to argue with him anymore (we've mostly argued to date, maybe cuz he likes Ada-the-language whereas I like Ada-the-girl [1]). Question: why do both J and Python define 0**0 (or 0^0 in J) to be 1, when mathematicians (and Wolfram's Mathematica) call this undefined? Speaking of Wolfram, I did the simplest cellular automata from NKS in J. Output looks like this: http://www.inetarena.com/~pdx4d/ocn/graphics/Jnks1.png (this is after doing similar stuff in Python -- posted about it to this list in late May of this year). Kirby [1] http://www.grunch.net/synergetics/adaessay.html From dyoo@hkn.eecs.berkeley.edu Thu Jul 25 18:41:40 2002 From: dyoo@hkn.eecs.berkeley.edu (Danny Yoo) Date: Thu, 25 Jul 2002 10:41:40 -0700 (PDT) Subject: [Edu-sig] Update from Urner [why 0**0 == 1?] In-Reply-To: <5.1.1.6.0.20020724233745.0236ca30@pop.ptld.qwest.net> Message-ID: > Question: why do both J and Python define 0**0 (or 0^0 in J) to be 1, > when mathematicians (and Wolfram's Mathematica) call this undefined? Concrete Mathematics actually covers a reason for defining 0**0 as 1 in the chapter on binomial coefficients --- I think it's somewhere in Chapter 5. Although the functions 0**x and x**0 have different limiting values as x approaches zero, we should define 0**0 == 1 so that the binomial theorem: (x+y)**r = sum_k (n choose r) (x**r) (y **(n-r)) works for all r >= 0, even if x == -y. If you have The Art of Computer Programming Volume 1 handy, see section 1.2.6 on the explanation of the binomial theorem, and you'll see it. Hope this helps! From senator@sgi.net Thu Jul 25 20:42:00 2002 From: senator@sgi.net (Bill Bradley) Date: Thu, 25 Jul 2002 15:42:00 -0400 Subject: [Edu-sig] Update from Urner [why 0**0 == 1?] References: Message-ID: <3D405488.FE9B6244@sgi.net> Sounds backwards to me. If you're writing a binomial function you should trap the special case, not break the mathematical function so you don't have to. Bill From dennis.hamilton@acm.org Thu Jul 25 21:04:29 2002 From: dennis.hamilton@acm.org (Dennis E. Hamilton) Date: Thu, 25 Jul 2002 13:04:29 -0700 Subject: [Edu-sig] Update from Urner [why 0**0 == 1?] In-Reply-To: Message-ID: -----Original Message----- From: edu-sig-admin@python.org [mailto:edu-sig-admin@python.org]On Behalf Of Danny Yoo Sent: Thursday, July 25, 2002 10:42 To: Kirby Urner Cc: edu-sig@python.org Subject: Re: [Edu-sig] Update from Urner [why 0**0 == 1?] > Question: why do both J and Python define 0**0 (or 0^0 in J) to be 1, > when mathematicians (and Wolfram's Mathematica) call this undefined? Concrete Mathematics actually covers a reason for defining 0**0 as 1 in the chapter on binomial coefficients --- I think it's somewhere in Chapter 5. Although the functions 0**x and x**0 have different limiting values as x approaches zero, we should define 0**0 == 1 so that the binomial theorem: (x+y)**r = sum_k (n choose r) (x**r) (y **(n-r)) works for all r >= 0, even if x == -y. If you have The Art of Computer Programming Volume 1 handy, see section 1.2.6 on the explanation of the binomial theorem, and you'll see it. Hope this helps! _______________________________________________ Edu-sig mailing list Edu-sig@python.org http://mail.python.org/mailman/listinfo/edu-sig From dennis.hamilton@acm.org Thu Jul 25 21:04:30 2002 From: dennis.hamilton@acm.org (Dennis E. Hamilton) Date: Thu, 25 Jul 2002 13:04:30 -0700 Subject: [Edu-sig] Update from Urner [why 0**0 == 1?] In-Reply-To: Message-ID: The problem with that is that, if you add it to arithmetic and reason with it, you can derive 0/0 = 1 and that is a big no-no. When I published my fast algorithm for integer powers [Dr. Dobbs J. 11, 2 (Feb. 1986), 36-42ff], I addressed this by actually using 0/0 for 0**0 and letting the underlying arithmetic system deal with it. If you have a "standard" arithmetic it fails, if you are using one of the non-standard arithmetic settings (assuming IEEE floats), you will get whatever NaN that is appropriate to the system of arithmetic. Because all divisions by 0 are undefined in the standard model for reals, it is important to keep it that way. There is no harm with having an algorithm that produces something rather than fail, but if that is projected back onto the mathematics of it and used in deductions, great mischief can occur. And the use of a determined result for 0**0 in further calculations based on deductions derived in standard arithmetic can be incorrect and inconsistent, just like the usual sleight-of-hand in "proving" 0 = 1. (Or weird arguments around the transfinite and the like, which I have been encountering lately.) In 1985, I corresponded with Don Knuth about this, after noticing that Newton was pretty casual about all of the 0 cases in his laying out of the binomial theorem. Don was satisfied with what he has to say about it in Art if Computer Programming at formula 1.2.6(14) (which I claim is not a valid inference from 1.2.6(13), because 1.2.6(13) is not an accurate statement of the theorem.). On review, today, I am even more satisfied that there is no mathematical justification for concluding that the answer should be 1. It is at best a convention for computer solutions and, though presumably harmless -- it can even be said to make sense, it will lead to erroneous results when used in subsequent calculations where the use of a non-standard operation is masked. I did find the justification on p.162 in Concrete Mathematics, in the discussion of 5.12 preceding formula (5.12). First, reasoning from limits doesn't seem to apply, though I recall stumbling on that too. I must say I find the justification used at (5.14) to be rather ridiculous, almost like voting on which theorems we want to be true, since it asks us to accept the damage of x/x = x**(1-1) = x**0 (no conditions on x) for the sake of an unsupportable harmony at a boundary case in the expression of a theorem. The boundary condition on the binomial theorem (for (x+y)**n) seems to be that x*y*(x+y) != 0 when n =< 0. I may be over-cautious here, but it seems sufficient without digging deeper. I don't believe that it is necessary to repair the Pascal's triangle C(n,0) case, acknowledging that determination of C(0,0) [Computational Mathematics (5.1)] involves the justifiable convention for 0! = 1 [ACP 1.2.6(2) and ACP 1.2.6(5) justified by 1.2.6(5) and 1.2.3(20)]. The Pascal recurrence works independently, and the definition of 0! is not in any danger that I can find. It's definition does not challenge any of the axioms of arithmetic. My algorithmic compromise (computing 0**0 by "computing" 0/0) is not that satisfying to me, though I found it rather elegant in the expression of the algorithm. It leaves it to the underlying implementation of arithmetic to deal with error conditions and does not attempt to second-guess what is and is not an error. For myself, when I want more certainty than that, I simply avoid cases that are not defined in the standard model. Where it is important to do derivations that have implicit requirements that some quantity not be zero, I endeavor to keep that condition explicit in stating the derived expressions. -- Dennis -----Original Message----- From: edu-sig-admin@python.org [mailto:edu-sig-admin@python.org]On Behalf Of Danny Yoo Sent: Thursday, July 25, 2002 10:42 To: Kirby Urner Cc: edu-sig@python.org Subject: Re: [Edu-sig] Update from Urner [why 0**0 == 1?] > Question: why do both J and Python define 0**0 (or 0^0 in J) to be 1, > when mathematicians (and Wolfram's Mathematica) call this undefined? Concrete Mathematics actually covers a reason for defining 0**0 as 1 in the chapter on binomial coefficients --- I think it's somewhere in Chapter 5. Although the functions 0**x and x**0 have different limiting values as x approaches zero, we should define 0**0 == 1 so that the binomial theorem: (x+y)**r = sum_k (n choose r) (x**r) (y **(n-r)) works for all r >= 0, even if x == -y. If you have The Art of Computer Programming Volume 1 handy, see section 1.2.6 on the explanation of the binomial theorem, and you'll see it. Hope this helps! _______________________________________________ Edu-sig mailing list Edu-sig@python.org http://mail.python.org/mailman/listinfo/edu-sig From urnerk@qwest.net Thu Jul 25 22:24:50 2002 From: urnerk@qwest.net (Kirby Urner) Date: Thu, 25 Jul 2002 14:24:50 -0700 Subject: [Edu-sig] Update from Urner [why 0**0 == 1?] In-Reply-To: References: Message-ID: <5.1.1.6.0.20020725140414.026d59a0@pop.ptld.qwest.net> Thanks for the discussion. An explanation of why 0^0 is undefined in standard arithmetic is that anything-except-0 to the 0th power is 1, while 0 to the anything-except-0th power is 0. So when you try to deal with the exception (0^0), you've got two rules which converge to different answers at the limit i.e. lim x^0 = 1 versus lim 0^x = 0 x->0 x->0 To take an excerpt from math-teach, you don't want 0^0 to be defined because: ====== Subject: Re: "0^0" From: Soroban Date: 14 Jul 02 22:10:35 -0400 (EDT) I use the following approach. Remember the problem with "zero power"? What does 5^0 mean? And why does it equal 1? I remind them that: x^6/x^2 = x^4. (The Division Rule: "With like bases, subtract exponents." So when first confronted with: x^4/x^4, we may invoke the Division Rule and get x^(4-4) = x^0, which seems to be meaningless. But wait! We know that x^4/x^4 = 1, either by "cancelling" or from "anything divided by itself is 1". [Okay - there's ONE exception to that!] Hence, the answer must be 1. And x^0 (as strange as it looks) must also equal 1. Now, where or why does 0^0 show up at all? It must have come from a division problem. For example: 0^4/0^4 And what is the answer? Using the Division Rule, the answer is 0^0. Using arithmetic, 0^4 = 0, so the fraction becomes 0/0. Why is this called "indeterminate"? Why isn't it 1? How do we CHECK a division problem? For example: does 12/3 = 4? How do we check? We multiply the quotient (4) by the divisor (3) and we get the dividend (12). Correct! Very well, I claim that 0/0 = 7. Care to check it? Someone else claims that 0/0 = 1. It too checks out. The same for 0/0 = -137, etc. It turns out that 0/0 equals ANY NUMBER. There are TOO MANY answers (the value is indeterminate, can't be determiined). That renders the "number" 0^0 useless to us. ====== [Full text in Jul 15 posting under: http://www.mathforum.com/epigone/math-teach/brandghaichox ] Sounds to me like there are good arguments on both sides, but I personally am tilting towards 0^0 should produce a ValueError (or whatever exception), as it does in Mathematica (but not in MathCad, which says it's 1). In the real world, we have to conclude that there's no universal agreement on how best to evaluate 0^0. Interesting. Kirby From lha2@columbia.edu Fri Jul 26 00:30:02 2002 From: lha2@columbia.edu (Lloyd Hugh Allen) Date: Thu, 25 Jul 2002 19:30:02 -0400 Subject: [Edu-sig] 0 to the 0 References: <20020725160004.8202.68277.Mailman@mail.python.org> Message-ID: <3D4089FA.F6F0B9B@mail.verizon.net> Urner wrote, > Question: why do both J and Python define 0**0 (or 0^0 in J) > to be 1, when mathematicians (and Wolfram's Mathematica) call > this undefined? Speaking of Wolfram, I did the simplest > cellular automata from NKS in J. Output looks like this: > http://www.inetarena.com/~pdx4d/ocn/graphics/Jnks1.png (this > is after doing similar stuff in Python -- posted about it to > this list in late May of this year). For what it's worth, often it is convenient to define 0**0 to be 1--if I recall correctly, Maple's 0**0 has a value based on context, where x**0|x=0 is one and 0**x|x=0 is zero. Straight-out 0**0 was undefined. All of this is based on a demo copy on a hard drive that no longer exists, but I seem to remember coming across that and thinking it was cool. From MLModel@wesleyan.edu Fri Jul 26 00:59:05 2002 From: MLModel@wesleyan.edu (Mitchell L Model) Date: Thu, 25 Jul 2002 19:59:05 -0400 Subject: [Edu-sig] Re: Edu-sig digest, Vol 1 #531 - 1 msg In-Reply-To: <20020725160004.8202.68277.Mailman@mail.python.org> References: <20020725160004.8202.68277.Mailman@mail.python.org> Message-ID: --============_-1184480944==_ma============ Content-Type: text/plain; charset="us-ascii" ; format="flowed" Just joined list and haven't taken the time to read the archives yet, so maybe this is a silly post, but I thought it worth putting out there that I will be teaching an Introduction to Programming for non-computer science majors at Wesleyan University this fall, having just taken a position there as a visiting professor. I've convinced the other Computer Science faculty involved to abandon their attempts to make this course work with C++ and Java and to use Python instead. As part of the preparation for my introducing Python at Wesleyan I put together a web page with arguments for using Python (and URLs for more), information about where to find Python tutorials, installations, additional modules, tools, books, etc., and some recommendations on how to get started for different audiences, including people new to programming, experienced programmers, and people in fields such as Biology and Chemistry who need to do some practical programming without become serious programmers. You can find this web page currently at http://homepage.mac.com/MLMConsulting/PythonStart.html. I am likely to drop this site soon and move its contents to my personal site, http://homepage.mac.com/MitchellModel/, so if you don't find it at the first URL, look for it somewhere under the second. I think I've done a pretty thorough job of exploring existing resources. Some I've omitted simply because they are too old to be of much use to people new to Python. Others because I thought the ones I listed served my purposes better. I would be delighted to hear recommendations for other books, papers, URLs, software, IDEs (especially), etc. that would be good to add to the page. I plan to use the textbook Learn to Program Using Python (http://www.aw.com/catalog/academic/product/1,4096,0201709384,00.html), with the Python Essential Reference (http://newriders.com/books/product.asp?product_id={2DF0A321-D759-44A9-8DC2-1900CC090956) as an optional resource. I'll also point students to the online book How to Think Like a Computer Scientist : Learning with Python (http://www.ibiblio.org/obp/thinkCS.php). Since I'm new to the list and plan on keeping the list informed of my experiences introducing Python to the Wesleyan introductory programming course, let me point you http://c2.com/cgi/wiki?MitchellModel as one place you can find out more about me. In addition to teaching computer science courses at Wesleyan I will be working with the science faculty as part of a new interdisciplinary program in Integrative Genomics to develop and teach informatics modules for their genomics-related science courses. (You can read more about the program at http://www.wesleyan.edu/argus/archives/aa_archive_dec072001/dateyear/n2.html and http://www.wesleyan.edu/hughes/ (though the latter is two years old). I am about to install a Wiki (cf. http://homepage.mac.com/MLMConsulting/WhatsWiki.html for introductory information and links about Wiki if your not familiar with the concept or technology) at Wesleyan to facilitate interdisciplinary resource pooling, discussion, and planning. I'm tempted to use the Python-based Moin Moin implementation, but have decided on the Perl-based (sorry) TWiki because it appears to be the most mature and featureful Wiki that is freely available and can be installed and run without a lot of hands-on effort, while still being quite customizable and able to support enterprise-wide activity. I look forward to sharing my experience in these efforts and hearing opinions from others heading, or thinking of heading, in the same direction. Having taught many introductory and computer science courses in many languages to many different kinds of audiences, I find myself thinking that all undergraduate computer courses, whether for majors or not, and whatever the level, should be done in Python. (Of course I've said that about Smalltalk for many years, but Python is less of a leap for the mainstream world:-). -- Mitchell L Model Visiting Associate Professor Computer Science --============_-1184480944==_ma============ Content-Type: text/html; charset="us-ascii" Re: Edu-sig digest, Vol 1 #531 - 1 msg
Just joined list and haven't taken the time to read the archives yet, so maybe this is a silly post, but I thought it worth putting out there that I will be teaching an Introduction to Programming for non-computer science majors at Wesleyan University this fall, having just taken a position there as a visiting professor.  I've convinced the other Computer Science faculty involved to abandon their attempts to make this course work with C++ and Java and to use Python instead.

As part of the preparation for my introducing Python at Wesleyan I put together a web page with arguments for using Python (and URLs for more), information about where to find Python tutorials, installations, additional modules, tools, books, etc., and some recommendations on how to get started for different audiences, including people new to programming, experienced programmers, and people in fields such as Biology and Chemistry who need to do some practical programming without become serious programmers.

You can find this web page currently at http://homepage.mac.com/MLMConsulting/PythonStart.html.  I am likely to drop this site soon and move its contents to my personal site, http://homepage.mac.com/MitchellModel/, so if you don't find it at the first URL, look for it somewhere under the second.

I think I've done a pretty thorough job of exploring existing resources.  Some I've omitted simply because they are too old to be of much use to people new to Python.  Others because I thought the ones I listed served my purposes better.  I would be delighted to hear recommendations for other books, papers, URLs, software, IDEs (especially), etc. that would be good to add to the page.

I plan to use the textbook Learn to Program Using Python (http://www.aw.com/catalog/academic/product/1,4096,0201709384,00.html), with the Python Essential Reference (http://newriders.com/books/product.asp?product_id={2DF0A321-D759-44A9-8DC2-1900CC090956) as an optional resource.  I'll also point students to the online book How to Think Like a Computer Scientist : Learning with Python (http://www.ibiblio.org/obp/thinkCS.php).

Since I'm new to the list and plan on keeping the list informed of my experiences introducing Python to the Wesleyan introductory programming course, let me point you http://c2.com/cgi/wiki?MitchellModel as one place you can find out more about me.  In addition to teaching computer science courses at Wesleyan I will be working with the science faculty as part of a new interdisciplinary program in Integrative Genomics to develop and teach informatics modules for their genomics-related science courses.  (You can read more about the program at http://www.wesleyan.edu/argus/archives/aa_archive_dec072001/dateyear/n2.html and http://www.wesleyan.edu/hughes/ (though the latter is two years old).

I am about to install a Wiki (cf. http://homepage.mac.com/MLMConsulting/WhatsWiki.html for introductory information and links about Wiki if your not familiar with the concept or technology) at Wesleyan to facilitate interdisciplinary resource pooling, discussion, and planning.  I'm tempted to use the Python-based Moin Moin implementation, but have decided on the Perl-based (sorry) TWiki because it appears to be the most mature and featureful Wiki that is freely available and can be installed and run without a lot of hands-on effort, while still being quite customizable and able to support enterprise-wide activity.

I look forward to sharing my experience in these efforts and hearing opinions from others heading, or thinking of heading, in the same direction.  Having taught many introductory and computer science courses in many languages to many different kinds of audiences, I find myself thinking that all undergraduate computer courses, whether for majors or not, and whatever the level, should be done in Python.  (Of course I've said that about Smalltalk for many years, but Python is less of a leap for the mainstream world:-).
-- 

        Mitchell L Model
        Visiting Associate Professor
    Computer Science
--============_-1184480944==_ma============-- From urnerk@qwest.net Fri Jul 26 01:26:35 2002 From: urnerk@qwest.net (Kirby Urner) Date: Thu, 25 Jul 2002 17:26:35 -0700 Subject: [Edu-sig] Re: Python at Wesleyan In-Reply-To: References: <20020725160004.8202.68277.Mailman@mail.python.org> <20020725160004.8202.68277.Mailman@mail.python.org> Message-ID: <5.1.1.6.0.20020725171413.02a2f850@pop.ptld.qwest.net> At 07:59 PM 7/25/2002 -0400, Mitchell L Model wrote: >Just joined list and haven't taken the time to read the archives yet, so >maybe >this is a silly post, but I thought it worth putting out there that I will be >teaching an Introduction to Programming for non-computer science majors at >Wesleyan University this fall, having just taken a position there as a >visiting >professor. I've convinced the other Computer Science faculty involved to >abandon their I applaud your enthusiasm for Python, which is a great language for beginners, as well as more advanced programmers. I think a central question for educators is "Python plus what else?" Because, even if Python is eminently teachable, we always want to provide experiences and familiarity with multiple languages. A course which produced students who mostly turned up their nose re other languages and said "no thanks, just Python for me" will have failed, IMO (especially considering the fact that Python is written in C, Jython in Java). Python should be used as a way to deepen appreciation for concepts and languages across the board. Python is so good partly because it provides familiarity with concepts that'll come up again and again, no matter what tools you're using. Kirby From MLModel@wesleyan.edu Fri Jul 26 02:19:33 2002 From: MLModel@wesleyan.edu (Mitchell L Model) Date: Thu, 25 Jul 2002 21:19:33 -0400 Subject: [Edu-sig] [corrections] Message-ID: First all of , sorry for the subject line of my previous message -- careless mistake. Second, I found a better URL for information about Wesleyan's Integrated Genomic Sciences program: http://igs.wesleyan.edu. -- Mitchell L Model Visiting Associate Professor Computer Science From MLModel@wesleyan.edu Fri Jul 26 02:29:47 2002 From: MLModel@wesleyan.edu (Mitchell L Model) Date: Thu, 25 Jul 2002 21:29:47 -0400 Subject: [Edu-sig] Re: Python at Wesleyan In-Reply-To: <5.1.1.6.0.20020725171413.02a2f850@pop.ptld.qwest.net> References: <20020725160004.8202.68277.Mailman@mail.python.org> <20020725160004.8202.68277.Mailman@mail.python.org> <5.1.1.6.0.20020725171413.02a2f850@pop.ptld.qwest.net> Message-ID: --============_-1184475507==_ma============ Content-Type: text/plain; charset="us-ascii" ; format="flowed" At 5:26 PM -0700 7/25/02, Kirby Urner wrote: >At 07:59 PM 7/25/2002 -0400, Mitchell L Model wrote: >>Just joined list and haven't taken the time to read the archives >>yet, so maybe >>this is a silly post, but I thought it worth putting out there that I will be >>teaching an Introduction to Programming for non-computer science majors at >>Wesleyan University this fall, having just taken a position there >>as a visiting >>professor. I've convinced the other Computer Science faculty involved to >>abandon their > >I applaud your enthusiasm for Python, which is a great language for >beginners, as well as more advanced programmers. > >I think a central question for educators is "Python plus what else?" >Because, even if Python is eminently teachable, we always want to >provide experiences and familiarity with multiple languages. > >A course which produced students who mostly turned up their nose >re other languages and said "no thanks, just Python for me" will >have failed, IMO (especially considering the fact that Python is >written in C, Jython in Java). Python should be used as a way to >deepen appreciation for concepts and languages across the board. > >Python is so good partly because it provides familiarity with >concepts that'll come up again and again, no matter what tools >you're using. Good points. Remember, though, that this is the introductory course for students not planning to major in Computer Science. They don't necessarily need exposure to multiple languages, since the goal is simply to introduce the concepts and techniques of computer programming and develop basic competency in writing computer programs. However, we will next face three questions related to your challenge: What language to use in the introduction to programming for potential majors -- C++? Java? Python? (Scheme was used for several years some years past, something I have a lot of sympathy for but which tends not to work out in practice because the surrounding computer culture is so different than Lisp's.) Next semester I will teach the usual data structures course, to students who will have been taught Java (I think) in the introductory course. Should I do it in Java? do a quick immersion to Python and use that? Use several languages? (The nature of an introductory data structures course has changed tremendously since I started teaching around 1980, primarily because contemporary languages provide in their libraries or easily accessible external modules most of the data structures the implementation of which the course used to spend most of the time discussing. Now we can teach the concepts and use of data structures if we want, and spend less time on the tedious implementation details -- though of course some of those should be at least shown, we no longer have to rub student noses in them.) What do we do about students who take the non-major introduction and to their surprise find themselves wanting to go on in Computer Science? They're not ready for the second semester data structure course, because they missed a lot of the conceptual material that's in the introduction for majors but not in the introduction for non-majors. But it might be silly to have them sit through another introductory programming course, because they will already know the basic techniques. I don't think Wesleyan has the staff to offer yet another low-level course, in order to provide non-majors with an appropriate transition into the major sequence. -- Mitchell L Model Visiting Associate Professor Computer Science --============_-1184475507==_ma============ Content-Type: text/html; charset="us-ascii" Re: Python at Wesleyan
At 5:26 PM -0700 7/25/02, Kirby Urner wrote:
At 07:59 PM 7/25/2002 -0400, Mitchell L Model wrote:
Just joined list and haven't taken the time to read the archives yet, so maybe
this is a silly post, but I thought it worth putting out there that I will be
teaching an Introduction to Programming for non-computer science majors at
Wesleyan University this fall, having just taken a position there as a visiting
professor.  I've convinced the other Computer Science faculty involved to
abandon their

I applaud your enthusiasm for Python, which is a great language for
beginners, as well as more advanced programmers.

I think a central question for educators is "Python plus what else?"
Because, even if Python is eminently teachable, we always want to
provide experiences and familiarity with multiple languages.

A course which produced students who mostly turned up their nose
re other languages and said "no thanks, just Python for me" will
have failed, IMO (especially considering the fact that Python is
written in C, Jython in Java).  Python should be used as a way to
deepen appreciation for concepts and languages across the board.

Python is so good partly because it provides familiarity with
concepts that'll come up again and again, no matter what tools
you're using.

Good points.  Remember, though, that this is the introductory course for students not planning to major in Computer Science.  They don't necessarily need exposure to multiple languages, since the goal is simply to introduce the concepts and techniques of computer programming and develop basic competency in writing computer programs.  However, we will next face three questions related to your challenge:

What language to use in the introduction to programming for potential majors -- C++? Java? Python?  (Scheme was used for several years some years past, something I have a lot of sympathy for but which tends not to work out in practice because the surrounding computer culture is so different than Lisp's.)

Next semester I will teach the usual data structures course, to students who will have been taught Java (I think) in the introductory course.  Should I do it in Java? do a quick immersion to Python and use that?  Use several languages?  (The nature of an introductory data structures course has changed tremendously since I started teaching around 1980, primarily because contemporary languages provide in their libraries or easily accessible external modules most of the data structures the implementation of which the course used to spend most of the time discussing.  Now we can teach the concepts and use of data structures if we want, and spend less time on the tedious implementation details -- though of course some of those should be at least shown, we no longer have to rub student noses in them.)

What do we do about students who take the non-major introduction and to their surprise find themselves wanting to go on in Computer Science?  They're not ready for the second semester data structure course, because they missed a lot of the conceptual material that's in the introduction for majors but not in the introduction for non-majors.  But it might be silly to have them sit through another introductory programming course, because they will already know the basic techniques.  I don't think Wesleyan has the staff to offer yet another low-level course, in order to provide non-majors with an appropriate transition into the major sequence.

-- 

        Mitchell L Model
        Visiting Associate Professor
    Computer Science
--============_-1184475507==_ma============-- From tim.one@comcast.net Fri Jul 26 02:31:48 2002 From: tim.one@comcast.net (Tim Peters) Date: Thu, 25 Jul 2002 21:31:48 -0400 Subject: [Edu-sig] 0 to the 0 In-Reply-To: <3D4089FA.F6F0B9B@mail.verizon.net> Message-ID: Goodness. See the sci.math FAQ (sorry, you'll have to paste this together again): Knuth is in good company with Euler and Kahan on this one . practicality-beats-purity-ly y'rs - tim From Louis.Bertrand@durhamc.on.ca Fri Jul 26 03:19:10 2002 From: Louis.Bertrand@durhamc.on.ca (Louis Bertrand) Date: Thu, 25 Jul 2002 22:19:10 -0400 Subject: [Edu-sig] Re: Python at Wesleyan Message-ID: [replying to the digest -- look for LB: in text] Message: 7 Date: Thu, 25 Jul 2002 19:59:05 -0400 To: edu-sig@python.org From: Mitchell L Model Subject: [Edu-sig] Re: Edu-sig digest, Vol 1 #531 - 1 msg --============_-1184480944==_ma============ Content-Type: text/plain; charset="us-ascii" ; format="flowed" Just joined list and haven't taken the time to read the archives yet, so maybe this is a silly post, but I thought it worth putting out there that I will be teaching an Introduction to Programming for non-computer science majors at Wesleyan University this fall, having just taken a position there as a visiting professor. I've convinced the other Computer Science faculty involved to abandon their attempts to make this course work with C++ and Java and to use Python instead. LB: I applaud your efforts. I teach at Durham College, (http://www.durhamc.on.ca/) LB: and I went through the process of convincing my colleagues that Python was LB: an interesting and viable alternative to the "production" languages like LB: C++, Java and Visual Basic for the Intro to Programming course. There's LB: still a few potshots in the night but otherwise the furore has settled down :) I plan to use the textbook Learn to Program Using Python (http://www.aw.com/catalog/academic/product/1,4096,0201709384,00.html), LB: Please read this book carefully first. I used it last year and the LB: feedback I got is that it doesn't go into detail into some important LB: concepts. Also, there are few examples and no exercises, so you have LB: to supply a lot of the material yourself. Don't get me wrong, I personally LB: found it interesting, but (as the subtitle suggests) it's meant for LB: self-starters and hobbyists who learn by tinkering. I found it unsuitable LB: for a first course with a fixed timeline and the dreaded final exam at LB: the end of the term. with the Python Essential Reference (http://newriders.com/books/product.asp?product_id={2DF0A321-D759-44A9-8 DC2-1900CC090956) as an optional resource. I'll also point students to the online book How to Think Like a Computer Scientist : Learning with Python (http://www.ibiblio.org/obp/thinkCS.php). LB: I'm going to try ThinkCSpy this year, and I endorse Beazley's Reference LB: as an essential resource (my copy is under my pillow at night). LB: LB: Good luck with the course! LB: From djrassoc01@mindspring.com Fri Jul 26 06:49:16 2002 From: djrassoc01@mindspring.com (djr) Date: Fri, 26 Jul 2002 00:49:16 -0500 Subject: [Edu-sig] Re: Edu-sig digest, Vol 1 #531 - 1 msg References: <20020725160004.8202.68277.Mailman@mail.python.org> Message-ID: <3D40E2DC.C18B911E@mindspring.com> Mitchell L Model wrote: > Just joined list ... I would be delighted to hear recommendations for other books, I think that Non-Programmers Tutorial For Python by Josh Cogliati, Copyright(c) 1999-2002 Josh Cogliati at: http://www.honors.montana.edu/~jjc/easytut/easytut/ is a particular clear exposition. I think it is important that enthusiasm on the part of the teacher for a particular language doesn't in the student's head get turned into a belief that there is only one valid choice for a computer language. Students, even those who are not headed toward a programming focus of education, need to be left open to thinking of other languages as possible (and maybe even appropriate) choices depending on the situation. When they are programming their microwave or Tivo or whatever, they should be able to recognize that they are engaged in an activity which is similar to other programming activities that they have seen -- even if it isn't an object-oriented approach, for example. --D. -- Dr. David J. Ritchie, Sr. djrassoc01@mindspring.com http://home.mindspring.com/~djrassoc01/ From rmangaliag@mbox.slu.edu.ph Fri Jul 26 10:25:55 2002 From: rmangaliag@mbox.slu.edu.ph (Ronald Mangaliag) Date: Fri, 26 Jul 2002 17:25:55 +0800 (PHT) Subject: [Edu-sig] (no subject) Message-ID: <1027675555.3d4115a3b27e3@mbox> hi... this is my first post so please take it easy on me.... ;) i'm in the process of gathering info to suggest a change in the syllabus of our programming course here in saint louis university, philippines... i was thinking (for more than a month now) of suggesting a change in the programming language also... we're teaching C to engineering studes... and of course, the "natural tendency" is to change it to python because of the known advantages... my question is -- can you point me (url or anything) or give me a sample syllabus where we can pattern our proposal to... tnx... in advance... ali ------------------------------------------------------------ ronald ali l. mangaliag computer applications department saint louis university 2600 baguio city, philippines ------------------------------------------------------------ ------------------------------------------------ E-mail service provided by SLUNET Saint Louis University ( http://www.slu.edu.ph ) ------------------------------------------------ From urnerk@qwest.net Fri Jul 26 09:17:54 2002 From: urnerk@qwest.net (Kirby Urner) Date: Fri, 26 Jul 2002 01:17:54 -0700 Subject: [Edu-sig] Re: Python at Wesleyan In-Reply-To: References: <5.1.1.6.0.20020725171413.02a2f850@pop.ptld.qwest.net> <20020725160004.8202.68277.Mailman@mail.python.org> <20020725160004.8202.68277.Mailman@mail.python.org> <5.1.1.6.0.20020725171413.02a2f850@pop.ptld.qwest.net> Message-ID: <5.1.1.6.0.20020726004945.029fe680@pop.ptld.qwest.net> >Good points. Remember, though, that this is the introductory course for >students >not planning to major in Computer Science. They don't necessarily need >exposure >to multiple languages, since the goal is simply to introduce the concepts and >techniques of computer programming and develop basic competency in writing >computer programs. However, we will next face three questions related to >your >challenge: My programming 101 course (forget the actual name) featured a smattering of Assembler, FORTRAN, PL/1, SNOBOL and a few others. I liked the overview this gave, along with chatter about machine-level stuff like registers, the program status word, etc. etc. To my mind, "intro" and "overview" go together. This wasn't necessarily a course for computer science majors, although it was taught by the engineering department (I ended up in the philosophy department, though as a freshman I didn't yet know this'd be my fate). So Python is a great language to sketch out ideas, such as class structures with inheritance and polymorphism. But then you can at least show how these ideas get implemented in Java, maybe share that chart showing the (huge) class hierarchy that comprises the power of that language. Jython is a possible bridge here, for experimentation purposes. You can also show operator overriding in Python, then give a simple example of what this looks like in C++. I think an intro course should clarify these broad categories of language, e.g. interpreted versus compiled, strongly, dynamically and weakly typed. And paradigms for coding, i.e. procedural, functional, and object-oriented. Historical perspective should also be provided. I'm a big fan of this time-line by the way: http://perso.wanadoo.fr/levenez/lang/history.html Python can be a scratch pad for doing interactive experiments, but somehow the presentations should weave in plenty of examples from other languages. You mentioned championing SmallTalk for awhile. You should keep that thread alive. >What language to use in the introduction to programming for potential >majors -- C++? Java? Python? (Scheme was used for several years some >years past, something I have a lot of sympathy for but which tends not >to work out in practice because the surrounding computer culture is >so different than Lisp's.) I could see Python used with potential majors, sure. And here your golden opportunity, given the open source nature of Python, is to start bringing in C by examining Python's guts. I toss this out as a possibility -- not as one who has experience using this approach (I'm not a college teacher -- I spend a lot of time coding for cardiologists, often not in any of the languages mentioned so far in this thread). C/C++ still needs to be a focus, starting early I think. You can use familiarity with Python to bridge not only to C/C++, but to Unix/Linux, presuming we might be starting in Windows. This begins a deeper look at operating system concepts, such as forking processes and threads. Linux/Unix is a more transparent environment for studying these things, and Python is right there at your elbow, helping you learn. >Next semester I will teach the usual data structures course, to students >who will have been taught Java (I think) in the introductory course. >Should I do it in Java? do a quick immersion to Python and use that? >Use several languages? I like the "several languages" idea. Definitely including Python. >What do we do about students who take the non-major introduction and to >their surprise find themselves wanting to go on in Computer Science? >They're not ready for the second semester data structure course, because >they missed a lot of the conceptual material that's in the introduction >for majors but not in the introduction for non-majors. But it might be >silly to have them sit through another introductory programming course, >because they will already know the basic techniques. I don't think >Wesleyan has the staff to offer yet another low-level course, in order >to provide non-majors with an appropriate transition into the major sequence. Curious what kinds of stuff gets left out of the non-major intro course, that you've gotta know to tackle data structures in particular. Kirby From urnerk@qwest.net Fri Jul 26 19:30:01 2002 From: urnerk@qwest.net (Kirby Urner) Date: Fri, 26 Jul 2002 11:30:01 -0700 Subject: [Edu-sig] Re: Python in Baguio City In-Reply-To: <1027675555.3d4115a3b27e3@mbox> Message-ID: <5.1.1.6.0.20020726112148.02623550@pop.ptld.qwest.net> Hi ali -- Just wanted to say Mabuhay -- I have fond memories of the Philippines from being a student in Metro-Manila from 1971-1976 (at the International School in Makati). My dad worked on decentralized planning, taught a course at UP. Mom was an activist working on behalf of tribal minorities and earned a history degree at Ateneo de Manila (we weren't missionaries though). We visited Baguio a few times. A man named McGee was a headmaster of some local school back then, but I forget which. Anyway, here are some college level courses that use Python, which you might get some ideas from: http://www.classes.cs.uchicago.edu/classes/archive/2001/spring/CS326/syllabus.html http://sandbox.mc.edu/~gwiggins/syllabi/csc233/csc233-python-syllabus.html http://www.physics.umd.edu/courses/Phys165/williams/ Kirby At 05:25 PM 7/26/2002 +0800, Ronald Mangaliag wrote: >hi... this is my first post so please take it easy on me.... ;) > >i'm in the process of gathering info to suggest a change in the syllabus >of our >programming course here in saint louis university, philippines... > >i was thinking (for more than a month now) of suggesting a change in the >programming language also... we're teaching C to engineering >studes... and of >course, the "natural tendency" is to change it to python because of the known >advantages... > >my question is -- can you point me (url or anything) or give me a sample >syllabus where we can pattern our proposal to... > >tnx... in advance... > >ali > > >------------------------------------------------------------ >ronald ali l. mangaliag >computer applications department >saint louis university >2600 baguio city, philippines >------------------------------------------------------------ From michael.williams@st-annes.oxford.ac.uk Sat Jul 27 00:08:41 2002 From: michael.williams@st-annes.oxford.ac.uk (Michael Williams) Date: Sat, 27 Jul 2002 00:08:41 +0100 Subject: [Edu-sig] Re: Python in Baguio City In-Reply-To: <5.1.1.6.0.20020726112148.02623550@pop.ptld.qwest.net> References: <1027675555.3d4115a3b27e3@mbox> <5.1.1.6.0.20020726112148.02623550@pop.ptld.qwest.net> Message-ID: <20020726230839.GA311@st-annes.oxford.ac.uk> On Fri, Jul 26, 2002 at 11:30:01AM -0700, Kirby Urner wrote: > Anyway, here are some college level courses that use Python, which > you might get some ideas from: > > http://www.classes.cs.uchicago.edu/classes/archive/2001/spring/CS326/syllabus.html > http://sandbox.mc.edu/~gwiggins/syllabi/csc233/csc233-python-syllabus.html > http://www.physics.umd.edu/courses/Phys165/williams/ This is the course (not strictly codified into a syllabus yet -- we're probably doing this the wrong way round) that will be launched in the Physics department of Oxford University next October. It's work in progress, so subject to alteration. -- Michael From rmangaliag@mbox.slu.edu.ph Sat Jul 27 09:36:06 2002 From: rmangaliag@mbox.slu.edu.ph (Ronald Mangaliag) Date: Sat, 27 Jul 2002 16:36:06 +0800 (PHT) Subject: [Edu-sig] Re: Python in Baguio City In-Reply-To: <5.1.1.6.0.20020726112148.02623550@pop.ptld.qwest.net> References: <5.1.1.6.0.20020726112148.02623550@pop.ptld.qwest.net> Message-ID: <1027758966.3d425b76645e3@mbox.slu.edu.ph> thank you very much... hope you can visit the phil again... Quoting Kirby Urner : > > Hi ali -- > > Just wanted to say Mabuhay -- I have fond memories of the Philippines > from being a student in Metro-Manila from 1971-1976 (at the > International > School in Makati). My dad worked on decentralized planning, taught a > course at UP. Mom was an activist working on behalf of tribal > minorities > and earned a history degree at Ateneo de Manila (we weren't missionaries > though). > > We visited Baguio a few times. A man named McGee was a headmaster of > some local school back then, but I forget which. > > Anyway, here are some college level courses that use Python, which > you might get some ideas from: > > http://www.classes.cs.uchicago.edu/classes/archive/2001/spring/CS326/syllabus.ht ml > http://sandbox.mc.edu/~gwiggins/syllabi/csc233/csc233-python-syllabus.html > http://www.physics.umd.edu/courses/Phys165/williams/ > > Kirby > > > At 05:25 PM 7/26/2002 +0800, Ronald Mangaliag wrote: > >hi... this is my first post so please take it easy on me.... ;) > > > >i'm in the process of gathering info to suggest a change in the > syllabus > >of our > >programming course here in saint louis university, philippines... > > > >i was thinking (for more than a month now) of suggesting a change in > the > >programming language also... we're teaching C to engineering > >studes... and of > >course, the "natural tendency" is to change it to python because of the > known > >advantages... > > > >my question is -- can you point me (url or anything) or give me a > sample > >syllabus where we can pattern our proposal to... > > > >tnx... in advance... > > > >ali > > > > > >------------------------------------------------------------ > >ronald ali l. mangaliag > >computer applications department > >saint louis university > >2600 baguio city, philippines > >------------------------------------------------------------ > > > > > _______________________________________________ > Edu-sig mailing list > Edu-sig@python.org > http://mail.python.org/mailman/listinfo/edu-sig > ------------------------------------------------------------ ronald ali l. mangaliag computer applications department saint louis university 2600 baguio city, philippines ------------------------------------------------------------ ------------------------------------------------ E-mail service provided by SLUNET Saint Louis University ( http://www.slu.edu.ph ) ------------------------------------------------ From rmangaliag@mbox.slu.edu.ph Sat Jul 27 09:37:07 2002 From: rmangaliag@mbox.slu.edu.ph (Ronald Mangaliag) Date: Sat, 27 Jul 2002 16:37:07 +0800 (PHT) Subject: [Edu-sig] Re: Python in Baguio City In-Reply-To: <20020726230839.GA311@st-annes.oxford.ac.uk> References: <1027675555.3d4115a3b27e3@mbox> <5.1.1.6.0.20020726112148.02623550@pop.ptld.qwest.net> <20020726230839.GA311@st-annes.oxford.ac.uk> Message-ID: <1027759027.3d425bb3e0e16@mbox.slu.edu.ph> thank you very much for your help.... Quoting Michael Williams : > On Fri, Jul 26, 2002 at 11:30:01AM -0700, Kirby Urner wrote: > > Anyway, here are some college level courses that use Python, which > > you might get some ideas from: > > > > > http://www.classes.cs.uchicago.edu/classes/archive/2001/spring/CS326/syllabus.ht ml > > > http://sandbox.mc.edu/~gwiggins/syllabi/csc233/csc233-python-syllabus.html > > http://www.physics.umd.edu/courses/Phys165/williams/ > > This is the course (not strictly codified into a syllabus yet -- we're > probably doing this the wrong way round) that will be launched in the > Physics department of Oxford University next October. It's work in > progress, so subject to alteration. > > > > -- > Michael > > _______________________________________________ > Edu-sig mailing list > Edu-sig@python.org > http://mail.python.org/mailman/listinfo/edu-sig > ------------------------------------------------------------ ronald ali l. mangaliag computer applications department saint louis university 2600 baguio city, philippines ------------------------------------------------------------ ------------------------------------------------ E-mail service provided by SLUNET Saint Louis University ( http://www.slu.edu.ph ) ------------------------------------------------ From ajs@ix.netcom.com Sun Jul 28 16:13:58 2002 From: ajs@ix.netcom.com (Arthur) Date: Sun, 28 Jul 2002 11:13:58 -0400 Subject: [Edu-sig] Update from Urner Message-ID: <000101c23682$ea55dfe0$9865fea9@arthur> This is a multi-part message in MIME format. ------=_NextPart_000_000B_01C23627.DE9B9D80 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Kirby writes -=20 >Perhaps some other Pythoneers tracking this list have some overlap with = J as well? =20 >Anyone care to opine re J?=20 My focus being in a sense a subset of yours - math through = visualization/graphics programming - J has come into play. Working with a copy of "Fractals Visualization = and J" by=20 Clifford A. Reiter http://ww2.lafayette.edu/~reiterc/j/index.html. But have not really had the time, impetus to get into the J learning = curve. As much as I agree with your multilanguage approach, I personally feel the need to get to a = certain level of depth=20 in a particular language before I can get too much out of comparative = language approach. And I still don't feel as competent in Python as I would like to be. So I'm still hacking away on PyGeo in my spare time trying to get deeper = into performance related issues - e.g. having a tight event loop that only = updates/calculates what is necessary as necessary. Mostly stuff that I am sure would be necessary to focus on in its own = way in any language I was working with/in. (Also got off the ground on what I was trying to do = with complex number visualization using Visual Complex Analysis by Tristan Needham as guide/ = inspiration). But I had brought up J on the list earlier and do see it as a natural = extension to your executable symbolic math interest and look forward to following your = adventures with it. Art ------=_NextPart_000_000B_01C23627.DE9B9D80 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
Kirby writes -
 
>Perhaps some other Pythoneers tracking this list have some = overlap with=20 J as well? 
>Anyone care to opine re J?
 
My focus being in a sense a subset of = yours - math=20 through visualization/graphics programming -
J has come into = play.  Working=20 with a copy of "Fractals Visualization and J" by
Clifford A. Reiter http://ww2.lafaye= tte.edu/~reiterc/j/index.html.
 
But have not really had the time, = impetus to=20 get into the J learning curve.  As much as I agree = with
your multilanguage approach, I = personally feel the=20 need to get to a certain level of depth
in a particular language before I can get too much out of comparative language=20 approach.
 
And I still don't feel as competent in = Python as I=20 would like to be.
 
So I'm still hacking away on PyGeo in = my spare time=20 trying to get deeper into performance
related issues - e.g. having a tight = event loop=20 that only updates/calculates what is necessary as=20 necessary.
Mostly stuff that I am sure would be = necessary to=20 focus on in its own way in any language I was
working with/in.  (Also got off = the ground on=20 what I was trying to do with complex number visualization
using Visual Complex = Analysis=20  by Tristan Needham as guide/ inspiration).
 
But I had brought up J on the list = earlier and do=20 see it as a natural extension to your
executable symbolic math interest and = look forward=20 to following your adventures with it.
 
Art
 
 
------=_NextPart_000_000B_01C23627.DE9B9D80-- From humbert@hagen.de Tue Jul 30 23:45:01 2002 From: humbert@hagen.de (Ludger Humbert) Date: Wed, 31 Jul 2002 00:45:01 +0200 Subject: [Edu-sig] A maybe change in CS at US Message-ID: <3D4716ED.6070408@hagen.de> Dear collegues, as I heard last week at the SEC III Conference Open IFIP-GI-Conference on Social, Ethical and Cognitive Issues of Informatics and ICT (Information and Communication Technologies) July 22-26, 2002 University of Dortmund, Germany e-learning media education change management didactics of informatics URL: http://seciii.cs.uni-dortmund.de/ in the talk of Harriet G. Taylor Abstract at: http://seciii.cs.uni-dortmund.de/web/it-professions.htm#taylor THURSDAY, 25th July 2002 there seems to be a possible change in curricula in the US. As she told one is able to send contributions to some commitee. I think the most interesting point is, that no longer a concret programming language is mentioned and you may tell, there are more than one paradigms, one can teach. IMHO Python is a language, which can more or less deal with all three paradigms, which should be taught ;-) URLs can be found inside the abstract Ludger Humbert From dennis.hamilton@acm.org Wed Jul 31 01:27:40 2002 From: dennis.hamilton@acm.org (Dennis E. Hamilton) Date: Tue, 30 Jul 2002 17:27:40 -0700 Subject: [Edu-sig] A maybe change in CS at US In-Reply-To: <3D4716ED.6070408@hagen.de> Message-ID: This is a nice link and the survey is interesting. Thank you. There is much to think about. I notice that the request is to have comments by July 26 and I suspect that later comments might be welcome. I want to point out one important factor. The point of using at least two languages and illustrating three different paradigms that way is an important one. They are not interested in using one language for covering a broader landscape. It has to do with preparing students for shifting their abstractions and not being too immersed in a single syntactical-semantical model. One could object to this. I think it is a healthy thing, especially if they can manage it well and not inject confusion into the experience of secondary school students. I would say a key is that other paradigms not be just talked about (they propose two hands-on projects) but be experienced. Also, in the material on computer organization and principles there is treatment of the ways programming systems map their entities onto the underlying computer architecture and processing model. It will be interesting to see how the issues of representation by computer are approached and any tools for illustrating that are employed. The biggest challenge, it seems to me, is that teachers be equipped to deliver material at the level that is called for here. Certainly a worthy topic for those interested in CP4E to explore ... -- orcmid ------------------ Dennis E. Hamilton http://orcmid.com/ mailto:dennis.hamilton@acm.org tel. +1-206-932-6970 cell +1-206-779-9430 The Miser Project: http://miser-theory.info -----Original Message----- From: edu-sig-admin@python.org [mailto:edu-sig-admin@python.org]On Behalf Of Ludger Humbert Sent: Tuesday, July 30, 2002 15:45 To: edu-sig@python.org Subject: [Edu-sig] A maybe change in CS at US Dear collegues, as I heard last week at the SEC III Conference Open IFIP-GI-Conference on Social, Ethical and Cognitive Issues of Informatics and ICT (Information and Communication Technologies) July 22-26, 2002 University of Dortmund, Germany e-learning media education change management didactics of informatics URL: http://seciii.cs.uni-dortmund.de/ in the talk of Harriet G. Taylor Abstract at: http://seciii.cs.uni-dortmund.de/web/it-professions.htm#taylor THURSDAY, 25th July 2002 there seems to be a possible change in curricula in the US. As she told one is able to send contributions to some commitee. I think the most interesting point is, that no longer a concret programming language is mentioned and you may tell, there are more than one paradigms, one can teach. IMHO Python is a language, which can more or less deal with all three paradigms, which should be taught ;-) URLs can be found inside the abstract Ludger Humbert _______________________________________________ Edu-sig mailing list Edu-sig@python.org http://mail.python.org/mailman/listinfo/edu-sig From djrassoc01@mindspring.com Wed Jul 31 03:59:44 2002 From: djrassoc01@mindspring.com (djr) Date: Tue, 30 Jul 2002 21:59:44 -0500 Subject: [Edu-sig] A maybe change in CS at US References: <3D4716ED.6070408@hagen.de> Message-ID: <3D47529E.B2DDD3EB@mindspring.com> > > in the talk of Harriet G. Taylor > Abstract at: > > http://seciii.cs.uni-dortmund.de/web/it-professions.htm#taylor Well, if candidates can do all that is described in those standards (or even 75% of it), they will find themselves quickly recruited by the tech branches of major companies thereby giving school districts a real run for their money. --D. -- Dr. David J. Ritchie, Sr. djrassoc01@mindspring.com http://home.mindspring.com/~djrassoc01/ From glingl@aon.at Wed Jul 31 22:53:03 2002 From: glingl@aon.at (Gregor Lingl) Date: Wed, 31 Jul 2002 23:53:03 +0200 Subject: [Edu-sig] Use? Abuse? Amusement? Amendments? Message-ID: <3D485C3F.3060304@aon.at> This is a multi-part message in MIME format. --------------070104060008060808070206 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Hi! If you, incidentally, are going to have a coffee-break, please, run the code of the attachment. Your opinion? Gregor --------------070104060008060808070206 Content-Type: text/plain; name="trees.py" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="trees.py" from __future__ import generators from turtle import * def ttree(t,l): if l > 12.0: t.forward(l) yield 1 t.left(25) for x in ttree(t, l * 0.65 ): yield x t.right(60) yield 1 for x in ttree(t, l * 0.52 ): yield x t.left(35) t.backward(l) yield 1 turtles = (leonardo, raphael, donatello) = (Pen(), Pen(), Pen()) for turtle in turtles: turtle.left(90) turtle.up() leonardo.goto(-100,-100) leonardo.color("red") raphael.goto( 0, -100) raphael.color("green") donatello.goto(100,-100) donatello.color("orange") for turtle in turtles: turtle.down() turtle.width(3) ltree = ttree(leonardo,79.0) rtree = ttree(raphael, 100.0) dtree = ttree(donatello, 66.0) done = 0 while done < 3: done = 0 for tree in (ltree, rtree, dtree): try: tree.next() except: done += 1 leonardo.up() leonardo.goto(-140,-135) leonardo.write("HOW CAN THIS BE DONE WITHOUT GENERATORS?") raw_input("Press Enter!") --------------070104060008060808070206-- From shalehperry@attbi.com Wed Jul 31 22:57:34 2002 From: shalehperry@attbi.com (Sean 'Shaleh' Perry) Date: Wed, 31 Jul 2002 14:57:34 -0700 (PDT) Subject: [Edu-sig] RE: [Tutor] Use? Abuse? Amusement? Amendments? In-Reply-To: <3D485C3F.3060304@aon.at> Message-ID: On 31-Jul-2002 Gregor Lingl wrote: > Hi! > If you, incidentally, are going to have a coffee-break, > please, run the code of the attachment. > Your opinion? > Gregor > where does one get turtle?