From kirby.urner at gmail.com Wed Jun 4 03:07:35 2008 From: kirby.urner at gmail.com (kirby urner) Date: Tue, 3 Jun 2008 18:07:35 -0700 Subject: [Edu-sig] a quick look at GIS Message-ID: Yo pyfolk -- So I've been looking into Google's Ruby API to SketchUp (free version), thanks to cues from a visiting Reed College alum, Trevor also a SketchUp man on my neighborhood team, doing some think tanky stuff with it. Not jumping to Ruby though, though every time I study it I think it's a great stepping stone after Perl, given the :: operator and so on. What Sketchup provides that VPython does not of course, is a user-friendly non-programmer mode, per the CAD genre more generally. VPython is not a CAD package. ESRI's ArcGIS is user-friendly, and with the Python API, but it's not open source or all that affordable to casual users I don't think On the topic of Google services, I feel drawn back to Google app engine projects. Anyone working on one of those who wants to share about it? Yesterday's visit to Immersive an eye-opener: http://mybizmo.blogspot.com/2008/06/immersion-experience.html Still working with math group on stepping stones needed for RSA pre-college, an already well-marked trail (Fermat's Little, Euler's Theorem) including my localized video and so on.** As a vendor, I keep pitching the need for long integers, all in a day's work in IDLE. Lots of math teachers are still squarely in TIs domain, but we gnu math teachers have the advantage of open source to help us make inroads. Ninth graders wanna Fermat test ( pow(2, p - 1, p) == 1 for p in primes ) and like that -- so forget the TI calculators for now, get some more real estate (screen space), real beef (Intel inside), or an XO or whatever. Then ( pow(2, p - 1, p) == 1 for p in pseudoprimes ) with primes and pseudoprimes writable as generators. Kirby 4D ** http://www.4dsolutions.net/ocn/rsa.html Old exhibits: Gregor working on Sieve of Eratosthenes http://mail.python.org/pipermail/tutor/2004-January/027900.html Me getting help from Tim Peters: http://mail.python.org/pipermail/edu-sig/2000-December/000827.html From kirby.urner at gmail.com Thu Jun 5 02:59:17 2008 From: kirby.urner at gmail.com (kirby urner) Date: Wed, 4 Jun 2008 17:59:17 -0700 Subject: [Edu-sig] a quick look at GIS In-Reply-To: References: Message-ID: > Ninth graders wanna Fermat test ( pow(2, p - 1, p) == 1 for p in > primes ) and like that -- so forget the TI calculators for now, get > some more real estate (screen space), real beef (Intel inside), or an > XO or whatever. Then ( pow(2, p - 1, p) == 1 for p in pseudoprimes ) > with primes and pseudoprimes writable as generators. > > Kirby > 4D Like from a TECC prototype Python session: Grab the opening sequence from OEIS, run a few bases. Theorem precondition is gcd( base, p) == 1 where p is some pseudoprime, which is why the test fails for 3. You're looking at Carmichael Numbers, composites that pass the Fermat Test, no matter the base, given said precondition. IDLE 1.2.1 >>> ultrapseudo = [ 561, 1105, 1729, 2465, 2821, 6601, 8911, 10585, 15841, 29341, 41041, 46657, 52633, 62745, 63973, 75361, 101101, 115921, 126217, 162401, 172081, 188461, 252601, 278545, 294409, 314821, 334153, 340561, 399001, 410041, 449065, 488881, 512461 ] >>> ( pow(2, p - 1, p) == 1 for p in ultrapseudo ) >>> um = ( pow(2, p - 1, p) == 1 for p in ultrapseudo ) >>> um.next() True >>> um.next() True >>> um.next() True >>> um.next() True >>> um.next() True >>> um.next() True >>> um = ( pow(3, p - 1, p) == 1 for p in ultrapseudo ) >>> >>> um.next() # <---- starting over at 561, but gcd(561, 3) is not 1. False >>> um.next() True >>> um.next() True >>> um.next() True >>> um.next() True >>> um.next() True http://www.research.att.com/~njas/sequences/A002997 Kirby 4D From kirby.urner at gmail.com Thu Jun 5 03:18:12 2008 From: kirby.urner at gmail.com (kirby urner) Date: Wed, 4 Jun 2008 18:18:12 -0700 Subject: [Edu-sig] a quick look at GIS In-Reply-To: References: Message-ID: > Like from a TECC prototype Python session: > > Grab the opening sequence from OEIS, run a few bases. Theorem > precondition is gcd( base, p) == 1 where p is some pseudoprime, which > is why the test fails for 3. You're looking at Carmichael Numbers, > composites that pass the Fermat Test, no matter the base, given said > precondition. Just to further clarify: Fermat's Little Theorem states IF p is prime THEN it'll pass the Fermat Test, such that >>> assert pow ( b, p - 1, p) == 1 equivalently >>> assert b ** (p - 1) % p == 1 # ** where p is any prime and b some integer (usually small) such that b and p have no factors in common (easy, because p is prime). So what we're wanting to get across to a 9th grade audience (beginning algebra 1) is just because IF p THEN q, and q, it *does not follow* that p is true. In this case, so what if you pass the Fermat Test ("get through security") doesn't mean you're not a "composite in disguise" e.g. one of the aforementioned Carmichael Numbers, which sneak through the Fermat Test regardless of base (other pseudoprimes get stopped if you jigger b). Fermat's Little is a special case of Euler's more general theorem that pow (b, phi(p), p) == 1, where phi(p) is the number of numbers 0 < x < p where gcd(p, x) == 1 i.e. len( [ x for x in range(1, p) if gcd(x, p) == 1 ] ). Again, gcd(b, phi(b)) == 1 is a precondition. In the case of Fermat's, phi(p) -- where p *really is* prime, not a composite -- is just p-1. This is old hat for some, too abbreviated and cryptic for others, but the point is to show where we're covering a lot of traditional algebra topics, primes vs. composites, gcd, while also exercising Python or other computer language skills (in this case Python). That's the gnu math advantage, vs. paper/pencil and or a calculator or slide rule. We have other lesson plans for calculus, not like it's either / or. Kirby ** except the former employs important optimization regarding raising to exponents modulo something. > > IDLE 1.2.1 > >>>> ultrapseudo = [ 561, 1105, 1729, 2465, 2821, 6601, 8911, 10585, 15841, 29341, 41041, 46657, 52633, 62745, 63973, 75361, 101101, 115921, 126217, 162401, 172081, 188461, 252601, 278545, 294409, 314821, 334153, 340561, 399001, 410041, 449065, 488881, 512461 ] >>>> ( pow(2, p - 1, p) == 1 for p in ultrapseudo ) > >>>> um = ( pow(2, p - 1, p) == 1 for p in ultrapseudo ) >>>> um.next() > True >>>> um.next() > True >>>> um.next() > True >>>> um.next() > True >>>> um.next() > True >>>> um.next() > True >>>> um = ( pow(3, p - 1, p) == 1 for p in ultrapseudo ) >>>> >>>> um.next() # <---- starting over at 561, but gcd(561, 3) is not 1. > False >>>> um.next() > True >>>> um.next() > True >>>> um.next() > True > >>>> um.next() > True >>>> um.next() > True > > http://www.research.att.com/~njas/sequences/A002997 > > Kirby > 4D > From andre.roberge at gmail.com Sat Jun 7 22:03:29 2008 From: andre.roberge at gmail.com (Andre Roberge) Date: Sat, 7 Jun 2008 17:03:29 -0300 Subject: [Edu-sig] Test Driven Learning: combining MoinMoin and Crunchy Message-ID: <7528bcdd0806071303q203f665ap8abfe6b98bbfab2e@mail.gmail.com> Hi everyone, A new Crunchy screencast is available at http://showmedo.com/videos/video?name=1430030&fromSeriesID=143 In this video, I demonstrate how a customized version of MoinMoin can be used to easily create interactive tutorials for Crunchy. Using this customized version of MoinMoin, it would be easy to set up a central repository where teachers could create a collection of online lessons with exercises to learn Python. Students could retrieve these lessons using Crunchy and get immediate feedback through the use of doctest-based exercises. Note that what is being shown is just an early prototype of a Crunchy parser for MoinMoin. More is expected to come over the course of the summer. Apparently, there are 496 subscribers to edu-sig. Imagine the following scenario: 1. a central repository is created (perhaps on the Python wiki site) 2. each of us contribute 5 doctest-based exercises, covering all aspect of Python, in the next year. Only 5 exercises written in one year. The result would be 2500 exercises that students could use to learn from. Something like this, I believe, would be an invaluable resource for teachers - and certainly contribute to Python's popularity Cheers, Andr? From aharrin at luc.edu Sun Jun 8 04:35:25 2008 From: aharrin at luc.edu (Andrew Harrington) Date: Sat, 7 Jun 2008 21:35:25 -0500 Subject: [Edu-sig] Test Driven Learning: combining MoinMoin and Crunchy In-Reply-To: <7528bcdd0806071303q203f665ap8abfe6b98bbfab2e@mail.gmail.com> References: <7528bcdd0806071303q203f665ap8abfe6b98bbfab2e@mail.gmail.com> Message-ID: The archive sounds good Andre! I would like to suggest that the home page of such a wiki ask submitters to put examples under folders for particular categories, either adding to existing ones or creating new ones where needed. Also wikis search for pages based on categories. We might agree on some basic terms to use in categories. One group might be based on level of difficulty or length .... Then follow the basic Wiki ethos, and let people organize what they submit, adding to existing groupings where it makes sense, and creating new ones as needed. Andy On Sat, Jun 7, 2008 at 3:03 PM, Andre Roberge wrote: > Hi everyone, > > A new Crunchy screencast is available at > http://showmedo.com/videos/video?name=1430030&fromSeriesID=143 > > In this video, I demonstrate how a customized version of MoinMoin can > be used to easily create interactive tutorials for Crunchy. > > Using this customized version of MoinMoin, it would be easy to set up > a central repository where teachers could create a collection of > online lessons with exercises to learn Python. Students could retrieve > these lessons using Crunchy and get immediate feedback through the use > of doctest-based exercises. > > Note that what is being shown is just an early prototype of a Crunchy > parser for MoinMoin. More is expected to come over the course of the > summer. > > > Apparently, there are 496 subscribers to edu-sig. Imagine the > following scenario: > 1. a central repository is created (perhaps on the Python wiki site) > 2. each of us contribute 5 doctest-based exercises, covering all > aspect of Python, in the next year. Only 5 exercises written in one > year. > > The result would be 2500 exercises that students could use to learn > from. Something like this, I believe, would be an invaluable resource > for teachers - and certainly contribute to Python's popularity > > > Cheers, > > Andr? > _______________________________________________ > Edu-sig mailing list > Edu-sig at python.org > http://mail.python.org/mailman/listinfo/edu-sig > -- Andrew N. Harrington Director of Academic Programs Computer Science Department Loyola University Chicago 512B Lewis Towers (office) Snail mail to Lewis Towers 416 820 North Michigan Avenue Chicago, Illinois 60611 http://www.cs.luc.edu/~anh Phone: 312-915-7982 Fax: 312-915-7998 gdp at cs.luc.edu for graduate administration upd at cs.luc.edu for undergrad administration aharrin at luc.edu as professor -------------- next part -------------- An HTML attachment was scrubbed... URL: From andre.roberge at gmail.com Mon Jun 9 12:26:55 2008 From: andre.roberge at gmail.com (Andre Roberge) Date: Mon, 9 Jun 2008 07:26:55 -0300 Subject: [Edu-sig] Test Driven Learning: combining MoinMoin and Crunchy In-Reply-To: References: <7528bcdd0806071303q203f665ap8abfe6b98bbfab2e@mail.gmail.com> Message-ID: <7528bcdd0806090326t219d367ex89154ca0d27b5fd0@mail.gmail.com> 2008/6/7 Andrew Harrington : > The archive sounds good Andre! > > I would like to suggest that the home page of such a wiki ask submitters to > put examples under folders for particular categories, either adding to > existing ones or creating new ones where needed. Also wikis search for > pages based on categories. We might agree on some basic terms to use in > categories. One group might be based on level of difficulty or length .... > I think both topic and length/level of difficulty would be useful. But I think the first thing will be to set up such a wiki. Does anyone has any suggestions as to where we could do this? Andr? From lac at openend.se Mon Jun 9 14:15:46 2008 From: lac at openend.se (Laura Creighton) Date: Mon, 09 Jun 2008 14:15:46 +0200 Subject: [Edu-sig] Test Driven Learning: combining MoinMoin and Crunchy In-Reply-To: Message from "Andre Roberge" of "Mon, 09 Jun 2008 07:26:55 -0300." <7528bcdd0806090326t219d367ex89154ca0d27b5fd0@mail.gmail.com> References: <7528bcdd0806071303q203f665ap8abfe6b98bbfab2e@mail.gmail.com> <7528bcdd0806090326t219d367ex89154ca0d27b5fd0@mail.gmail.com> Message-ID: <200806091215.m59CFkK9027297@theraft.openend.se> In a message of Mon, 09 Jun 2008 07:26:55 -0300, "Andre Roberge" writes: >2008/6/7 Andrew Harrington : >> The archive sounds good Andre! >> >> I would like to suggest that the home page of such a wiki ask submitter >s to >> put examples under folders for particular categories, either adding to >> existing ones or creating new ones where needed. Also wikis search for >> pages based on categories. We might agree on some basic terms to use i >n >> categories. One group might be based on level of difficulty or length > .... >> > >I think both topic and length/level of difficulty would be useful. >But I think the first thing will be to set up such a wiki. > >Does anyone has any suggestions as to where we could do this? > >Andr? Why not use wiki.python.org? Laura From andre.roberge at gmail.com Mon Jun 9 14:18:45 2008 From: andre.roberge at gmail.com (Andre Roberge) Date: Mon, 9 Jun 2008 09:18:45 -0300 Subject: [Edu-sig] Test Driven Learning: combining MoinMoin and Crunchy In-Reply-To: <200806091215.m59CFkK9027297@theraft.openend.se> References: <7528bcdd0806071303q203f665ap8abfe6b98bbfab2e@mail.gmail.com> <7528bcdd0806090326t219d367ex89154ca0d27b5fd0@mail.gmail.com> <200806091215.m59CFkK9027297@theraft.openend.se> Message-ID: <7528bcdd0806090518r173aca35m1074970ba24a726a@mail.gmail.com> On Mon, Jun 9, 2008 at 9:15 AM, Laura Creighton wrote: > In a message of Mon, 09 Jun 2008 07:26:55 -0300, "Andre Roberge" writes: >>2008/6/7 Andrew Harrington : >>> The archive sounds good Andre! >>> >>> I would like to suggest that the home page of such a wiki ask submitter >>s to >>> put examples under folders for particular categories, either adding to >>> existing ones or creating new ones where needed. Also wikis search for >>> pages based on categories. We might agree on some basic terms to use i >>n >>> categories. One group might be based on level of difficulty or length >> .... >>> >> >>I think both topic and length/level of difficulty would be useful. >>But I think the first thing will be to set up such a wiki. >> >>Does anyone has any suggestions as to where we could do this? >> >>Andr? > > Why not use wiki.python.org? > This would seem to be the sensible choice. However, we'd have to have the administrators of that site agree to "upgrade" the wiki MoinMoin server by adding the Crunchy parser (when it is completed). Andr? > Laura > From lac at openend.se Mon Jun 9 16:53:50 2008 From: lac at openend.se (Laura Creighton) Date: Mon, 09 Jun 2008 16:53:50 +0200 Subject: [Edu-sig] Test Driven Learning: combining MoinMoin and Crunchy In-Reply-To: Message from "Andre Roberge" of "Mon, 09 Jun 2008 09:18:45 -0300." <7528bcdd0806090518r173aca35m1074970ba24a726a@mail.gmail.com> References: <7528bcdd0806071303q203f665ap8abfe6b98bbfab2e@mail.gmail.com> <7528bcdd0806090326t219d367ex89154ca0d27b5fd0@mail.gmail.com> <200806091215.m59CFkK9027297@theraft.openend.se> <7528bcdd0806090518r173aca35m1074970ba24a726a@mail.gmail.com> Message-ID: <200806091453.m59ErogG020098@theraft.openend.se> In a message of Mon, 09 Jun 2008 09:18:45 -0300, "Andre Roberge" writes: >>>I think both topic and length/level of difficulty would be useful. >>>But I think the first thing will be to set up such a wiki. >>> >>>Does anyone has any suggestions as to where we could do this? >>> >>>Andr? >> >> Why not use wiki.python.org? >> > >This would seem to be the sensible choice. However, we'd have to have >the administrators of that site agree to "upgrade" the wiki MoinMoin >server by adding the Crunchy parser (when it is completed). > > >Andr? I am pretty sure that will not be a problem. We stuffed some changes into wiki.python.org to accomodate Europython, so I cannot see any reason why you shouldn't get what you want, as well. Post to the PSF mailing list to make sure? Laura From clare at girlstart.org Wed Jun 11 22:08:12 2008 From: clare at girlstart.org (Clare Richardson) Date: Wed, 11 Jun 2008 16:08:12 -0400 Subject: [Edu-sig] Announcing the Project IT Girl Games! Message-ID: <93D13809A01AF445A117B4638AD0590001008E0D71@mse19be2.mse19.exchange.ms> Announcing the Project IT Girl Games written in Python and Pygame! http://wiki.laptop.org/go/Project_IT_Girl Project IT Girl is a Girlstart after-school program in Austin, Texas, funded by the National Science Foundation. The program consists of 44 high school girls (16 - 17 years old) who are learning how to use technology to make a difference in the world over a three-year period. During the 2007 - 2008 school year, students piloted Girlstart's "Python with a Purpose" curriculum. The IT Girls were given a real-world project: develop an educational game using Python and Pygame that can be distributed to children around the world via the One Laptop per Child program. Each girl picked a learning objective for her game that most interested her, from "practice fractions" to "spread awareness of AIDS testing." To *download the games* and to learn more about Project IT Girl, see our page on the OLPC wiki: http://wiki.laptop.org/go/Project_IT_Girl NOTE: These games have not been heavily tested. There are many known issues in the games, including high CPU usage. If you are interested in testing and debugging the games, please email Zakiyyah Kareem at zakiyyah at girlstart.org. Clare Richardson Technology and Program Coordinator Girlstart www.girlstart.org 512.916.4775 512.916.4776 fax Scrub in, Broadcast news, Unmask mysteries! Don't miss Summer Camp 2008! From juhasecke at googlemail.com Sat Jun 14 13:34:17 2008 From: juhasecke at googlemail.com (Jan Ulrich Hasecke) Date: Sat, 14 Jun 2008 13:34:17 +0200 Subject: [Edu-sig] Python and Robots Message-ID: <6DDC1A64-6E8E-4DE7-89E0-B8AB90A8069D@googlemail.com> Hi, I found pyro and want to know if there is any active development for pyro. The developer list stops on May 2007. Is there anybody using pyro with real robots? Are there any other projects around to play with robots and python? juh -- Business: http://hasecke.com --- Private: http://hasecke.eu --- Blog: http://www.sudelbuch.de --- History: www.generationenprojekt.de --- Europe: www.wikitution.org -------------- next part -------------- A non-text attachment was scrubbed... Name: PGP.sig Type: application/pgp-signature Size: 186 bytes Desc: Signierter Teil der Nachricht URL: From lac at openend.se Sat Jun 14 13:50:47 2008 From: lac at openend.se (Laura Creighton) Date: Sat, 14 Jun 2008 13:50:47 +0200 Subject: [Edu-sig] Python and Robots In-Reply-To: Message from Jan Ulrich Hasecke of "Sat, 14 Jun 2008 13:34:17 +0200." <6DDC1A64-6E8E-4DE7-89E0-B8AB90A8069D@googlemail.com> References: <6DDC1A64-6E8E-4DE7-89E0-B8AB90A8069D@googlemail.com> Message-ID: <200806141150.m5EBolSC028275@theraft.openend.se> In a message of Sat, 14 Jun 2008 13:34:17 +0200, Jan Ulrich Hasecke writes: >This is an OpenPGP/MIME signed message (RFC 2440 and 3156) >--===============0071348944== >Content-Transfer-Encoding: 7bit >Content-Type: multipart/signed; protocol="application/pgp-signature"; > micalg=pgp-sha1; boundary="Apple-Mail-2-1060340619" > >This is an OpenPGP/MIME signed message (RFC 2440 and 3156) >--Apple-Mail-2-1060340619 >Content-Transfer-Encoding: 7bit >Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed > >Hi, > >I found pyro and want to know if there is any active development for >pyro. The developer list stops on May 2007. > >Is there anybody using pyro with real robots? > >Are there any other projects around to play with robots and python? > >juh I know people who are using this: http://packages.ubuntu.com/sv/hardy/python-playerc Laura From lac at openend.se Sat Jun 14 13:53:44 2008 From: lac at openend.se (Laura Creighton) Date: Sat, 14 Jun 2008 13:53:44 +0200 Subject: [Edu-sig] Python and Robots In-Reply-To: Message from Jan Ulrich Hasecke of "Sat, 14 Jun 2008 13:34:17 +0200." <6DDC1A64-6E8E-4DE7-89E0-B8AB90A8069D@googlemail.com> References: <6DDC1A64-6E8E-4DE7-89E0-B8AB90A8069D@googlemail.com> Message-ID: <200806141153.m5EBri4x028326@theraft.openend.se> And http://www.thinkgeek.com/geektoys/rc/9df0/ was a hit at last year's Europython. Laura From bblais at bryant.edu Sat Jun 14 14:45:59 2008 From: bblais at bryant.edu (Brian Blais) Date: Sat, 14 Jun 2008 08:45:59 -0400 Subject: [Edu-sig] Python and Robots In-Reply-To: <6DDC1A64-6E8E-4DE7-89E0-B8AB90A8069D@googlemail.com> References: <6DDC1A64-6E8E-4DE7-89E0-B8AB90A8069D@googlemail.com> Message-ID: <4D1F40F8-9A67-40B5-AA7B-EFB14ACAA0FF@bryant.edu> On Jun 14, 2008, at Jun 14:7:34 AM, Jan Ulrich Hasecke wrote: > > Are there any other projects around to play with robots and python? > I've used (and wrote) pynxc, which is a translator from python to nxc (for the lego mindstorms). still (and probably always) a work in progress, it is very functional. Check it out on: http://web.bryant.edu/~bblais/projects_html/projects.html bb -- Brian Blais bblais at bryant.edu http://web.bryant.edu/~bblais -------------- next part -------------- An HTML attachment was scrubbed... URL: From asweigart at gmail.com Tue Jun 17 02:39:57 2008 From: asweigart at gmail.com (Albert Sweigart) Date: Mon, 16 Jun 2008 17:39:57 -0700 Subject: [Edu-sig] Edu-sig Digest, Vol 59, Issue 6 In-Reply-To: References: Message-ID: <716dd5b60806161739k51e0ee9cwee0073f394f5cfea@mail.gmail.com> Hello all, I've spent my spare time over the last few months writing a book aimed at teaching Python to kids through game programming. It is freely available under a Creative Commons license at http://pythonbook.coffeeghost.net I'd like any feedback, especially since the approach I take is different to a lot of the tutorials I see on the web aimed at teaching programming to kids. I noticed that there was a large gap in this area, one that used to be filled by BASIC books (the old BASIC games books like the ones at atariarchives.org especially). It seems that many kids today learn programming on their TI graphing calculators or learn HTML/Javascript, or get one of the many game creation kits out there. While many of these kits have nice drag-and-drop interfaces to tie together multimedia elements, they are limited to a specific genre of games and the graphics hide a lot of what line-by-line programming can teach. Other books explain programming principles and concepts, but leave out complete examples of programs that the student can follow along. They read like a school textbook. My book (Invent Your Own Computer Games with Python) focuses on complete examples of games, and explain programming principles from them. The games are simple (text-based ASCII art graphics, no GUIs or images) and complete (the longest is about 400 lines, including whitespace). The book is designed to be easy enough for 9 to 12 year olds to understand. The book, in HTML and PDF format, and all the games are located here: http://pythonbook.coffeeghost.net I'm planning on doing more books at some point in the future after getting feedback. Thank you! Al Sweigart -------------- next part -------------- An HTML attachment was scrubbed... URL: From kirby.urner at gmail.com Tue Jun 17 05:34:55 2008 From: kirby.urner at gmail.com (kirby urner) Date: Mon, 16 Jun 2008 20:34:55 -0700 Subject: [Edu-sig] Edu-sig Digest, Vol 59, Issue 6 In-Reply-To: <716dd5b60806161739k51e0ee9cwee0073f394f5cfea@mail.gmail.com> References: <716dd5b60806161739k51e0ee9cwee0073f394f5cfea@mail.gmail.com> Message-ID: 2008/6/16 Albert Sweigart : > Hello all, << SNIP >> > I noticed that there was a large gap in this area, one that used to be > filled by BASIC books (the old BASIC games books like the ones at > atariarchives.org especially). It seems that many kids today learn > programming on their TI graphing calculators or learn HTML/Javascript, or > get one of the many game creation kits out there. Apropos of this GameMaker has been quite popular in Portland, as a course offering, and does lead to real programming skills, from what I've observed (I've turned down a chance to teach it myself, as I'm just not strong with this product). JavaScript is quite a decent way to learn programming, especially with FireBug installed, as the web provides an obvious target for both gaining an audience and sharing worthwhile content, i.e. any local charity or union hall, grange or whatever, could probably use a new web page, plus there're always those garage bands -- ah, but who will do that poster art? *that* takes real skill :). Saying "HTML/JavaScript" makes a lot sense, as you'll be wanting to embed your scripting in the XML format, plus you're in command of the DOM, the XML you're embedded in. It's really a hybrid, a markup with smarts. The TI graphing calculator... I'd not include that in a list of computer topics. BASIC used to be it. Salon suggests Python is *not* the successor to BASIC, and I'd have to agree.** This idea of "the one" that "everyone needs to learn" is for the birds, and I hope Python never becomes that. Any language forced on students as a "must learn" quickly grows to be hated. Fortunately, Python was written for experience programmers and may *not* be best as a first language. Heck, learn BASIC why not? Or JavaScript. Get to Python later, it's not going anywhere. Or Logo. Scheme maybe... Actually, my real position is it's good to start *sampling* Python quite early, but then I don't go along with forcing a commitment, to any language, on anyone below the age of legal consent. Sounds like a joke, but I'm basically just saying I'm against bullying, go out of my way to protect kid freedoms (animals too -- under represented IMO, more in my blogs). Kirby Urner Portland, OR PS: I understand that with Silverlight there might be more client-side Python going on? I'm likely falling behind in this area, having been buried in other job worlds of late. Queued: http://blogs.msdn.com/cbowen/archive/2007/08/28/ironpython-and-silverlight-resources.aspx ** """ The "scripting" languages that serve as entry-level tools for today's aspiring programmers -- like Perl and Python -- don't make this experience accessible to students in the same way. BASIC was close enough to the algorithm that you could actually follow the reasoning of the machine as it made choices and followed logical pathways. Repeating this point for emphasis: You could even do it all yourself, following along on paper, for a few iterations, verifying that the dot on the screen was moving by the sheer power of mathematics, alone. Wow! (Indeed, I would love to sit with my son and write "Pong" from scratch. The rule set -- the math -- is so simple. And he would never see the world the same, no matter how many higher-level languages he then moves on to.) """ Why Johnny can't code BASIC used to be on every computer a child touched -- but today there's no easy way for kids to get hooked on programming. By David Brin http://www.salon.com/tech/feature/2006/09/14/basic/index.html From andre.roberge at gmail.com Tue Jun 17 12:25:24 2008 From: andre.roberge at gmail.com (Andre Roberge) Date: Tue, 17 Jun 2008 07:25:24 -0300 Subject: [Edu-sig] Edu-sig Digest, Vol 59, Issue 6 In-Reply-To: <716dd5b60806161739k51e0ee9cwee0073f394f5cfea@mail.gmail.com> References: <716dd5b60806161739k51e0ee9cwee0073f394f5cfea@mail.gmail.com> Message-ID: <7528bcdd0806170325h24cc2d19mf107a5244b57ed6b@mail.gmail.com> 2008/6/16 Albert Sweigart : [snip] > > My book (Invent Your Own Computer Games with Python) focuses on complete > examples of games, and explain programming principles from them. The games > are simple (text-based ASCII art graphics, no GUIs or images) and complete > (the longest is about 400 lines, including whitespace). The book is designed > to be easy enough for 9 to 12 year olds to understand. > > The book, in HTML and PDF format, and all the games are located here: > http://pythonbook.coffeeghost.net > > I'm planning on doing more books at some point in the future after getting > feedback. > First of all, thank you for your work and making this available. I first saw a link to your book on del.icio.us and read *quickly* through a few sections of a few chapters. My first reaction was "hmm, no graphics ... I wonder how that would interest kids nowadays...". However, after looking at the beginning of the last two chapters, I thought that this approach could very well work. Overall, it looked like a good progression of topics and something very much worthwhile. Still, I think that it might be useful to include at least one graphics based game. I would suggest to implement the Othello program using pyglet (www.pyglet.org), introducing it at the very end. Actually, I would have the kids download the finished Othello project and pyglet at the beginning, just to try it out, and point out that this is the game that they would be writing on their own at the end. Just a thought... I should read it more closely to give you some more detailed feedback. Cheers, Andr? > Thank you! > Al Sweigart > > _______________________________________________ > Edu-sig mailing list > Edu-sig at python.org > http://mail.python.org/mailman/listinfo/edu-sig > > From kirby.urner at gmail.com Tue Jun 17 23:07:57 2008 From: kirby.urner at gmail.com (kirby urner) Date: Tue, 17 Jun 2008 14:07:57 -0700 Subject: [Edu-sig] Edu-sig Digest, Vol 59, Issue 6 In-Reply-To: <716dd5b60806161739k51e0ee9cwee0073f394f5cfea@mail.gmail.com> References: <716dd5b60806161739k51e0ee9cwee0073f394f5cfea@mail.gmail.com> Message-ID: > I'm planning on doing more books at some point in the future after getting > feedback. > > Thank you! > Al Sweigart Hello Al -- So now I've spent some more time with the book, and have to say like the colorful pictures (screen shots in some cases), an asset the Web so easily permits (almost cost free to get pixels splashed on screen, whereas printing so many colors in wood pulp was always prohibitive unless you were Time/Life or whatever). You could serialize in magazines, do columns, same format. I'd say your take on Python is what many novices will be wanting and expecting, especially if previously exposed to BASIC, in that you have line numbering and put executable statements top level, with functions like subprocedures, not even a main() usually -- not strictly C family aesthetics, nor the Pythonic idea of a modular grab-bag, no top-to-bottom scripting needed (math.py an example, string.py etc. -- tropical fish in aquarium model: just feed the functions directly, no raw_input required (in open source world, you get to see what's there, so not so reliant on hand-holding prompts as in the early days, when "the user" had to fly blind, the executable a mystery black box)). I'm impressed that you tackle Othello, don't stop at Tic-Tac-Toe! I'd say this is more a book about programming in general, in a particular style that cuts across languages (Pascal... FORTRAN). I say this because I don't see much focus on OO, a signature top-level in Python, from whence derives the logic of dot notation (type/class unification i.e. "low level data structures" and "user space creatures" both inheriting from the same archetype, share that __rib__ cage idea). And that's not a criticism, and in keeping with my own guidelines, favoring *sampling* Python but not committing too early, no time pressure on choosing "the one", books such as yours will be favorites for some kinds of kid. BASIC still has a future probably, given the success of recent versions (Logo too I think). I'd encourage you to keep exploring in that direction, as you clearly have a lot of experience behind you. There's a lot of lore to pass down (more than any one of us could ever manage to communicate). Kirby From echerlin at gmail.com Wed Jun 18 02:33:46 2008 From: echerlin at gmail.com (Edward Cherlin) Date: Tue, 17 Jun 2008 17:33:46 -0700 Subject: [Edu-sig] Edu-sig Digest, Vol 59, Issue 6 In-Reply-To: <7528bcdd0806170325h24cc2d19mf107a5244b57ed6b@mail.gmail.com> References: <716dd5b60806161739k51e0ee9cwee0073f394f5cfea@mail.gmail.com> <7528bcdd0806170325h24cc2d19mf107a5244b57ed6b@mail.gmail.com> Message-ID: On Tue, Jun 17, 2008 at 3:25 AM, Andre Roberge wrote: > 2008/6/16 Albert Sweigart : > > [snip] >> >> My book (Invent Your Own Computer Games with Python) focuses on complete >> examples of games, and explain programming principles from them. The games >> are simple (text-based ASCII art graphics, no GUIs or images) and complete >> (the longest is about 400 lines, including whitespace). The book is designed >> to be easy enough for 9 to 12 year olds to understand. Schoolchildren in the One Laptop Per Child program are writing graphical games in PyGame. http://wiki.laptop.org/go/Pygame http://www.olpcnews.com/content/games/laptop_game_jam.html >> The book, in HTML and PDF format, and all the games are located here: >> http://pythonbook.coffeeghost.net >> >> I'm planning on doing more books at some point in the future after getting >> feedback. >> > First of all, thank you for your work and making this available. > > I first saw a link to your book on del.icio.us and read *quickly* > through a few sections of a few chapters. My first reaction was "hmm, > no graphics ... I wonder how that would interest kids nowadays...". > However, after looking at the beginning of the last two chapters, I > thought that this approach could very well work. > > Overall, it looked like a good progression of topics and something > very much worthwhile. Still, I think that it might be useful to > include at least one graphics based game. I would suggest to > implement the Othello program using pyglet (www.pyglet.org), > introducing it at the very end. Actually, I would have the kids > download the finished Othello project and pyglet at the beginning, > just to try it out, and point out that this is the game that they > would be writing on their own at the end. > > Just a thought... I should read it more closely to give you some > more detailed feedback. > > Cheers, > > Andr? > > >> Thank you! >> Al Sweigart >> >> _______________________________________________ >> Edu-sig mailing list >> Edu-sig at python.org >> http://mail.python.org/mailman/listinfo/edu-sig -- Edward Cherlin End Poverty at a Profit by teaching children business http://www.EarthTreasury.org/ "The best way to predict the future is to invent it."--Alan Kay From kirby.urner at gmail.com Thu Jun 19 18:23:07 2008 From: kirby.urner at gmail.com (kirby urner) Date: Thu, 19 Jun 2008 09:23:07 -0700 Subject: [Edu-sig] Pygame etc. Message-ID: > Schoolchildren in the One Laptop Per Child program are writing > graphical games in PyGame. > > http://wiki.laptop.org/go/Pygame > http://www.olpcnews.com/content/games/laptop_game_jam.html > Of course there's a lot of mythology about what schoolchildren are and aren't doing out there in the misty mountains of Peru or whatever, maybe getting Pippy booted up, reading about Fibonacci numbers, Pascal's triangle, turning to generator-based versions. Actually, learning about the stomach was a first exercise, once the dish was working, our chief of security Krsti? (erstwhile) nearly breaking his neck during the install process (certainly risking it). http://radian.org/notebook/first-deployment In actual fact, Pygame is a rather low level API. A lot of what happens with Python is veteran C coders with SDL kudos or whatever, find to their relief a relatively painless way to turn fast code into an importable module within a "slow" interpreted RAD language. But so much game action isn't about "superhuman speed" -- just plod along with your human user, 99% wait cycles, and you'll be fine. So it turns out to *not* be so oxymoronic, to have game bindings for a relatively slow but intelligent snake, other scripting languages also. (IronScheme?). Here's a good example of when it makes sense to form a hybrid, in this case machine-facing system language with coder-facing agile (doesn't get all coders off the hook from learning low level languages -- just some of 'em). Guido, recall, was in a busy environment full of technophiles, familiar with ABC, when he went off to write Python on a Lisa. His "end users" weren't children, but experienced computerists, maybe with foci in sciences, mathematics... die-hard nerds already, geeks, not newbies. This is what Arthur (previously on edu-sig, lots in the archive) really *liked* about Python, and he let us know he'd fight any effort to dumb it down, make it "kid friendly" in a condescending way (like Alice in his view -- which I defended, because I'm a cartoon nut, love the idea of PySpongeBob). Better to have kids come to love adult tools of the trade was his attitude -- even wait until they're adults if that's what it takes.** But of course no one wants to wait that long. The dream has always been: more computing power to those who want it, no matter how young. We'll get XOs in utero (with mom's permission) if that's the genetic predisposition of the fetus (i/o hooks to umbilical cord?) -- a twisted geek fantasy I realize, OK to LOL. More seriously, Sugar itself is a lot like a Pygame creation, a 2D iPod-like interface with apps running as pie wedges, helping with the metaphor of finite memory (in a ring), but sure why not run several. This isn't a "toy" interface -- extremely futuristic in a direction I think we *are* set to go, Sugar a brilliant first draft of itself (with many forks and rebrandings as we go forward). Python is very lucky to be getting such a workout, in the hands of so many masters of their craft. http://worldgame.blogspot.com/2008/04/more-on-interface-design.html Back to Python books, I think the web edition format is best during the transition, as all those print statements are about to switch over to functional format as in "print( jabber jabber)" -- intead of "print jabber jabber". Why waste a lot of paper teaching newbies 2.x? Of course they'll need to learn retro dialects once making the commitment to Python more professionally (a huge "if" in many cases -- as it should be), but there's no reason not to go with "state of the art" on intro. That's a privilege of being a newbie: no ties to the past, no obligations, free to cut to the head of the line in some ways (in terms of using the most up to date code). Actually, now is a good time for CS departments to watch something special, as having a live, happy language also be such a moving target (a morpher, a transformer), in terms of jumping a chasm, from ASCII to Unicode, dropping cruft, sleeking out... that doesn't happen every day. Most languages of Python's maturity are considered "quasi-frozen" by the time they get to this point. "Shedding skin" wasn't an option, but Guido had this pre-announced break point (good model, now that we see the pay off). So those teaching "anthropology of computer language cultures" or whatever UC-type stuff, might use this as an opportunity, lots of interesting zine articles (adapted for-credit papers) just begging to be written (and published even!). Kirby PS: the Europython list is making me homesick for Vilnius, I should sign off rather than read about taxi cabs from the airport, but actually no, I'd rather stay tuned, plan to visit her again someday. ** Arthur was a financial sector guy near what used to be called the Pan Am building when we first met, had some beers. Much later we met up with Lansky and his boys, different part of Manhatten, had great free ranging talk on the meaning of liberal arts, C.P. Snow's chasm etc. Arthur was a strong player, miss him on edu-sig (sudden heart attack, like Russert). >>> The book, in HTML and PDF format, and all the games are located here: >>> http://pythonbook.coffeeghost.net >>> >>> I'm planning on doing more books at some point in the future after getting >>> feedback. >>> >> First of all, thank you for your work and making this available. >> >> I first saw a link to your book on del.icio.us and read *quickly* >> through a few sections of a few chapters. My first reaction was "hmm, >> no graphics ... I wonder how that would interest kids nowadays...". >> However, after looking at the beginning of the last two chapters, I >> thought that this approach could very well work. >> >> Overall, it looked like a good progression of topics and something >> very much worthwhile. Still, I think that it might be useful to >> include at least one graphics based game. I would suggest to >> implement the Othello program using pyglet (www.pyglet.org), >> introducing it at the very end. Actually, I would have the kids >> download the finished Othello project and pyglet at the beginning, >> just to try it out, and point out that this is the game that they >> would be writing on their own at the end. >> >> Just a thought... I should read it more closely to give you some >> more detailed feedback. >> >> Cheers, >> >> Andr? >> >> >>> Thank you! >>> Al Sweigart >>> >>> _______________________________________________ >>> Edu-sig mailing list >>> Edu-sig at python.org >>> http://mail.python.org/mailman/listinfo/edu-sig > > -- > Edward Cherlin > End Poverty at a Profit by teaching children business > http://www.EarthTreasury.org/ > "The best way to predict the future is to invent it."--Alan Kay > _______________________________________________ > Edu-sig mailing list > Edu-sig at python.org > http://mail.python.org/mailman/listinfo/edu-sig > From kirby.urner at gmail.com Mon Jun 23 02:49:49 2008 From: kirby.urner at gmail.com (kirby urner) Date: Sun, 22 Jun 2008 17:49:49 -0700 Subject: [Edu-sig] Cardinality vs. Ordinality (teaching with Python) Message-ID: Per my blog post of earlier today, I'm continuing to seek hooks in CS that'll help with a more MBA type curriculum, per recent sponsorships, and one of those hooks is "sorting", a paradigm activity in CS that typifies why we pay for computer services i.e. fast sorting capabilities are in some sense the sine qua non of computing. The whole idea of "keeping tabs" (Hollerith machine) relates to retrieving just the right punch cards based on whether a certain hole (or holes) obtain. http://worldgame.blogspot.com/2008/06/energy-economics.html Per an elementary mathematics curriculum, cardinality is about distinguishing objects (in memory, in inventory) without attempting a ranking, i.e. we might tell objects apart (Python's "is") without requiring sortability, whereas ordinality is all about ranking or arranging along an axis (a spectrum) from most to least (or the reverse) in some dimension (i.e. according to some measure). Cardinality: identifiers, location, uniqueness, same/different (==, is) Ordinality: ranking, comparison, more/less ( >, <) Cardinality is sufficient to sustain "matching" i.e. find the one needle in this haystack, the one book in this library, that matches whatever criteria. SQL is in principle able to pull a result set minus any primary key or global sort order, based simply on boolean filtering. The idea of "a sort" is it helps with matching in some cases i.e. speeds retrieval; instead of looking at each book title, you go right to it based on some addressing scheme (an alphabetical sort is a paradigm example).** Apropos of this, we don't define complex numbers according to rank, meaning we don't allow <, > (but do allow ==). >>> 1j > 2j Traceback (most recent call last): File "", line 1, in 1j > 2j TypeError: no ordering relation is defined for complex numbers >>> 1j + 1j == 2J True Ordinality implies the possibility of multiple axes, which Python helps describe by giving us the "key" parameter when sorting. But before we get to multiple keys, we'll probably want to demonstrate operator overloading with respect to >, < and == with basic Items i.e. some minimal class of object. Note that Python 3000 no longer includes __cmp__ so you need to do something more like: >>> class Item: def __gt__(self,other): return self.rank > other.rank def __lt__(self,other): return self.rank < other.rank def __eq__(self,other): return self.rank==other.rank >>> a,b,c,d = Item(), Item(), Item(), Item() >>> a.rank = 5 >>> b.rank = 4 >>> c.rank = 1 >>> d.rank = 2 >>> theitems = [a,b,c,d] >>> theitems [<__main__.Item object at 0x83cc30c>, <__main__.Item object at 0x83cc24c>, <__main__.Item object at 0x83cc26c>, <__main__.Item object at 0x83cc4ac>] >>> sorted(theitems) [<__main__.Item object at 0x83cc26c>, <__main__.Item object at 0x83cc4ac>, <__main__.Item object at 0x83cc24c>, <__main__.Item object at 0x83cc30c>] Key: >>> a <__main__.Item object at 0x83cc30c> >>> b <__main__.Item object at 0x83cc24c> >>> c <__main__.Item object at 0x83cc26c> >>> d <__main__.Item object at 0x83cc4ac> Kirby ** just because there's an addressing scheme e.g. organization, even a global one, doesn't mean there's a ranking in the sense of greater and less than. This gets us into deeper mathematical concepts e.g. of "a metric" wherein it's easy to talk about relative proximity, what's touching vs. not touching, without suggesting a global ranking. In CS, networks and trees (as a subclass of network) suggest retrieval strategies i.e. you can get around on New York subways, using a subway map, but there's no need to define > or < except maybe in terms of distance and/or time and/or number of stops between any two stations. The idea of "pure cardinality" might be "named stars" with constellations (networks) introducing early retreivability i.e. two navigators talk about the same star by saying "the bear's nose" or whatever. Web pages and search algorithms give another take on cardinality vs. ordinality. From echerlin at gmail.com Sat Jun 28 01:11:32 2008 From: echerlin at gmail.com (Edward Cherlin) Date: Fri, 27 Jun 2008 16:11:32 -0700 Subject: [Edu-sig] Pygame etc. In-Reply-To: References: Message-ID: 2008/6/19 kirby urner : >> Schoolchildren in the One Laptop Per Child program are writing >> graphical games in PyGame. >> >> http://wiki.laptop.org/go/Pygame >> http://www.olpcnews.com/content/games/laptop_game_jam.html >> > > Of course there's a lot of mythology about what schoolchildren are and > aren't doing out there in the misty mountains of Peru or whatever, > maybe getting Pippy booted up, reading about Fibonacci numbers, > Pascal's triangle, turning to generator-based versions. That's why I prefer to point people to real reports where they can, if they like, talk to some of the people concerned. We have a few Wiki pages now, notably http://wiki.laptop.org/go/Experience. Most of the material there is pre-XO, but new information is coming in. Also http://wiki.laptop.org/go/Academic_Papers, which has field reports on deployments in Ethiopia and New York City. They haven't gotten to programming yet. > In actual fact, Pygame is a rather low level API. I was making a contrast with the ASCII games in the book described. The children aren't ready for NumPy and SciPy, but that will come. > But so much game action isn't about "superhuman speed" -- just plod > along with your human user, 99% wait cycles, and you'll be fine. > > So it turns out to *not* be so oxymoronic, to have game bindings for a > relatively slow but intelligent snake, other scripting languages also. When Smalltalk first appeared, it took at least $10,000 worth of hardware to run it. Now we are down to $188 for something that also spends most of its time waiting between ticks. > Guido, recall, was in a busy environment full of technophiles, > familiar with ABC, when he went off to write Python on a Lisa. His > "end users" weren't children, but experienced computerists, maybe with > foci in sciences, mathematics... die-hard nerds already, geeks, not > newbies. Guido is a contributing member of BayPiggies (San Francisco Bay Area Python Interest Group) and a fan of the OLPC project. He came to my presentation on the XO, where I had my son demonstrating Pippy. I met Guido on a mailing list when we were both trying to compile Sugar on Debian. Neither of us succeeded at the time, yet today there are Sugar packages in Debian and Ubuntu, and Etoys has just been accepted (although as non-Free, because Debian and Etoys people are unclear on each other's concepts about the proper form for source code). > This is what Arthur (previously on edu-sig, lots in the archive) > really *liked* about Python, and he let us know he'd fight any effort > to dumb it down, make it "kid friendly" in a condescending way (like > Alice in his view -- which I defended, because I'm a cartoon nut, love > the idea of PySpongeBob). Dumb it down? Not going to happen. We're building a complete Python IDE for use in Sugar. There is good experience going back more than 40 years of introducing capable programming languages (Logo, LISP, Smalltalk, APL) in elementary schools. And by Logo I don't only mean Turtle Art. > Better to have kids come to love adult tools of the trade was his > attitude -- even wait until they're adults if that's what it takes.** > > But of course no one wants to wait that long. The dream has always > been: more computing power to those who want it, no matter how young. > We'll get XOs in utero (with mom's permission) if that's the genetic > predisposition of the fetus (i/o hooks to umbilical cord?) -- a > twisted geek fantasy I realize, OK to LOL. > > More seriously, Sugar itself is a lot like a Pygame creation, a 2D > iPod-like interface with apps running as pie wedges, helping with the > metaphor of finite memory (in a ring), but sure why not run several. > This isn't a "toy" interface -- extremely futuristic in a direction I > think we *are* set to go, Sugar a brilliant first draft of itself > (with many forks and rebrandings as we go forward). Python is very > lucky to be getting such a workout, in the hands of so many masters of > their craft. > > http://worldgame.blogspot.com/2008/04/more-on-interface-design.html > > Back to Python books, I think the web edition format is best during > the transition, Another project that comes out of OLPC is a complete redesign of the concept of a textbook. A PDF is already better than a printed book if your screen has adequate resolution (the XO does). For a start, PDFs can be hyperlinked, with full-text search. But what can a textbook be if every student has a computer with a known set of software capabilities? Sugar includes a digital oscilloscope program with both time and frequency domain display. How does that affect your physics textbooks, or for that matter, teaching music? What else can we use it for? What if all textbooks can assume the presence of Python with NumPy and SciPy? What if we can embed Dr Geo in geometry books, or a symbolic math engine in algebra, calculus, and science books? What if Text-to-Speech is always available to read material out loud, whether for those learning to read, or those who want to do something hands-free under computer guidance? Alan Kay does a great demo in which children are taught how to program a car on the screen in Smalltalk, and shown what happens if you add a constant increment to the speed of the car in each time interval. And also tell the car to put a dot on the screen before moving. Then the pattern of dots has well-known properties that the children can be led to discover: The intervals are as successive odd numbers, which sum to squares for the total distance travelled. Good. Now get the children outside with the camera function on their XOs enabled, and have them take a video of something being dropped from the school roof. Take frames at some regular interval, overlay them, and observe the locations of the object--the same pattern we got from the uniformly accelerated car! So we can teach ten-year-olds roughly how Galileo discovered the law of gravity for a uniform field. Galileo didn't have software or a camera, or even a clock, or any guidance. He had to slow the process down by rolling balls down a groove in a piece of wood and cutting notches every so often so that the ball would make a sound at each one. When he got the spacing right, so the the intervals between clicks were the same, he worked out the math from there. Of course he also worked out that uniform motion horizontally compounded with uniformly accelerated motion vertically gives you a parabola. We can demonstrate this trivially on the computer, but it is more interesting to ask children to watch water fountains, and to try to recognize the shape of the arc. This is something that the Greeks could have done, but missed. Being demonstrably smarter in a very specific way than Plato or Aristotle or Appolonius of Perga (author of The Conic Sections) is a rare treat for children. > as all those print statements are about to switch over > to functional format as in "print( jabber jabber)" -- intead of "print > jabber jabber". Why waste a lot of paper teaching newbies 2.x? Of > course they'll need to learn retro dialects once making the commitment > to Python more professionally (a huge "if" in many cases -- as it > should be), but there's no reason not to go with "state of the art" on > intro. That's a privilege of being a newbie: no ties to the past, no > obligations, free to cut to the head of the line in some ways (in > terms of using the most up to date code). We only have a few large deployments of XOs. Most will come after 3.0 comes out. > Actually, now is a good time for CS departments to watch something > special, as having a live, happy language also be such a moving target > (a morpher, a transformer), in terms of jumping a chasm, from ASCII to > Unicode, dropping cruft, sleeking out... that doesn't happen every > day. Most languages of Python's maturity are considered > "quasi-frozen" by the time they get to this point. "Shedding skin" > wasn't an option, but Guido had this pre-announced break point (good > model, now that we see the pay off). > > So those teaching "anthropology of computer language cultures" or > whatever UC-type stuff, might use this as an opportunity, lots of > interesting zine articles (adapted for-credit papers) just begging to > be written (and published even!). > > Kirby > > PS: the Europython list is making me homesick for Vilnius, My grandfather was from Vilnius. You might like to check out Andrius Kulikauskus's Minciu Sodas, which is based there. > I should > sign off rather than read about taxi cabs from the airport, but > actually no, I'd rather stay tuned, plan to visit her again someday. > > ** Arthur was a financial sector guy near what used to be called the > Pan Am building when we first met, had some beers. Much later we met > up with Lansky and his boys, different part of Manhatten, had great > free ranging talk on the meaning of liberal arts, C.P. Snow's chasm > etc. Arthur was a strong player, miss him on edu-sig (sudden heart > attack, like Russert). > >>>> The book, in HTML and PDF format, and all the games are located here: >>>> http://pythonbook.coffeeghost.net >>>> >>>> I'm planning on doing more books at some point in the future after getting >>>> feedback. >>>> >>> First of all, thank you for your work and making this available. >>> >>> I first saw a link to your book on del.icio.us and read *quickly* >>> through a few sections of a few chapters. My first reaction was "hmm, >>> no graphics ... I wonder how that would interest kids nowadays...". >>> However, after looking at the beginning of the last two chapters, I >>> thought that this approach could very well work. >>> >>> Overall, it looked like a good progression of topics and something >>> very much worthwhile. Still, I think that it might be useful to >>> include at least one graphics based game. I would suggest to >>> implement the Othello program using pyglet (www.pyglet.org), >>> introducing it at the very end. Actually, I would have the kids >>> download the finished Othello project and pyglet at the beginning, >>> just to try it out, and point out that this is the game that they >>> would be writing on their own at the end. We could use an Othello in Sugar, and lots of other games. I have books and books full of card games, board games, math games...African games like Mancala and Mlabalaba, classic games like Go, any of the games already available as Free Software...Anybody who is short of ideas for themselves or for students can ask me about them. We also need people to work on game infrastructure, like a collaboration framework that supports viewing and kibitzing without the players seeing the comments. Something that many online game servers provide for chess, go, bridge... >>> Just a thought... I should read it more closely to give you some >>> more detailed feedback. >>> >>> Cheers, >>> >>> Andr? >>> >>> >>>> Thank you! >>>> Al Sweigart -- Edward Cherlin End Poverty at a Profit by teaching children business http://www.EarthTreasury.org/ "The best way to predict the future is to invent it."--Alan Kay From kirby.urner at gmail.com Sat Jun 28 02:34:23 2008 From: kirby.urner at gmail.com (kirby urner) Date: Fri, 27 Jun 2008 17:34:23 -0700 Subject: [Edu-sig] Pygame etc. In-Reply-To: References: Message-ID: On Fri, Jun 27, 2008 at 4:11 PM, Edward Cherlin wrote: > 2008/6/19 kirby urner : << SNIP >> >> PS: the Europython list is making me homesick for Vilnius, > > My grandfather was from Vilnius. You might like to check out Andrius > Kulikauskus's Minciu Sodas, which is based there. > Hey thanks for that informative posting Edward, lots I didn't know mixed with some familiar stuff I enjoy revisiting. My overlap with Alan Kay was courtesy of Mark Shuttleworth who threw together this high powered meeting in London aimed at thinking through a strategy for South Africa (some government representation, other private sector). We pow wowed for about 2.5 days, Gunner clerking.[1] I blogged about it live at the time [2] plus have had some time to reflect since then, lots of field testing ideas. I haven't been the South Africa in the interim (used to go there more often when my parents lived in Lesotho) but do check on Kusasa from time to time, to see how it's going.[3] Love them Freedom Toasters! [4] Kirby [1] http://www.facebook.com/profile.php?id=708462278 [2] http://controlroom.blogspot.com/2006/04/shuttleworth-summit-day-two.html [3] http://www.kusasa.org/ [4] http://controlroom.blogspot.com/2008/05/legally-free.html From echerlin at gmail.com Sat Jun 28 04:33:04 2008 From: echerlin at gmail.com (Edward Cherlin) Date: Fri, 27 Jun 2008 19:33:04 -0700 Subject: [Edu-sig] Pygame etc. In-Reply-To: References: Message-ID: On Fri, Jun 27, 2008 at 5:34 PM, kirby urner wrote: > On Fri, Jun 27, 2008 at 4:11 PM, Edward Cherlin wrote: >> 2008/6/19 kirby urner : > > << SNIP >> > >>> PS: the Europython list is making me homesick for Vilnius, >> >> My grandfather was from Vilnius. You might like to check out Andrius >> Kulikauskus's Minciu Sodas, which is based there. >> > > Hey thanks for that informative posting Edward, lots I didn't know > mixed with some familiar stuff I enjoy revisiting. A pleasure. > My overlap with Alan Kay was courtesy of Mark Shuttleworth who threw > together this high powered meeting in London aimed at thinking through > a strategy for South Africa (some government representation, other > private sector). Andrius, I, and a fairly high-powered group of others have been working on a strategy for the world. The basic elements that I am working on right now are renewable electric power, WiMax for Internet connections, microfinance, and OLPC. Later I propose to work on linking schools around the world and teaching the students how to go into business together. Each component supports the others better than linearly to increase the community's total access to economic opportunity even in the poorest and most remote villages. We have others working on community, agriculture, health, and various other components of a complete set of solutions. > We pow wowed for about 2.5 days, Gunner clerking.[1] Your plan looks interesting. I have Wikied some thoughts about what textbooks should turn into when we have a known software base including SciPy, and also some thoughts about what should happen to the curriculum as we find out more about how to make subjects accessible at ever-earlier ages. There is some work on Kindegarten Calculus, for example, teaching the concepts but not the apparatus. Alan Kay has a demo in which ten-year olds are pointed in two directions, in simulation and in real life, and then encouraged to combine the results in order to figure out that Galilean gravity means constant acceleration. If you then get children to look at water fountains (something the Greeks failed to notice properly) and show them how to model Galilean relativity with constant horizontal motion, they get to discover parabolic motion. Relating that to conic sections visually is easy, but the proofs have to wait until later. > I blogged about it live at the time [2] plus have had some time to > reflect since then, lots of field testing ideas. > > I haven't been the South Africa in the interim (used to go there more > often when my parents lived in Lesotho) but do check on Kusasa from > time to time, to see how it's going.[3] Love them Freedom Toasters! > [4] > > Kirby > > [1] http://www.facebook.com/profile.php?id=708462278 > [2] http://controlroom.blogspot.com/2006/04/shuttleworth-summit-day-two.html > [3] http://www.kusasa.org/ > [4] http://controlroom.blogspot.com/2008/05/legally-free.html > -- Edward Cherlin End Poverty at a Profit by teaching children business http://www.EarthTreasury.org/ "The best way to predict the future is to invent it."--Alan Kay From kirby.urner at gmail.com Sat Jun 28 04:58:16 2008 From: kirby.urner at gmail.com (kirby urner) Date: Fri, 27 Jun 2008 19:58:16 -0700 Subject: [Edu-sig] Pygame etc. In-Reply-To: References: Message-ID: On Fri, Jun 27, 2008 at 7:33 PM, Edward Cherlin wrote: > Andrius, I, and a fairly high-powered group of others have been > working on a strategy for the world. The basic elements that I am > working on right now are renewable electric power, WiMax for Internet > connections, microfinance, and OLPC. Later I propose to work on > linking schools around the world and teaching the students how to go > into business together. Each component supports the others better than > linearly to increase the community's total access to economic > opportunity even in the poorest and most remote villages. We have > others working on community, agriculture, health, and various other > components of a complete set of solutions. I agree with the need for an integrated approach. My paper for the Shuttleworth Summit had a lot about using energy as a unifying concept (not an original idea) and linking energy to money (also not original with me -- part of the systems theory movement within economics, tracing back through Kenneth Boulding and others, as you probably know).[1] > Your plan looks interesting. I have Wikied some thoughts about what > textbooks should turn into when we have a known software base > including SciPy, and also some thoughts about what should happen to > the curriculum as we find out more about how to make subjects > accessible at ever-earlier ages. There is some work on Kindegarten > Calculus, for example, teaching the concepts but not the apparatus. > Alan Kay has a demo in which ten-year olds are pointed in two > directions, in simulation and in real life, and then encouraged to > combine the results in order to figure out that Galilean gravity means > constant acceleration. If you then get children to look at water > fountains (something the Greeks failed to notice properly) and show > them how to model Galilean relativity with constant horizontal motion, > they get to discover parabolic motion. Relating that to conic sections > visually is easy, but the proofs have to wait until later. My sense of it is that lesson planners around the world are not waiting for any consensus to emerge, are just barreling ahead. Did you know RMS was through Sri Lanka in January? Great FOSS community in that neck of the woods. Anyway, it's great as a gnu math teacher ([nt] -- not trademarked), to be able to take advantage of a fully enabled web browser (Java, Shockwave, Flash... Crunchy Frog) if fortunate, even more goodies if more fortunate still (I enjoy lending my XO to children, just got it back from Baibi (long way to go [2])). I'm mostly focusing close to home with my field testing (lots of reports in my journals), as this is the bioregion / economy I'm already the most integrated into, plus Portland's been called an "open source capital" (so why would I want to move?) but I'm certainly sharing ideas with counterparts elsewhere (lots of two way streets). We've got a charter high school running Edubuntu, which I hope gets some attention at the upcoming Ubuntu conference (coincides with OSCON). I've been working the TECC in Alaska which I talk about in my Chicago talk, congrats to Anna on passing that test (we talked today).[3][4] Still not sure how Pythonic we'll get with those, whereas with Saturday Academy I've trailblazed rather extensively, taking a break this summer though.[5] Kirby [1] http://urnerk.webfactional.com/presentations/urnermindstorm.pdf [2] http://worldgame.blogspot.com/2008/04/quaker-spectrum.html [3] http://youtube.com/watch?v=hbeHdg8mtdc [4] http://tecc-alaska.org/ [5] http://www.saturdayacademy.org/ > > -- > Edward Cherlin > End Poverty at a Profit by teaching children business > http://www.EarthTreasury.org/ > "The best way to predict the future is to invent it."--Alan Kay >