[Edu-sig] Fwd: Do we teach computers when we write code?
I haven't posted in a while -- forgot to reply-to-edu-sig :) -- Forwarded message -- From: Lloyd Hugh Allen chandraki...@gmail.com Date: Tue, Apr 7, 2009 at 09:26 Subject: Re: [Edu-sig] Do we teach computers when we write code? To: kirby urner kirby.ur...@gmail.com As a math teacher, using the particular example of summing a finite set of consecutive integers: To give students a formula, in particular n(1+n)/2, and then have them do a set of practice problems where they apply that formula, is not teaching. It might be training. Instead, consider the case of telling students that: when Gauss was in elementary school, his teacher needed time to work on some other matter and so told the students to add all of the numbers from 1 to 100; and that Gauss instantly looked up and said 5050; and the teacher hadn't actually yet done the problem himself and so denied Gauss' answer. Gauss, as an ~8 year old, said, no, look, and wrote 1 + 2 + 3 + ... + 100 and then below that wrote 100 + 99 + 98 + ... + 1 and showed that there were 100 columns, and that each column summed to 101. However, he then noted that he had written the series out twice, and so had to divide that product by two. The 100 columns is the n; the sum of the first and last number is 1+n; and then divide by two. And then to have the students try to represent a similar problem, and to check their answer against the formula, and THEN to have them do a set of practice problems, that might be teaching. If the computer were able to understand the story about young Gauss, then we could teach it. Instead, we can use it to confirm that the formula seems to work (because computers can add numbers in the fashion that Gauss' elementary school teacher expected just as fast as we can apply the formula), and we can show that using the formula is still faster for the computer than actually summing the list, but no, we are not teaching the computer. Perhaps if the computer were then able to, of its own volition, wonder what we would get if we were to sum consecutive squares, then we could teach it. As hard as it is to get students to wonder about things, it's even harder to create that state in computers. -Lloyd On Mon, Apr 6, 2009 at 18:05, kirby urner kirby.ur...@gmail.com wrote: I'm wondering what others on this list think of this non-standard use of teaching when talking about programming a computer. The authors say we're teaching the computer ___ Edu-sig mailing list Edu-sig@python.org http://mail.python.org/mailman/listinfo/edu-sig
Re: [Edu-sig] Progamming advice. (Was: Why MIT switched from Scheme to Python)
Gary Pajer wrote: But to clarify: I've been programming in python for about six years, along the way abandoning Matlab in which I was a local go-to guy. By the way, I've also adopted Traits and the Enthought Tool Suite, which IMHO might possibly be the future of practical laboratory programming in python. So I'm comfortable enough with the nuts and bolts of OOP. But higher level questions like what to make a function, what to make a class, what to make a module, how best to factor it all out, when to decimate a long routine into a bunch of shorter ones, how best to organize input, computation and output (Traits' MVC architecture helps there), how to think about designing for reuse, how to reuse what's already available, when does sub-classing make sense, when do exceptions make sense... and so on and so on. snip I'm wondering if some wizard has written a guide to program structure paradigms for the intermediate programmer. Or perhaps this kind of thing is actually taught in books somewhere... A good book on exactly this subject is Object-Oriented Modeling and Design with UML by Blaha and Rumbaugh. Here you will learn about Class Models, State Models, and Interaction Models. It may be a little tough for self-study, however. I studied it in a class on OOP, taught by a professor who was not only an inspiring teacher, but had plenty of experience in large projects. It might have been a dull read otherwise. He also had us work in teams of 3 to 4 students each, thereby forcing us to pay attention to modular design and interface definitions. Another good book, maybe better for self-study is Steve McConnel's Code Complete. This is more like an encyclopedia of good programming, so you can read a topic without reading the whole book. If you want a quick summary of the goto debate, look here first. I think what you really need, however, can only be acquired through real-world experience designing systems that are complex enough to *require* good modular design, well-defined interfaces, etc. I think of OOP as just one tool in a bag of good engineering practices. TDD is certainly another. Using good data structures is another, and Python is really superb at getting you to formulate your problem in terms of simple data structures. -- Dave ___ Edu-sig mailing list Edu-sig@python.org http://mail.python.org/mailman/listinfo/edu-sig
Re: [Edu-sig] Progamming advice. (Was: Why MIT switched from Scheme to Python)
On Tue, Apr 7, 2009 at 1:09 AM, Laura Creighton l...@openend.se wrote: In a message of Mon, 06 Apr 2009 16:50:09 EDT, Gary Pajer writes: But to clarify: I've been programming in python for about six years, alo ng the way abandoning Matlab in which I was a local go-to guy. By the way, I've also adopted Traits and the Enthought Tool Suite, which IMHO might possibly be the future of practical laboratory programming in python. So I'm comfortable enough with the nuts and bolts of OOP. But higher level questions like what to make a function, what to make a class, what to mak e a module, how best to factor it all out, when to decimate a long routine in to a bunch of shorter ones, That last is telling. It could indicate where your problem is, which is that you tend to put too much stuff, and the wrong stuff, in a routine. how best to organize input, computation and outp ut (Traits' MVC architecture helps there), how to think about designing for reuse, how to reuse what's already available, when does sub-classing make sense, when do exceptions make sense... and so on and so on. My current habit is to start coding somewhere and keep patching things on till it does what I want. Imagine building a house starting with I know I need at least one upright piece of lumber. I'll put it here. I need another to hold it up. Then another set over here, and a horizontal one over there I wouldn't want to live in the resulting house. My cod e ... the resultant code is hard to follow, hard to document, hard to exte nd or change, and probably slower than it might be, and I wouldn't want to l ive in that, either. When I try to plan my code the way I might plan a hous e, I soon find myself swimming in possible ideas, going in circles with different plans, having disparate approaches in different parts of the program, etc. I'm wondering if some wizard has written a guide to program structure paradigms for the intermediate programmer. Or perhaps this kind of thing is actually taught in books somewhere... If your problem is 'I have way too many fiddly bits' then what your problem may be is that you don't know enough useful data structures, and you need some. A data structures course (and there are textbooks for this) will help. And they can give your code some needed all-over structure. Just learning to think in data structures will help your ability to write code in any case. But your problem may be 'I don't have enough fiddly bits' -- and it sounds like that from your description. It sounds like while you are writing code, and solving one bit of the problem you start thinking about a different problem, and stick that solution in there, just as you are writing. This will result in pieces of code that are very hard to refactor, debug, document and test, and with bugs due to subtle dependencies in addition. Or you could be truly blessed and have both problems at the same time. If your problem is the second, then the best thing to do is to practice test-driven development. Write the test first. Then only write enough code to make the test pass. Then write another test. and so on and so forth. By making the tests really small, you can limit the size of the routines that you are making. And by having to write the test first you will get a little more perspective on where in your existing code it should go. So you get fewer 'I put it here because that was what I happened to be writing at the time' problems. Finally, if you catch yourself having brilliant ideas and wanting to race off and code them 'before I forget' .. then TDD will improve things a lot for you. Because writing the test is usually a whole lot easier than writing the code, and if you can get your brilliant idea down in a test, then its a lot safer for the rest of your code. Lots of errors happen in this business because one is not paying attention to the code that one is actually typing down at the moment, but are instead listening to your inner voice design the code that you will be typing in 10 minutes, or 10 hours. If I were you I would go over to http://diveintopython.org/toc/index.html and work through the examples in sections 13, 14, and 15 which introduces unittesting, test first programming, and refactoring. See if it makes you feel any different. If you aren't used to test first development, it will be hard for a while, but persevere, it is worth it. Martin Fowler's Refactoring: Improving the Design of Existing Code may be worth a read, too. Good luck! Laura Hey Laura, you seem to grok my situation quite well. Thank you for responding, and thanks to all others, including they who have something to say but haven't yet. I am but a poor physicist and self-taught (out of necessity) programmer, aside from one course in FORTRAN in 1973. Until this discussion I was not at all familiar with the terms TDD, unittest, design pattern,
Re: [Edu-sig] Fwd: Do we teach computers when we write code?
On Tue, Apr 7, 2009 at 6:32 AM, Lloyd Hugh Allen chandraki...@gmail.com wrote: I haven't posted in a while -- forgot to reply-to-edu-sig :) I replied but to an earlier part of this thread -- I trust our human readers to make the connections. :) Kirby ___ Edu-sig mailing list Edu-sig@python.org http://mail.python.org/mailman/listinfo/edu-sig
[Edu-sig] Generating prime numbers
On Sun, Apr 5, 2009 at 9:07 AM, kirby urner kirby.ur...@gmail.com wrote: As my grandmother might have said: ai yai yai http://answers.yahoo.com/question/index?qid=20081203103806AA4TSOq I'm guessing Kay (XY? XX? -- not that I need to know) is a LISP and/or Scheme head, by the looks of those lambdas. Probably why Python doesn't want a big one is precisely this: the language would fall under the control of the Great Lambda Kings (a small tribe to our north, spends all its time extending emacs). Ya gotta love 'em! You should try UnLambda, then. ;- _The_ most minimalist Turing-tarpit language I knew of until just this moment, when I looked it up on Wikipedia and found out about the languages Iota and Jot. Wonderful for proof-of-concept studies. There is a Parrot implementation of UnLambda. Here, for example, is an UnLambda implementation of the Y fixed-point combinator. ```s``k``sii``s``s`ksk`k``sii where i is an abbreviation for ``skk. Joy is a pure functional languages without Lambda. A square function in Joy is quite FORTH-like. DEFINE square == dup * . J also does without Lambda. It has a functional subset with Currying () in which one can write square =. ^2 I helped Iverson with a small design point in that functional subset, and wrote a paper about a generalization of the idea for the next year's APL conference. In the class of languages I discussed, one can dispense with variables. Kirby On Sun, Apr 5, 2009 at 8:27 AM, John Posner jjpos...@snet.net wrote: kirby urner wrote: Excellente! kind sir. Here's a Python solution from Kay Schluehr on python-list. I've pretty-printed it, sort of. If the line endings get garbled, just look for the backslashes: g = (lambda primes = []: \ (n for n in count(2) if \ (lambda n, primes: \ (n in primes if (primes and n=primes[-1]) \ else (primes.append(n) or True if all(n%p for p in primes if p = sqrt(n)) \ else False) \ ) \ )(n, primes) \ ) \ )() g is a generator, so get the values with g.next(). -- Silent Thunder (默雷/धर्ममेघशब्दगर्ज/دھرممیگھشبدگر ج) is my name And Children are my nation. The Cosmos is my dwelling place, The Truth my destination. http://earthtreasury.net/ (Edward Mokurai Cherlin) ___ Edu-sig mailing list Edu-sig@python.org http://mail.python.org/mailman/listinfo/edu-sig
Re: [Edu-sig] Fwd: Do we teach computers when we write code?
On Tue, Apr 7, 2009 at 6:32 AM, Lloyd Hugh Allen chandraki...@gmail.com wrote: I haven't posted in a while -- forgot to reply-to-edu-sig :) There is a long-running rwar between those who think that mailing lists should have a reply-to set to the mailing list address, and those who think that replies should go to the previous sender by default. Is it worse that mistakes result in private replies going to the list (big-endian) or list replies going to an individual (little-endian)? You still have to be able to remember what you are doing. What _I_ want is a menu item clearly labeled Reply to List. -- Forwarded message -- From: Lloyd Hugh Allen chandraki...@gmail.com Date: Tue, Apr 7, 2009 at 09:26 Subject: Re: [Edu-sig] Do we teach computers when we write code? To: kirby urner kirby.ur...@gmail.com As a math teacher, using the particular example of summing a finite set of consecutive integers: To give students a formula, in particular n(1+n)/2, and then have them do a set of practice problems where they apply that formula, is not teaching. It might be training. Instead, consider the case of telling students that: when Gauss was in elementary school, his teacher needed time to work on some other matter and so told the students to add all of the numbers from 1 to 100; and that Gauss instantly looked up and said 5050; and the teacher hadn't actually yet done the problem himself and so denied Gauss' answer. The version I learned is that Gauss wrote the answer on his personal slate and put it face down on the teacher's desk, as was the custom. Then he waited while all of the others slaved through the columnar addition. When the last slate was added to the pile, the teacher turned it over and found Gauss's correct answer on top. With no working. In some of the schools I have attended, you get marked down for not showing your work. %-[ Gauss, as an ~8 year old, said, no, look, and wrote 1 + 2 + 3 + ... + 100 and then below that wrote 100 + 99 + 98 + ... + 1 and showed that there were 100 columns, and that each column summed to 101. However, he then noted that he had written the series out twice, and so had to divide that product by two. The 100 columns is the n; the sum of the first and last number is 1+n; and then divide by two. You can do this in preschool with Cuisenaire rods. And then to have the students try to represent a similar problem, and to check their answer against the formula, and THEN to have them do a set of practice problems, that might be teaching. If the computer were able to understand the story about young Gauss, then we could teach it. Instead, we can use it to confirm that the formula seems to work (because computers can add numbers in the fashion that Gauss' elementary school teacher expected just as fast as we can apply the formula), +/i.100 0.5 * (] * (] + 1)) and we can show that using the formula is still faster for the computer than actually summing the list, but no, we are not teaching the computer. I still say that even though the computer is not learning, children writing programs have the same impact on their learning _as if_ they were teaching. Perhaps if the computer were then able to, of its own volition, wonder what we would get if we were to sum consecutive squares, then we could teach it. As hard as it is to get students to wonder about things, it's even harder to create that state in computers. There are theorem-proving programs, and I know of an instance in which one was turned loose and came up with a novel proof in geometry (of a well-known theorem, of course.) Still, one shouldn't make too much of an isolated incident. -Lloyd On Mon, Apr 6, 2009 at 18:05, kirby urner kirby.ur...@gmail.com wrote: I'm wondering what others on this list think of this non-standard use of teaching when talking about programming a computer. The authors say we're teaching the computer ___ Edu-sig mailing list Edu-sig@python.org http://mail.python.org/mailman/listinfo/edu-sig -- Silent Thunder (默雷/धर्ममेघशब्दगर्ज/دھرممیگھشبدگر ج) is my name And Children are my nation. The Cosmos is my dwelling place, The Truth my destination. http://earthtreasury.net/ (Edward Mokurai Cherlin) ___ Edu-sig mailing list Edu-sig@python.org http://mail.python.org/mailman/listinfo/edu-sig
Re: [Edu-sig] Fwd: Do we teach computers when we write code?
In a message of Tue, 07 Apr 2009 11:09:36 PDT, Edward Cherlin writes: There is a long-running rwar between those who think that mailing lists should have a reply-to set to the mailing list address, and those who think that replies should go to the previous sender by default. Is it worse that mistakes result in private replies going to the list (big-endian) or list replies going to an individual (little-endian)? Much worse when private replies go to a list. You still have to be able to remember what you are doing. What _I_ want is a menu item clearly labeled Reply to List. Many mailers have one of these. Writing one is not hard, what mailer are you using, and is the source available? Laura the sum of the first and last number is 1+n; and then divide by two. You can do this in preschool with Cuisenaire rods. And then to have the students try to represent a similar problem, and to check their answer against the formula, and THEN to have them do a set of practice problems, that might be teaching. If the computer were able to understand the story about young Gauss, then we could teach it. Instead, we can use it to confirm that the formula seems to work (because computers can add numbers in the fashion that Gauss' elementary school teacher expected just as fast as we can apply the formula), +/i.100 0.5 * (] * (] + 1)) and we can show that using the formula is still faster for the computer than actually summing the list, but no, we are not teaching the computer. I still say that even though the computer is not learning, children writing programs have the same impact on their learning _as if_ they were teaching. Perhaps if the computer were then able to, of its own volition, wonder what we would get if we were to sum consecutive squares, then we could teach it. As hard as it is to get students to wonder about things, it's even harder to create that state in computers. There are theorem-proving programs, and I know of an instance in which one was turned loose and came up with a novel proof in geometry (of a well-known theorem, of course.) Still, one shouldn't make too much of an isolated incident. -Lloyd On Mon, Apr 6, 2009 at 18:05, kirby urner kirby.ur...@gmail.com wrote : I'm wondering what others on this list think of this non-standard use of teaching when talking about programming a computer. The authors say we're teaching the computer ___ Edu-sig mailing list Edu-sig@python.org http://mail.python.org/mailman/listinfo/edu-sig -- Silent Thunder (é»é·/धरà¥à¤®à¤®à¥à¤à¤¶à¤¬à¥à¤¦à¤à¤°à¥à¤/دھر٠٠Ûگھشبدگر ج) is my name And Children are my nation. The Cosmos is my dwelling place, The Truth my destination. http://earthtreasury.net/ (Edward Mokurai Cherlin) ___ Edu-sig mailing list Edu-sig@python.org http://mail.python.org/mailman/listinfo/edu-sig ___ Edu-sig mailing list Edu-sig@python.org http://mail.python.org/mailman/listinfo/edu-sig
[Edu-sig] Mail features (was Re: Fwd: Do we teach computers when we write code?)
On Tue, Apr 7, 2009 at 2:28 PM, Laura Creighton l...@openend.se wrote: In a message of Tue, 07 Apr 2009 11:09:36 PDT, Edward Cherlin writes: There is a long-running rwar between those who think that mailing lists should have a reply-to set to the mailing list address, and those who think that replies should go to the previous sender by default. Is it worse that mistakes result in private replies going to the list (big-endian) or list replies going to an individual (little-endian)? Much worse when private replies go to a list. I'm not going to argue with you, but I know others who would. :( You still have to be able to remember what you are doing. What _I_ want is a menu item clearly labeled Reply to List. Many mailers have one of these. Writing one is not hard, what mailer are you using, and is the source available? Gmail. No, source is not available. They do accept feature requests at http://mail.google.com/support/bin/static.py?page=suggestions.cs Once in a while I see that some feature I wanted made it in. Laura Of course the mail software can't help you remember when to change the subject line. -- Silent Thunder (默雷/धर्ममेघशब्दगर्ज/دھرممیگھشبدگر ج) is my name And Children are my nation. The Cosmos is my dwelling place, The Truth my destination. http://earthtreasury.org/worknet (Edward Mokurai Cherlin) ___ Edu-sig mailing list Edu-sig@python.org http://mail.python.org/mailman/listinfo/edu-sig
Re: [Edu-sig] Mail features (was Re: Fwd: Do we teach computers when we write code?)
Gmail. No, source is not available. They do accept feature requests at http://mail.google.com/support/bin/static.py?page=suggestions.cs Once in a while I see that some feature I wanted made it in. Laura Of course the mail software can't help you remember when to change the subject line. How would Reply to List differ from Reply to All, which gmail has? Seems like you'd have to be able to pick out a list from all the others, which means persisting a list of lists, which may be more trouble than it's worth? I think just posting to the list is often sufficient, so if others reply, it goes to the list also. No need to CC anyone you already know is on the list maybe? Anyway, this gets in the realm of to each her own i.e. not my place to micromanage the habits of others, just giving a few cents worth. Kirby -- Silent Thunder (默雷/धर्ममेघशब्दगर्ज/دھرممیگھشبدگر ج) is my name And Children are my nation. The Cosmos is my dwelling place, The Truth my destination. http://earthtreasury.org/worknet (Edward Mokurai Cherlin) ___ Edu-sig mailing list Edu-sig@python.org http://mail.python.org/mailman/listinfo/edu-sig ___ Edu-sig mailing list Edu-sig@python.org http://mail.python.org/mailman/listinfo/edu-sig
Re: [Edu-sig] Mail features (was Re: Fwd: Do we teach computers when we write code?)
On Tue, Apr 7, 2009 at 3:43 PM, kirby urner kirby.ur...@gmail.com wrote: Gmail. No, source is not available. They do accept feature requests at http://mail.google.com/support/bin/static.py?page=suggestions.cs Once in a while I see that some feature I wanted made it in. Laura Of course the mail software can't help you remember when to change the subject line. How would Reply to List differ from Reply to All, which gmail has? Reply to All, which I used on this message, puts you in as primary recipient, and the list as cc:. I _could_ delete you, and move the list address to To:, but I usually don't feel like taking the trouble. This time I left it deliberately. Seems like you'd have to be able to pick out a list from all the others, which means persisting a list of lists, which may be more trouble than it's worth? You mean if the message is crossposted to multiple lists? Well then, I just use Reply to All. I think just posting to the list is often sufficient, so if others reply, it goes to the list also. No need to CC anyone you already know is on the list maybe? Yes, that's what I'm asking Google to let us do. Anyway, this gets in the realm of to each her own i.e. not my place to micromanage the habits of others, just giving a few cents worth. Kirby -- Silent Thunder (默雷/धर्ममेघशब्दगर्ज/دھرممیگھشبدگر ج) is my name And Children are my nation. The Cosmos is my dwelling place, The Truth my destination. http://earthtreasury.org/worknet (Edward Mokurai Cherlin) ___ Edu-sig mailing list Edu-sig@python.org http://mail.python.org/mailman/listinfo/edu-sig ___ Edu-sig mailing list Edu-sig@python.org http://mail.python.org/mailman/listinfo/edu-sig -- Silent Thunder (默雷/धर्ममेघशब्दगर्ज/دھرممیگھشبدگر ج) is my name And Children are my nation. The Cosmos is my dwelling place, The Truth my destination. http://earthtreasury.org/worknet (Edward Mokurai Cherlin) ___ Edu-sig mailing list Edu-sig@python.org http://mail.python.org/mailman/listinfo/edu-sig
Re: [Edu-sig] Mail features (was Re: Fwd: Do we teach computers when we write code?)
Seems like you'd have to be able to pick out a list from all the others, which means persisting a list of lists, which may be more trouble than it's worth? You mean if the message is crossposted to multiple lists? Well then, I just use Reply to All. Oh I get it. I didn't remember that mailing list is part of the header, and so it'd be unambiguous what 'Reply to List' really meant. I was thinking Gmail would somehow have to pick just the list out of the from: part of the header, where it might be mixed with any number of personal addresses. Google already lets us filter on mailing list, so replying to it and only it makes sense as an option. Good idea. Kirby ___ Edu-sig mailing list Edu-sig@python.org http://mail.python.org/mailman/listinfo/edu-sig
Re: [Edu-sig] Progamming advice
At 09:35 AM 4/7/2009 -0400, Gary Pajer wrote: I am but a poor physicist and self-taught (out of necessity) programmer, aside from one course in FORTRAN in 1973. Until this discussion I was not at all familiar with the terms TDD, unittest, design pattern, class model, state model, interaction model. And thanks for the pointers to Fowler, and Dive Into Python. I really do feel like I'm looking at a pile of lumber, nails, hammers, and saws, and being expected to build a house. My apps are getting complex, and seat-of-the-pants isn't working so well anymore. Sounds like we have similar backgrounds. You are exactly the type of non-programmer professional that I have in mind for the CS2 class I have been thinking about. http://ece.arizona.edu/~edatools/index_classes.htm CS majors have a sequence of classes to learn all about CS, with a lot of emphasis on tools and techniques used by professional programmers. Non-programmers get only one freshman-level class in C or Java, and miss a lot of the really good stuff that could be distilled from the three courses taught to CS majors, stuff like OOP, that is helpful to an individual writing his own programs. I really believe we can do this in one semester without making it seem rushed or overwhelming. One good design will teach the concept of design patterns. Most of the others are not that useful anyway. Many of the tools only improve productivity if you use them all the time, and get in the way if you have to stop and review the manual because you were working on something else for six months. Send me some examples of early versions of your programs, and I'll help make them into a sequence that will serve as good examples for students. See the sequence OhNo.py for what I have in mind. This example is a bit artificial, but perhaps some of your real-world programs could be the basis of something much better. -- Dave ___ Edu-sig mailing list Edu-sig@python.org http://mail.python.org/mailman/listinfo/edu-sig
Re: [Edu-sig] Mail features (was Re: Fwd: Do we teach computers when we write code?)
In a message of Tue, 07 Apr 2009 16:06:26 PDT, kirby urner writes: Seems like you'd have to be able to pick out a list from all the others, which means persisting a list of lists, which may be more trouble than it's worth? You mean if the message is crossposted to multiple lists? Well then, I just use Reply to All. Oh I get it. I didn't remember that mailing list is part of the header, and so it'd be unambiguous what 'Reply to List' really meant. I was thinking Gmail would somehow have to pick just the list out of the from: part of the header, where it might be mixed with any number of personal addresses. Google already lets us filter on mailing list, so replying to it and only it makes sense as an option. Good idea. Kirby The other thing that makes sense as a command is 'absolutely, positively, reply only to the from: address totally ignoring the reply-to: line'. Then you can stop using the reply command altogether, unless you communicate with people who want their email to be received in a different account than the one where they are sending it from, and who are using RFC 2822, as designed, to indicate where they want incoming mail to them to go. These people, and I used to be one of them, are a vanishing breed now anyway, because enough reply-to: munging lists out there have left them high and dry. Does Google mail have one of those? Laura ___ Edu-sig mailing list Edu-sig@python.org http://mail.python.org/mailman/listinfo/edu-sig
Re: [Edu-sig] Progamming advice
On Tue, Apr 7, 2009 at 7:12 PM, David MacQuigg macqu...@ece.arizona.edu wrote: At 09:35 AM 4/7/2009 -0400, Gary Pajer wrote: SNIP Send me some examples of early versions of your programs, and I'll help make them into a sequence that will serve as good examples for students. See the sequence OhNo.py for what I have in mind. This example is a bit artificial, but perhaps some of your real-world programs could be the basis of something much better. -- Dave I'm eager for Dave's proposed course (and course ware) to flourish, especially if he continues being so generous with his PDFs etc. So true that working non computer scientists might benefit from a best practices course. There should be no stigma around sharing draft code, what liberal cultures encourage. Lots of people stop themselves saying: I don't want to publish code others might criticize. But that's the whole point: flag the code as a work in progress and invite comments, suggestions. This is how we learn. As R0ml Lefkowitz points out, free as in freedom is where liberal arts come in, with software skills becoming the new rhetoric in some ways. http://mybizmo.blogspot.com/2008/07/more-oscon-keynotes.html Random observations re scientific computing w/ Python: The SciPy site has a lot of materials geared for the scientist needing to get work done (yeah, some of those links are broken. http://www.scipy.org/Topical_Software http://www.scipy.org/wikis/topical_software/Tutorial (long and detailed, lots of work directly in the shell which I like) http://pypi.python.org/pypi/ is scary to me, such a hodge podge. Anyone in the habit of using Bruce BTW? http://pypi.python.org/pypi/bruce/3.2.1 PyMOL doesn't seem as accessible as I remember, documentation only for subscribers: http://pymol.sourceforge.net/ I'm out of date on Numpy but have it as a consequence of compiling Visual Python: http://numpy.scipy.org/ http://vpython.org/ Kirby ___ Edu-sig mailing list Edu-sig@python.org http://mail.python.org/mailman/listinfo/edu-sig
[Edu-sig] pointers to Math Forum, Chipy list
FYI, I was prolific today, some might say prolix. Partly I'm just wanting to keep my wheelings and dealings in the open, in the spirit of open source. So... some lesson plans on math-teach @ Math Forum (Drexel University), precious little Python really, more about tone, context and perceptions (remember I'm posting for people who typically say What's Python?): http://mathforum.org/kb/thread.jspa?threadID=1917995tstart=0 Then, as I was mentioning to Vern off list, I'm keen to see user groups as possibly sourcing free Python Briefings, open to the public, Princeton Computer Center a model. Though open, one might still invite specific groups, advertise follow-up trainings. I'm sharing this idea with Chipy (Chicago) as well as PPUG in Portland: http://mail.python.org/pipermail/chicago/2009-April/005815.html (also recruiting to edu-sig you'll see if you wanna read it) Two other ideas from Pycon: (a) expand booth area with poster session showing Python @ work in a more academic format i.e. not selling a product or service so much as educating passers by about what's up. Sort of lightning talks meets science fair in conception. Steve Holden's idea. Vern might be interested in following up? (b) Jeff Rush mentioned EduPycon possibility, which'd be like a subclass of Pycon (which is sort of root) maybe meets in a college campus instead of hotel, more academic in flavor, focusing on teaching, pedagogy, andragogy, resources for educators? Just wanted to get those out there while the iron is still hot as they say. Kirby 4D ___ Edu-sig mailing list Edu-sig@python.org http://mail.python.org/mailman/listinfo/edu-sig
Re: [Edu-sig] Math in a Browser
Somebody wants something 'like matlab' but which is browser based and all runs in a browser. I know about http://www.livemath.com/lmplugin/ What else is out there? Laura ___ Edu-sig mailing list Edu-sig@python.org http://mail.python.org/mailman/listinfo/edu-sig