From mtobis at gmail.com Fri Jun 1 03:29:08 2007 From: mtobis at gmail.com (Michael Tobis) Date: Thu, 31 May 2007 20:29:08 -0500 Subject: [Edu-sig] [python-advocacy] education as Python killer app In-Reply-To: <565566.68512.qm@web54206.mail.re2.yahoo.com> References: <43c8685c0705302326q59dda561jbb38dc262b4a05bc@mail.gmail.com> <565566.68512.qm@web54206.mail.re2.yahoo.com> Message-ID: As I understand it, raw_input will be renamed input in 3.0, and the function currently implemented as input would go away, requiring you to invoke eval(input("prompt")) if you need its functionality. Thus, the PEP text you quote doesn't correspond to my understanding, based on what I took from GvR's keynote at PyCon. However, this is off topic for these lists and would be better taken up on c.l.p. where someone in the know will be sure to clarify the matter. mt On 5/31/07, hwg wrote: > This quote is from a PEP which argues for keeping some form of raw_input(): > > The proposed plans for Python 3.0 would require the replacement > of the single statement > > speed = raw_input("What is the average airspeed velocity of an unladed > swallow?") > > by the more complicated > > import sys > print("What is the average airspeed > velocity of an unladed swallow?") From kirby.urner at gmail.com Fri Jun 1 23:34:26 2007 From: kirby.urner at gmail.com (kirby urner) Date: Fri, 1 Jun 2007 14:34:26 -0700 Subject: [Edu-sig] [python-advocacy] education as Python killer app In-Reply-To: References: <43c8685c0705302326q59dda561jbb38dc262b4a05bc@mail.gmail.com> <565566.68512.qm@web54206.mail.re2.yahoo.com> Message-ID: > > import sys > > print("What is the average airspeed > > velocity of an unladed swallow?") This dunna look right Kiptin <-- Scotty voice. Also keep in mind that some courseware just comes with its 2.x version of Python, that we're not force marching so much as leaving a trail of very usable dialects. It's so easy to install multiple Pythons, after all (easier than repointing all the old scripts to the newest interpreter and library). Kirby From lac at openend.se Sat Jun 2 09:22:05 2007 From: lac at openend.se (Laura Creighton) Date: Sat, 02 Jun 2007 09:22:05 +0200 Subject: [Edu-sig] [python-advocacy] education as Python killer app In-Reply-To: Message from "Michael Tobis" of "Thu, 31 May 2007 20:29:08 CDT." References: <43c8685c0705302326q59dda561jbb38dc262b4a05bc@mail.gmail.com> <565566.68512.qm@web54206.mail.re2.yahoo.com> Message-ID: <200706020722.l527M5jD001448@theraft.openend.se> In a message of Thu, 31 May 2007 20:29:08 CDT, "Michael Tobis" writes: >As I understand it, raw_input will be renamed input in 3.0, and the >function currently implemented as input would go away, requiring you >to invoke eval(input("prompt")) if you need its functionality. Thus, >the PEP text you quote doesn't correspond to my understanding, based >on what I took from GvR's keynote at PyCon. > >However, this is off topic for these lists and would be better taken >up on c.l.p. where someone in the know will be sure to clarify the >matter. > >mt Actually, this is on-topic for edu-sig. And the person who knows the most about it you can find there -- Andr? Roberge. He had the same objections, and implemented this approved PEP http://www.python.org/dev/peps/pep-3111/ with Guido von Rossum at PyCon this year. Laura From kirby.urner at gmail.com Tue Jun 5 18:59:06 2007 From: kirby.urner at gmail.com (kirby urner) Date: Tue, 5 Jun 2007 09:59:06 -0700 Subject: [Edu-sig] More on the 'tourist' metaphor (vs. 'beginner') Message-ID: """ I use the word "tourist" a lot, and I think computer world is so huge that we're all tourists in big parts of it, when we wander far afield (to be encouraged -- changes are we bring back new insights, or maybe even move the home office). A tourist in Python Nation might be a high mucky muck in the Republic of Perl (they actually have their own names for these things). ... And when you're not a tourist anymore, what are you? Maybe a neighbor, a local, or "on staff" in some way -- different terms apply, depending on the namespace. I've you're a master of Python, you might be a snake charmer in my book. """ url1 = "http://mail.python.org/pipermail/advocacy/2007-May/000243.html" """ I had opportunity to use the above "tourism" meme in my blog the other day, with reference to Pioneer Century, an organized cycling event. In this event, I was ostensibly one of the tourists, although like most the folks in this picture, I'm also an Oregonian who motored to the event parking lot. What I wrote in my blog: Only a few cyclists marred the event by disrespecting signage and taking to the middle of a busy highway. Local motorists, always courteous, put a bright face on these antics, accepting that some tourists may be prone to goofy behavior. """ url2 = "http://mail.python.org/pipermail/advocacy/2007-May/000243.html" """ Tinkering: """ >>> class Weird(str): def __new__(cls, arg): return str.__new__(cls, arg) def __mul__(self, arg): return self[arg] >>> somestring = Weird("this is a string") >>> somestring*10 's' >>> somestring*4:6 SyntaxError: invalid syntax >>> somestring*(4:6) SyntaxError: invalid syntax >>> slice >>> someslice = slice(5,7) >>> somestring*someslice 'is' >>> """ Kirby """ From kirby.urner at gmail.com Tue Jun 5 20:01:45 2007 From: kirby.urner at gmail.com (kirby urner) Date: Tue, 5 Jun 2007 11:01:45 -0700 Subject: [Edu-sig] More on Tourism... Message-ID: Just to elaborate a little more, I think I'm in agreement with a lot of Pythoneers that it's more than just a computer language, this glue cohering our various Python-using communities (partially overlapping). It's a webspace (docs, PEPs), a shared namespace, an in-common history, players, characters (benevolent dictator)... the usual stuff of ethnography. I could also mention rituals: lightning talks, sprints, meetups, Zopefests. And then there's the language itself, with its many __ribs__. Part of that shared ethnography is Monty Python the comedy troupe, and I make a big deal out of explaining that at the start of my Python courses in part because it's a good segue into the whole idea of what a "namespace" is (a concept with currency in the XML community as well). However, Monty Python, though still a Broadway phenomenon ('Spamalot' on the marquee last time I was through, which was late last year, Eric Idle of IDLE fame in the credits), is not common knowledge among OLPC kids. Which is *not* to say I think we should drop it. On the contrary, with YouTube and the like, these allusions will become easier and more fun to explain (in the form of short clips, streaming media). Nevertheless, those kids in Cambodia just getting their laptops and cranking up to "learn programming" or whatever they're expected to do, aren't going to have this shared context of British comedy, at least not right away. All an OLPC kid might know, from cursory English, Amerish or perhaps some Caribbean brew, is that Pythons are a kind of snake (constrictors more specifically, not venemous). And a Ruby is a gemstone (usually red), like an emerald (green). A Perl is a valuable thing too (from oysters), but look how it's spelled (some won't notice or care about the difference though, leading to like Perl Divers in Panama -- a group of coders). Java is of course the legal drug. Geekdom more generally has experimented with martial arts metaphors, like kung fu (there was some TV show where the one geek had to admit the other geek had more of it -- was that a Buffy episode? Yes, I think it was). A reason there is many people, males often more overtly, like to display rank, often by means of costume (white, yellow, brown and black belts are just the beginning -- wait'll you see epaulets). http://images.google.com/images?hl=en&q=Epaulets http://www.amazon.com/exec/obidos/tg/detail/-/0618067469/thecostumersmani I'm not posing as the only answer man here, but I don't mind remaining a font of suggestions, as many others of us are. Lots of good suggestions come from edu-sig IMO, from many corners. My suggestion is to embrace the snake imagery whole heartedly and not just in the form of permuting and punning on Py. In my case, I actually have a constrictor in my office (my daughter will be buying a mouse for it on the way home from school today). It's not a Python though, but a baby Corn. Here's its picture: http://mybizmo.blogspot.com/2007/05/newest-family-member.html Not every culture is intrinsically snake friendly, depending on local myth and so on. But kids are typically open minded to fairy tales from other traditions, and that's what they see on satellite TV: mythologies from around the world, some rather alien-seeming. Rather than try to accommodate and "water down" the snake associations, for "marketing reasons", I think core Python culture should be unabashedly willing to help the snake world preserve itself and thrive. We respect and enjoy snakes. We don't teach mindless fear and panic ala 'Snakes on a Plane'. There's a link here to the word "geek" which implies "circus performer" if you study the etymology. Circus kids are likewise open minded and by definition friendly with animals (elephants, horses...), even if some freaks bite the heads off chickens on occasion (more geek etymology). This helps close the loop with comedy *troupe* and *flying circus.* Another suggestion. Snakes naturally bridge to dragons in all kinds of lore, much of it in the Fantasy section. A pro snake attitude translates to a pro dragon attitude. I won't try to unpack all the consequences in this post. I go into more depth in my talk proposal to Europython, which I'll eventually put at my website. Kirby From kirby.urner at gmail.com Fri Jun 8 20:17:15 2007 From: kirby.urner at gmail.com (kirby urner) Date: Fri, 8 Jun 2007 11:17:15 -0700 Subject: [Edu-sig] CGI with string.Template Message-ID: I've heard talk of retiring the string module but have a hard time believing it, given the potential of Template to make things easier for some of us. Just because all methods of the float type may be accessed using dot notation doesn't mean we want to get rid of 'import math'. Think of 'import string' as 'import math' for type str ( str instead of float, or cmath instead of math for type(1j)). Anyway, below I've appended a little script I wrote to keep my foot in the door once a scholarship became available (my company is private for-profit, looks at scholarships as accounts receivable for my skills as a teacher, consultant or whatever, for which DWA bills me out at a handsome rate (or so I like to suppose)). The more formal paper came later, once more details emerged. The Abstract was the last puzzle piece to fall in to place: Cutting and pasting from the PDF (sorry that doesn't look good): """ Abstract My paper for EuroPython 2005 explored what I call Pythonic Mathematics, a way of presenting pre-computer analytical content within the OO paradigm, including pre-college.1 This thinking informed my participation in Shuttleworth Foundation planning meetings and my presentation to the London Knowledge Lab in the following year.2 This year, I'm delving yet more deeply into Pythonic Math, while also weaving in some more cultural threads, especially the "design science" thread with its geodesic spheres and other graphical content, the theme of my OSCON 2005 presentation.3 I've been field testing these combinations in my home town of Portland, through a school called Saturday Academy.4 Whereas Guido named Python for Monty Python, begetting allusions which aren't going to go away, there's more we might do to make our snake come across as charming and smooth, not too slimy or oily (negative attributes customarily associated with snakes by the more snake-unfriendly).5 """ I'm down to hammering out details with local hoteliers at this point, may have lost the LOT flight (no one said anything bad about Warsaw, when I made inquiries on the EuroPython list -- there's a flight from Chicago). What I'll do for the talk is run Python's native itty bitty server and not depend on the Internet, and only for a little of the demo. I have my own expensive small travel projector, which I won't want to blow by giving it a wrong voltage, so I'm still stressing about adapters, transformers and what not. Maybe bringing the projector is a bad idea... My patter might be less about the code below, which is very simple and I'm not trying to be condescending, and more about how we might rank ISPs in terms of Python friendliness. It's already a minority of ISPs who allow account-owner script writers to run processes via ssh (considered a "geek level" task -- hardly, in and of itself). Of these, some keep a dusty old Python lying around, perhaps a 1.x, and think that ought be just fine fine. No string.Template. No lots of kwel stuff. So a first criterion for defining an ISP as Python-friendly might be: having a fairly current Python in /usr/bin or whatever, available to would-be scripters. Here's an example of an ISP that knows how to sound Python friendly (and I think they're quite sincere): http://www.webfaction.com/python-isp (not my ISP by the way, I have no known financial ties to this company (yet anyway)). Kirby ==== #!/usr/bin/python2.5 # Paper and .py module for Europython # by Kirby Urner, 4D Solutions # May 29, 2007 # If you run this in Python, you'll get my paper with a # two paragraph abstract. If you run it again, you'll # get the same abstract, with the other paragraphs # reordered. # The primitive paragraph sequencer below suggests # a non-linear network for a model i.e. one that # "connects around in all circumferential directions" # (Fuller) as hypertext (http). # My Pythonic hypertoons take similar approach, but # with multiple passes through each node and more # clearly defined "edges" connecting them. Instead # of paragraphs, I've used geometric transitions in # VPython. I'd be happy to talk about these in a demo. # http://video.google.com/videosearch?q=hypertoons&hl=en # Shall I attach a bibliography of mostly URLs? import sys import cgitb; cgitb.enable() from random import shuffle from string import Template sys.stderr = sys.stdout webpage = Template( """Content-Type: text/html EuroPython Proposal

$Title

Abstract:
$Abstract

$Para0

$Para1

$Para2

$Para3

$Para4

""") nodeA = """ CP4E or Computer Programming for Everybody was Guido van Rossum's attempt to harness the power of Python to best advantage: let's use the charm of our snake to recruit more people into the circle of "knows how to program". Python isn't the only language suitable for CP4E work. The more the merrier in some ways, with Python always there as a potential glue language.""" nodeB = """ I came to Python as a former math teacher and career programmer, looking for ways to explore geometry. These were the early days of the Net and few Polyhedra were available, even as GIFs or JPEGs, let alone in VRML or as yet not invented X3D. I started in xBase with Visual FoxPro, then moved to Java then Python in short order. Python has been my top drawer language for geometry studies ever since.""" nodeC = """ Teachers are struggling with the puzzle of how to incorporate computing machines within a traditional curriculum inherited from times when "computers" were human beings, tasked with doing figures, quickly and accurately -- a clerical task. The schools were designed to mass produce future "computers" of the human variety. Then came many leaps in technology, and yet we're still stuck with much the same training in the early years. We waste students' time.""" nodeD = """ South Africa is one of those places where the disparity between have and have-not is huge, and education has no credibility unless it shows very clearly how it's designed to close that gap, including the so-called 'digital divide.' The Shuttleworth Foundation, in collaboration with others in the public and private sector, is prototyping Kusasa, a curriculum designed to teach mastery over the process of learning to use tools, including but not limited to computers.""" nodeE = """ The dream of giving each child access to powerful computing and communications devices, able to access the world's libraries, has bubbled to the surface again in the form of Negroponte of MIT's One Laptop per Child (OLPC) initiative. Alan Kay of SmallTalk fame has been another subscriber to this "Dynabook" vision and was present at a summit meeting in London, hosted by Mark Shuttleworth, designed to get Kusasa going. Guido van Rossum and myself came from the Python community. Others represented the South African government, academia, and other CP4E computer languages.""" nodeF = """ Not being a resident or citizen of South Africa, I've been working on a CP4E project in Portland, via Saturday Academy, to teach about the culture of open source collaboration, design science, and positive futurism. I draw from Guido's work, plus acknowledge Kenneth Iverson of APL fame as a major influence (he later gave us the J language in collaboration with Roger Hui and his son). I came away from the summit in London hoping to prototype Kusasa-like content in Oregon. I've been pretty successful in doing that.""" nodeG = """ Per my presentations at OSCON and EuroPython in 2005, I'm influenced by the Buckminster Fuller syllabus, a branch of American Transcendentalist literature. As a philosophy guy from Princeton, with a thesis on Wittgenstein, it was natural for me to look for contemporary philosophers and to study their work. This led me into Fuller's network and subsequent geometry studies, around the same time as I got a math teaching job at St. Dominic Academy in Jersey City, NJ. Although I later switched careers, I never lost my interest in this geometry, hence my search for a good computer language with which to pursue my studies.""" nodeH = """ OSCON, Pycons, and most recently Portland Barcamp have also taught me a lot, about geek culture and its collaboration tools. By working together, I think we can keep OLPC and CP4E in good working order, achieving positive results for people around the world. If you happen to be lucky enough to be using Python, then we already have many ideas on which you might build, to make teaching (including peer teaching) a potentially important and relevant part of your career. This is the subject of my talk.""" nodes = [nodeA, nodeB, nodeC, nodeD, nodeE, nodeF, nodeG, nodeH] abstract = "

%s

\n

%s

" % (nodeA, nodeH) shuffle(nodes) title = """ Paper and .py module for Europython 2007
by Kirby Urner, 4D Solutions
May 29, 2007

""" pagedict = {"Para0":nodes[0], "Para1":nodes[1], "Para2":nodes[2], "Para3":nodes[3], "Para4":nodes[4], "Para5":nodes[5], "Para6":nodes[6], "Para7":nodes[7], "Title":title, "Abstract":abstract} print webpage.substitute(pagedict) ==== Note subtle "bug" but I've decided to keep it: only five lucky paragraphs make the "top five" and get web served. The rest don't make the cut -- unless the user reloads, then maybe. A "reward" for those that do. From kirby.urner at gmail.com Mon Jun 11 02:46:42 2007 From: kirby.urner at gmail.com (kirby urner) Date: Sun, 10 Jun 2007 17:46:42 -0700 Subject: [Edu-sig] CGI with string.Template In-Reply-To: References: Message-ID: > The more formal paper came later, once more details emerged. > The Abstract was the last puzzle piece to fall in to place: > I didn't give the URL that time. Connecting the Dots... http://www.4dsolutions.net/presentations/urner_europython_2007.pdf Dr. Charles Bolton, professor emeritus of sociology just dropped by with two pages of single spaced comments, written on an old typewriter (yes, he's showing his age, late 70s I think, drives a Taurus wagon). I've excerpted a couple comments from his notes for sharing more widely: http://www.4dsolutions.net/presentations/bolton_re_ctd_2007.pdf I'm grateful to get his feedback. He has a lot of puzzle pieces, re some American thinkers especially. Helps add perspective, like Dr. Bob Fuller, also emeritus, provides re his mentor Karplus and such literature. http://worldgame.blogspot.com/2006/12/window-on-physics.html http://worldgame.blogspot.com/2007/01/surveying-scene-synergeo-32124.html Kirby From kirby.urner at gmail.com Tue Jun 12 05:48:59 2007 From: kirby.urner at gmail.com (kirby urner) Date: Mon, 11 Jun 2007 20:48:59 -0700 Subject: [Edu-sig] Europython paper accepted... Message-ID: Excellent, I've got a slot after lunch on Day 1 of Europython: http://www.europython.org/sections/tracks_and_talks/draft-timetable Still focusing on string.Template, looking to recode my paradigm "math objects" using X3D output (XML flavored -- there's also a more VRML-like format). I've proposed to Joyce (CEO) that I work up a new Saturday Academy class focusing on Python + X3D, perhaps presuming some Python. She seems willing to explore it further. I still have another section of my regular Pythonic math course scheduled for this summer, where we use VPython and POV-Ray: http://www.4dsolutions.net/ocn/pymath.html I found this 2003 article a helpful reintroduction to the subject of these relatively new 3D tools: http://www.xml.com/pub/a/2003/08/06/x3d.html Kirby PS: One of the philosophers mentioned in passing in my Lithuania paper, Richard Rorty, died recently. There's a write up in today's New York Times. He was a good teacher for me back when I was focusing on philo at Princeton (1976-1980). He advised me on my undergrad thesis on Wittgenstein's later writings. More views re RR: http://commentisfree.guardian.co.uk/christopher_hayes/2007/06/richard_rorty.html http://www.huffingtonpost.com/john-seery/richard-rorty-ironicall_b_51611.html From kirby.urner at gmail.com Wed Jun 13 21:46:29 2007 From: kirby.urner at gmail.com (kirby urner) Date: Wed, 13 Jun 2007 12:46:29 -0700 Subject: [Edu-sig] Europython paper accepted... In-Reply-To: References: Message-ID: > Still focusing on string.Template, looking to recode my paradigm > "math objects" using X3D output (XML flavored -- there's also a more > VRML-like format). > I've got a first edition added to my CP4E collection at the Oregon Curriculum Network website: http://www.4dsolutions.net/ocn/pyx3d.html This'll help me advocate for an X3D course within Saturday Academy, which, if I'm to teach it, would involve using the source code I'm sharing above. Kirby From kirby.urner at gmail.com Thu Jun 14 19:12:15 2007 From: kirby.urner at gmail.com (kirby urner) Date: Thu, 14 Jun 2007 10:12:15 -0700 Subject: [Edu-sig] More CP4E News Message-ID: I'd misread some signs and thought I was off the list for OSCON for this year, but I'm on, talking CP4E, provided I make a certain June 25 deadline with some filings, which I think I can do. Yesterday I converted from DVD and uploaded as a low rez Google Video some pro Saturday Academy PR to my blog: http://controlroom.blogspot.com/2007/06/sa.html This institution figures prominently in my version of the CP4E initiative, complementary (and complimentary) to Guido's. Speaking of whom, great slides from Guido from Beijing, including of Olympics 2008 facilities still under construction. A Google trip. On the pedagogical front, Dr. Sonnenfeld at New Mexico tech, a proud python owner (as in the literal snake) with his son Cody and Company, wonders aloud at the paucity of Python (the computer language literature) in the form of childrens books, especially given all the buzz the adults're talkin' (me included). His kids are ready to learn, but with what? Where's the kid-friendly fantasy angle? Given the popularity of Piratology and Dragonology books, you'd think O'Reilly'd already have something similar (actually that'd be a departure -- it's kid book authors and illustrators with track records we need, mixing OLPC & CP4E (a "head first" for kids -- like not too dumbed down, even with all those twisted aqua teen type graphics)). You'd think with a gorgeous snake already in the picture, there'd be such a literature. Plus we like Perl's camels. Plus CP4E ain't just about Python. It's about using open source to make the world more intelligible in terms of the cave painting programs it'd need. Like we don't have time to do a full version of anything. We're on a quick tour. But look: here's a supermarket (revealed in code, lots of SQLAlchemy), and here's a bank (TurboGears?). But before we get to "boring" (to young kids) banks and super- markets (bazaars), I think kids love to think about animals. Animals never lose their freshness. I've gone on and on about my Dog and Monkey classes in this archive, put that's just a pointer, a prototype. There's a huge animated cartoons industry I'm not planning to reinvent (why would I?). If the goal is to embrace CP4E, then I think it's obvious we're awash in relevant tools for propagating it, as multiple curricula (multiple namespaces). Is Linux a horse? Geeks [heart] Apache. So in my next sa: class, I plan to give much more credence to the cyberspace as ecosystem model, visualizing accordingly. As my readers know, I'm already committed to MVC as a long term key meme, so tie the ecosystem model and vizualizations to M and V respectively, with the mediating language a "controller" (could be Python, could be something else entirely). One way this translates, is I'll introduce the four principal collections: string, list, tuple and dict, and then I'll hand out source code and ask them to color pen highlight these structures when and where they're able to eyeball 'em in working code. This takes practice, especially given how syntax varies, allows multiple idioms, a lot of embeddedness and so on. I'm not encouraging writing obfuscated code (they'll see enough of that anyway), but I do recognize that production Python isn't just Dick and Jane seeing Spot run. Listing 1: exercise: circle a dict object being initialized. What alternative syntax might the writer have used? Give a short example in the space provided: ___________________________ def _edges(self, someobj): # cylinders thevertices = someobj.vertices for edge in someobj.edges: v1 = edge.v0 v2 = edge.v1 vrmldata = self._orient((v1,v2)) length,roty,rotx = (vrmldata[1],vrmldata[2],vrmldata[3]) edict = dict( radius = edge.radius, color = colordict[someobj.ecolor], length = length, translate = "%r %r %r" % vrmldata[0], roty = "0 1 0 %s" % roty, rotx = "1 0 0 %s" % rotx) someobj.text = someobj.text + gl_theedge.substitute(edict) [ http://www.4dsolutions.net/ocn/pyx3d.html x3dtoyz.py ] Kirby From tk at dydimustk.com Fri Jun 15 02:45:34 2007 From: tk at dydimustk.com (thomas knoll) Date: Thu, 14 Jun 2007 19:45:34 -0500 Subject: [Edu-sig] More CP4E News In-Reply-To: References: Message-ID: <59a26bd90706141745r1cf5efb0t4c5cbaff44cf40b7@mail.gmail.com> Psst... By the way, If python doesn't step it up in this area, all the kiddies are going to start learning Ruby on Rails *not that there's anything wrong with that*. But Why is kicking butt and taking names when it comes to making programing easy to learn. If you don't believe me, go take a peek at http://hacketyhack.net/ gratia vobis et pax, TK + .:dydimustk.com:. | Freelance Apostle ________________________________________ Thomas Knoll 651.210.2321 tk at dydimustk.com skype:dydimustk From radenski at studypack.com Fri Jun 15 03:37:47 2007 From: radenski at studypack.com (Atanas Radenski) Date: Thu, 14 Jun 2007 18:37:47 -0700 Subject: [Edu-sig] More CP4E News In-Reply-To: <59a26bd90706141745r1cf5efb0t4c5cbaff44cf40b7@mail.gmail.com> References: <59a26bd90706141745r1cf5efb0t4c5cbaff44cf40b7@mail.gmail.com> Message-ID: <20070614183747.aonl7ttftww0owks@webmail.studypack.com> Quoting thomas knoll : > take a peek at http://hacketyhack.net/ I peeked at hacketyhack.net, and this is what I saw: ===>>> Copy and paste from http://hacketyhack.net/ >>> YOUR FIRST PROGRAM One of Hackety Hack's sincere pledges is to make the most common code very easy and short. Downloading an MP3 should be one line of code. A blog should be very few. For example, our sample blog: blog = Table("MyBlog").recent(10) Web.page { blog.each do |entry| title entry[:title] puts entry[:editbox] end } <<<=== It does not seem likely that a first program like the above one can be understood by a 13-year old beginner - or by any beginner for that matter. Kids can type it, of course, and run things, but do they get a clue? Coding is complex and learning how to do it is complex, no matter what. It can be less complex or more complex but it is always complex. The hacketyhack.net site says: "Downloading an MP3 should be one line of code." Hell, I do not use any code to download an MP3. I just click a link :-) I guess, it is an interesting site, anyway. Thank you for pointing to it. But things cannot be this easy as they claim - like they are presented in 'eat all you want and loose weight' commercials. Atanas -- Atanas Radenski mailto:radenski at studypack.com http://studypack.com mailto:radenski at chapman.edu http://www1.chapman.edu/~radenski Quoting thomas knoll : > Psst... > > By the way, If python doesn't step it up in this area, all the kiddies > are going to start learning Ruby on Rails *not that there's anything > wrong with that*. But Why is kicking butt and taking names when it > comes to making programing easy to learn. If you don't believe me, go > take a peek at http://hacketyhack.net/ > > gratia vobis et pax, > TK > > + .:dydimustk.com:. | Freelance Apostle > > ________________________________________ > Thomas Knoll 651.210.2321 tk at dydimustk.com > skype:dydimustk > _______________________________________________ > Edu-sig mailing list > Edu-sig at python.org > http://mail.python.org/mailman/listinfo/edu-sig > From tk at dydimustk.com Fri Jun 15 03:45:25 2007 From: tk at dydimustk.com (thomas knoll) Date: Thu, 14 Jun 2007 20:45:25 -0500 Subject: [Edu-sig] More CP4E News In-Reply-To: <20070614183747.aonl7ttftww0owks@webmail.studypack.com> References: <59a26bd90706141745r1cf5efb0t4c5cbaff44cf40b7@mail.gmail.com> <20070614183747.aonl7ttftww0owks@webmail.studypack.com> Message-ID: <59a26bd90706141845s30c634d3hb628af427c01ac7b@mail.gmail.com> Atanas, I agree with everything you said. But this time just go take a peek at hacketyhack. Don't think to hard, just take a peek at it. And then find me an intro to python site that *looks* half as interesting as that one. I'm cheering for python here. I can't wait until I know enough python to start writing tutorials and developing how-to-program-in-python websites. But I don't yet. If one of you beat me to it, please consider making python *look* exciting to learn. gratia vobis et pax, TK + .:dydimustk.com:. | Freelance Apostle ________________________________________ Thomas Knoll 651.210.2321 tk at dydimustk.com skype:dydimustk On 6/14/07, Atanas Radenski wrote: > > > Quoting thomas knoll : > > take a peek at http://hacketyhack.net/ > > I peeked at hacketyhack.net, and this is what I saw: > > ===>>> Copy and paste from http://hacketyhack.net/ >>> > > YOUR FIRST PROGRAM > > One of Hackety Hack's sincere pledges is to make the most common code > very easy and short. Downloading an MP3 should be one line of code. A > blog should be very few. > > For example, our sample blog: > > blog = Table("MyBlog").recent(10) > Web.page { > blog.each do |entry| > title entry[:title] > puts entry[:editbox] > end > } > > <<<=== > > It does not seem likely that a first program like the above one can be > understood by a 13-year old beginner - or by any beginner for that > matter. Kids can type it, of course, and run things, but do they get a > clue? Coding is complex and learning how to do it is complex, no > matter what. It can be less complex or more complex but it is always > complex. > > The hacketyhack.net site says: "Downloading an MP3 should be one line > of code." > > Hell, I do not use any code to download an MP3. I just click a link :-) > > I guess, it is an interesting site, anyway. Thank you for pointing to > it. But things cannot be this easy as they claim - like they are > presented in 'eat all you want and loose weight' commercials. > > Atanas > -- > Atanas Radenski > mailto:radenski at studypack.com http://studypack.com > mailto:radenski at chapman.edu http://www1.chapman.edu/~radenski > > Quoting thomas knoll : > > > Psst... > > > > By the way, If python doesn't step it up in this area, all the kiddies > > are going to start learning Ruby on Rails *not that there's anything > > wrong with that*. But Why is kicking butt and taking names when it > > comes to making programing easy to learn. If you don't believe me, go > > take a peek at http://hacketyhack.net/ > > > > gratia vobis et pax, > > TK > > > > + .:dydimustk.com:. | Freelance Apostle > > > > ________________________________________ > > Thomas Knoll 651.210.2321 tk at dydimustk.com > > skype:dydimustk > > _______________________________________________ > > Edu-sig mailing list > > Edu-sig at python.org > > http://mail.python.org/mailman/listinfo/edu-sig > > > > > From jeff at taupro.com Fri Jun 15 13:00:33 2007 From: jeff at taupro.com (Jeff Rush) Date: Fri, 15 Jun 2007 06:00:33 -0500 Subject: [Edu-sig] More CP4E News In-Reply-To: References: Message-ID: <46727151.2000701@taupro.com> kirby urner wrote: > > On the pedagogical front, Dr. Sonnenfeld at New Mexico tech, > a proud python owner (as in the literal snake) with his son Cody > and Company, wonders aloud at the paucity of Python (the > computer language literature) in the form of childrens books, > especially given all the buzz the adults're talkin' (me included). I've never seen programming books in the form of children's books -- can you point me at some for -other- programming languages? I'm curious what they would look like, and maybe we can get some for Python if we have examples and names of publishers who've already done it. > His kids are ready to learn, but with what? Where's the kid-friendly > fantasy angle? > > Given the popularity of Piratology and Dragonology books, you'd > think O'Reilly'd already have something similar (actually that'd be > a departure -- it's kid book authors and illustrators with track > records we need, mixing OLPC & CP4E (a "head first" for kids > -- like not too dumbed down, even with all those twisted aqua > teen type graphics)). Hmm, as you say O'Reilly isn't a primary source of children's books, but the kid book authors and illustrators in turn are not sources of programming books. How the heck are you going to get them to work together? They think differently and don't have established relations. > Listing 1: exercise: circle a dict object being initialized. What > alternative syntax might the writer have used? Give a short > example in the space provided: ___________________________ An interesting idea for teaching - showing source and asking students to reason -about- it, instead of writing programs from scratch for exercises. I'll have to consider applying this in some Python educational ideas I have. -Jeff From matt at schinckel.net Fri Jun 15 13:07:44 2007 From: matt at schinckel.net (Matthew Schinckel) Date: Fri, 15 Jun 2007 20:37:44 +0930 Subject: [Edu-sig] More CP4E News In-Reply-To: <46727151.2000701@taupro.com> References: <46727151.2000701@taupro.com> Message-ID: <2521244f0706150407w389f4224uae21de6d28dd8e7d@mail.gmail.com> On 15/06/07, Jeff Rush wrote: > kirby urner wrote: > > [snip] > > > Listing 1: exercise: circle a dict object being initialized. What > > alternative syntax might the writer have used? Give a short > > example in the space provided: ___________________________ > > An interesting idea for teaching - showing source and asking students to > reason -about- it, instead of writing programs from scratch for exercises. > I'll have to consider applying this in some Python educational ideas I have. > This is actually the approach I have been taking with my class - rather than expect them to write code, although they will need to do this, I provide them with code, and then we discuss what the code is doing, and why. Matt. -- Matthew Schinckel The Feynman Problem-Solving Algorithm: (1) write down the problem; (2) think very hard; (3) write down the answer. From jeff at taupro.com Fri Jun 15 14:04:37 2007 From: jeff at taupro.com (Jeff Rush) Date: Fri, 15 Jun 2007 07:04:37 -0500 Subject: [Edu-sig] More CP4E News In-Reply-To: <59a26bd90706141845s30c634d3hb628af427c01ac7b@mail.gmail.com> References: <59a26bd90706141745r1cf5efb0t4c5cbaff44cf40b7@mail.gmail.com> <20070614183747.aonl7ttftww0owks@webmail.studypack.com> <59a26bd90706141845s30c634d3hb628af427c01ac7b@mail.gmail.com> Message-ID: <46728055.1070500@taupro.com> thomas knoll wrote: > Atanas, > > I agree with everything you said. > > But this time just go take a peek at hacketyhack. > > Don't think to hard, just take a peek at it. > > And then find me an intro to python site that *looks* half as > interesting as that one. > > I'm cheering for python here. I can't wait until I know enough python > to start writing tutorials and developing how-to-program-in-python > websites. But I don't yet. If one of you beat me to it, please > consider making python *look* exciting to learn. Thomas, thanks for the link - it is interesting. The Python community has a severe shortage of those with graphical artist talent, unfortunately. You can see this in how many of the Python sites, especially www.python.org, are very text-oriented, with not even icons of any kind. And there have been several calls for artists to help with the design of flyers and presentations, with no real response. Odd, as I'd think in any sizable distribution of people there would be a significant number with some drawing skills. Python, perhaps because of the beauty of its source, seems to attract the word-oriented people over the picture-oriented (or tactile-oriented) people. I agree that we need a more visual message though, especially for children. -Jeff From kirby.urner at gmail.com Fri Jun 15 17:06:39 2007 From: kirby.urner at gmail.com (kirby urner) Date: Fri, 15 Jun 2007 08:06:39 -0700 Subject: [Edu-sig] More CP4E News In-Reply-To: <46727151.2000701@taupro.com> References: <46727151.2000701@taupro.com> Message-ID: On 6/15/07, Jeff Rush wrote: > > > I've never seen programming books in the form of children's books -- can > you > point me at some for -other- programming languages? I'm curious what they > would look like, and maybe we can get some for Python if we have examples > and > names of publishers who've already done it. "Good questions dude" -- imagining a certain facilitator in a small conference room. He was all surfer Bay Area talk or something, effective at the time. Here's the arc as I see it. Knuth's The Art of Computer Programming, terse and "telegraphic" as Tim Peters calls it, is the "in a nutshell" reference, but then Stanford started using 'Concrete Mathematics' as build up (recommended by Tim in this archive, near the start). Then comes Jason and me yakking up 'Who is Fourier?' by the LEX Institute, a language learning think tank. Like 'Concrete' and like the wildly successful 'For Dummies' ('Complete Idiots' and so on), there's a lot of doodling, marginalia, jokes. The jocularity component is way up. Then comes O'Reilly with 'Head First into Java' and we're really seeing the culmination of a trend. What I think has happened is CS has shed its skin as a wannabe staid math, has proved its points, in terms of utility, sophistication, future etc., and now can afford any pretense at trying to be pretentious. The readership is there, already impressed and ready to learn. So the key thing is to use *psychology* (including "sublymonal" like in those Sprite commercials). http://www.google.com/search?hl=en&q=sprite+ad+obey+sublymonal&btnG=Search Where you see the "for kids" approach amped up is on satellite TV, like on http://www.nick.com/ http://brandnoise.typepad.com/brand_noise/2006/09/cartoon_packagi.html We're not there yet with the books, but I think the arc will continue, with aqua teens (and duckman) teaching Python, as it were. Kirby > His kids are ready to learn, but with what? Where's the kid-friendly > > fantasy angle? > > > > Given the popularity of Piratology and Dragonology books, you'd > > think O'Reilly'd already have something similar (actually that'd be > > a departure -- it's kid book authors and illustrators with track > > records we need, mixing OLPC & CP4E (a "head first" for kids > > -- like not too dumbed down, even with all those twisted aqua > > teen type graphics)). > > Hmm, as you say O'Reilly isn't a primary source of children's books, but > the > kid book authors and illustrators in turn are not sources of programming > books. How the heck are you going to get them to work together? They > think > differently and don't have established relations. Think how young the O'Reilly brand is, compared to Walt Disney say. A new crop of geeks is only now starting to have kids. The open source revolution is all post boomer. Yes, you and I caught it too, but we'd already gone through the PC revolution with IBM versus Apple. That was an earlier time. The next wave will produce a new literature. Plus there's already a wave behind that and so on. Expect change. > Listing 1: exercise: circle a dict object being initialized. What > > alternative syntax might the writer have used? Give a short > > example in the space provided: ___________________________ > > An interesting idea for teaching - showing source and asking students to > reason -about- it, instead of writing programs from scratch for exercises. > I'll have to consider applying this in some Python educational ideas I > have. > > -Jeff > > Yes. I talk about recall versus recog (even to them) and how we learn language from immersion in adults speaking fully formed sentences, learn new language likewise, from being around expert speakers. This is recog. Doing it from scratch, as a source, an author, is recall. In between is a whole spectrum of part recog, part recall. I use heavy recog in early exposure, as I'm more into having them decipher mature code examples, the very ones used in our class, complete with vector and rhombic dodecahedron classes talking out to VPython, POV-Ray and more recently X3D. I have them learn about common structures, such as initializing objects, populating data structures, then have 'em eyeball source a lot, applying their recog skills. Then will come tweaking, messing about with little changes -- to colors for example. To numbers of things, parameters. "Blank canvas" programming is really only a small percentage of what employed programmers do. A lot of it involves tweaking inherited work. Someone new to programming is already immersed in an environment where source code is already ubiquitous. The first question isn't "is it there, running in the background" but "is it open or closed" (i.e. "can I see it, will I recognize when I do?"). Kirby -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.python.org/pipermail/edu-sig/attachments/20070615/4f9189eb/attachment.htm From kirby.urner at gmail.com Fri Jun 15 17:14:33 2007 From: kirby.urner at gmail.com (kirby urner) Date: Fri, 15 Jun 2007 08:14:33 -0700 Subject: [Edu-sig] More CP4E News In-Reply-To: References: <46727151.2000701@taupro.com> Message-ID: On 6/15/07, kirby urner wrote: > > > > What I think has happened is CS has shed its skin as a wannabe > staid math, has proved its points, in terms of utility, sophistication, > future etc., and now can afford any pretense at trying to be > pretentious. The readership is there, already impressed and ready > "can afford to lose..." I should have said. In other words, we *don't* want a purely lexical approach where we do like those old math books and just go theorem, proof, remarks, definitions, theorem, sardonic remark, proof, corollary, small figure, definitions, more weird notation, theorem, proof. Index. We're planning to get way more right brained about all this, in part because we're moving away from static text to more animated and interactive interfaces. Like the DoD does, in training its recruits (sometimes using Python as a glue language, like we saw at Pycon that time (West Point grads train in a modified Unreal Tournament engine simulating needing to know how to speak Iraqi politely or die, with a voice recognizer ala Dragon's a part of the VR apparatus)). Kirby -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.python.org/pipermail/edu-sig/attachments/20070615/61f25864/attachment.html From da.ajoy at gmail.com Sat Jun 16 17:54:41 2007 From: da.ajoy at gmail.com (Daniel Ajoy) Date: Sat, 16 Jun 2007 10:54:41 -0500 Subject: [Edu-sig] More CP4E News In-Reply-To: References: Message-ID: <4673C171.23008.17F51FA6@da.ajoy.gmail.com> > Date: Fri, 15 Jun 2007 06:00:33 -0500 > From: Jeff Rush > > I've never seen programming books in the form of children's books -- can you > point me at some for -other- programming languages? The Great Logo Adventure : Electronic copy of the actual book on learning Logo by Jim Muller (Graciously donated by Jim) http://www.softronix.com/logo.html Daniel From kirby.urner at gmail.com Sat Jun 16 22:46:29 2007 From: kirby.urner at gmail.com (kirby urner) Date: Sat, 16 Jun 2007 13:46:29 -0700 Subject: [Edu-sig] More re Imagery Message-ID: I liked how Jerritt Collord (collord.net) started our Adventures in Open Source course for out three teen guinea pigs. This was a pilot staged in West Precinct, Hillsboro Police Department, Saturday Academy providing the instructors (that'd be Jerritt and myself). Summer of 2004. He started with tcp/ip right off the bat. Kind of the polices' worst nightmare, in a way, to have someone who knows about packet sniffing showing wannabe hackers how to sniff packets, how to dissect these little capsules with payloads, looking for pathologies. But that was the whole point: we're showing you the ropes, as future pioneers, developers, and maintainers of the Internet, not as future criminals. You'll need the same skills. You'll need to build up your internal model of how it all works, making it rich in detail, a readily extensible model should your job require going even deeper into the internals of ethernet frames or whatever. http://en.wikipedia.org/wiki/Ethernet So like of course (!) you need to understand about tcp/ip, just as police do (Heuston, exFBI and our liason in HPD, helped run a computer forensics lab plus ran that speakers' program, CRIME, at the Oregon Zoo). This is where 'Warriors of the Net' comes in, a great little cartoon modeling tcp/ip as an accessible visualization involving little trucks in tubes. This visualization likewise connects to container shipping for more adult content, per one of those high quality analyst talks @ OSCON (Nick Gall's): http://blogs.zdnet.com/BTL/?p=1675 So here's a logical flow I could see using in a standard public school curriculum: Begin: Google Earth or similar service -> lots of geography talk about lat/long, time zones etc. -> lots of infrastructure talk including about container shipping -> about the Internet (cartoons) -> about tcp/ip (more cartoons) -> moving to CP4E languages (e.g. Python) and xml-rpc i.e. let's now interact with some web services (hands on, not just talk) Exhibit 1: A Perl version, for passing an address on the command line: #!/usr/bin/perl use XMLRPC::Lite; use Data::Dumper; use strict; use warnings; my $where = shift @ARGV or die "Usage: $0 \"111 Main St, Anytown, KS\"\n"; my $result = XMLRPC::Lite -> proxy( 'http://rpc.geocoder.us/service/xmlrpc' ) -> geocode( $where ) -> result; print Dumper $result; Exhibit 2: And now in Python, just lazily interactively in IDLE for starters: >>> from xmlrpclib import Server >>> server = Server('http://rpc.geocoder.us/service/xmlrpc') >>> result = server.geocode("1600 Pennsylvania Avenue, Washington, DC") >>> result [{'city': 'Washington', 'prefix': '', 'suffix': 'NW', 'zip': 20502, 'number': 1600, 'long': -77.037683999999999, 'state': 'DC', 'street': 'Pennsylvania', 'lat': 38.898747999999998, 'type': 'Ave'}] or we might look at the actual XML that goes to the server: >>> print xmlrpclib.dumps(("1600 Pennsylvania Avenue, Washington, DC", ), 'server.geocode') server.geocode 1600 Pennsylvania Avenue, Washington, DC Kirby From kirby.urner at gmail.com Sun Jun 17 08:46:26 2007 From: kirby.urner at gmail.com (kirby urner) Date: Sat, 16 Jun 2007 23:46:26 -0700 Subject: [Edu-sig] More re Imagery In-Reply-To: References: Message-ID: On 6/16/07, kirby urner wrote: > I liked how Jerritt Collord (collord.net) started our Adventures in > Open Source course for out three teen guinea pigs. This was > a pilot staged in West Precinct, Hillsboro Police Department, > Saturday Academy providing the instructors (that'd be Jerritt > and myself). Summer of 2004. > "...our three teen..." Hey, was just Googling and came up with this fun souvenir from that time. Shows some pix of our HPD classroom (where Jerritt and I taught -- this document describes a somewhat later event). http://www.ci.hillsboro.or.us/Police/documents/VirtualGatheringPlace.pdf Yeah, JoJo was me in disguise. Kirby From kirby.urner at gmail.com Wed Jun 20 08:53:12 2007 From: kirby.urner at gmail.com (kirby urner) Date: Tue, 19 Jun 2007 23:53:12 -0700 Subject: [Edu-sig] Choice quote re OLPC Message-ID: Regarding a pilot OLPC project in South Africa: """ Q: How will the laptop be used in the formal context of the classroom? There's no curriculum. There's no training programme. Teachers will sink or swim. We can show them the e-Toys and other programmes on the laptop, but when we leave, they're on their own. If the goal is to create a nation of scientists and engineers, I don't think we've got 1% of that with this. Mark Shuttleworth with the Kusasa.org programme is tackling that need. We're hoping that workbooks and worksheets will come out of that. He's also putting his money into Python and Smalltalk. """ http://allafrica.com/stories/200706180999.html?page=2 From kirby.urner at gmail.com Sat Jun 23 20:12:47 2007 From: kirby.urner at gmail.com (kirby urner) Date: Sat, 23 Jun 2007 11:12:47 -0700 Subject: [Edu-sig] All quiet on the western front... Message-ID: Mighty quiet around here... How 'bout I toss up some percentage of the slides I've been arranging, in some sort of sort (hopefully sequential), for discussion purposes.[1] Let me just do that now [elevator music...] OK, special to the edu-sig inner circle then: http://www.4dsolutions.net/presentations/connectingthedots.pdf (1.48 Meg) Comments? Also note: my plan is to showcase on Ubunta I hope with Beryl working, as I'd like to swap cube faces for demos, interspersed with the static stuff above. That sounds like a lot of CPU cycles (lots to go wrong) so yeah, it'll be a workout. But first the new Dell has to show up to be dinked with. Order tracking says it's still in production. But hey, this is Sunday and not everyone works 24/7, not even we geeks.[2] Happy summer solstice all, Kirby [1] like most road show veterans, I always have too many slides, then have this task of whittling down, to make something sharp and to the point, appropriate to my audience. Like, some versions of this would go more into my remark that younger kids tend to welcome scatology, now a sub-branch of grossology. Question: is squeak too squeaky clean? [2] if you didn't see my 'Nightmare Alley' review, nor have a clue as to its relevance, here's the blog link: http://worldgame.blogspot.com/2007/06/nightmare-alley-movie-review.html -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.python.org/pipermail/edu-sig/attachments/20070623/c02a407b/attachment.html From kirby.urner at gmail.com Wed Jun 27 16:04:43 2007 From: kirby.urner at gmail.com (kirby urner) Date: Wed, 27 Jun 2007 07:04:43 -0700 Subject: [Edu-sig] More of Kirby talking to the water cooler... Message-ID: Okeedohkee... so I got that Dell Inspiron E1505 I was talking about, ships with Ubuntu installed. I customized it to have the Nvidia 256M graphics card, plus 1G RAM, only 80 GB storage (so not too heavy, inexpensive but not cheap). Turns out Nvidia was a good choice, as you can just check a box in Restricted Driver Manager, apt-get beryl, and voila, that rotating cube of desktops, VPython on one face, slides on another... wiggly windows. I've expanded my slides at http://www.4dsolutions.net/presentations/ connectingthedots.pdf adding in some of that grossology stuff I mentioned. The idea here is very simple, as I was just explaining to this philosopher in Seattle I know. Especially young kids have an interest in scatalogical content and feel relieved when they have permission, in an academic context, to indulge that interest. The vehicle is Mad Libs, a genre of fill in the blank stories, which you can just make up yourself. It's more just creative writing. But it's also a triple-quote segment of Python with $fill_in_the_blanks to be later populated from a Python dictionary (another segment provides promptings e.g. "Give me a verb please: " or whatever raw_input). That's all just a small part of the talk, although string.Template has a continuing role when we turn to more mathy forms of output, such as scene description language for POV-Ray or X3D. Which reminds me, I need to get an X3D plugin working, or find a standalone application. [ blub blub blub -- fills cup with water ] OK time to get back to my cube and resume chatting with fellow cube farmers. Kirby -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.python.org/pipermail/edu-sig/attachments/20070627/eb2fecd6/attachment.html From jbloodworth at sc.rr.com Wed Jun 27 16:43:50 2007 From: jbloodworth at sc.rr.com (Jay Bloodworth) Date: Wed, 27 Jun 2007 10:43:50 -0400 Subject: [Edu-sig] Wikis w. Math Support Message-ID: <1182955430.4659.18.camel@localhost.localdomain> Not necessarily python related, but perhaps: Can anyone suggest some wiki software that includes support for math markup for nicely formatted expressions, preferably with some simpler and server-sider than MathML. Bonus points if it also supports simple syntax for generating graphs of equations. Double bonus if it includes good access control features. Thanks, Jay From lac at openend.se Wed Jun 27 17:42:33 2007 From: lac at openend.se (Laura Creighton) Date: Wed, 27 Jun 2007 17:42:33 +0200 Subject: [Edu-sig] Wikis w. Math Support In-Reply-To: Message from Jay Bloodworth of "Wed, 27 Jun 2007 10:43:50 EDT." <1182955430.4659.18.camel@localhost.localdomain> References: <1182955430.4659.18.camel@localhost.localdomain> Message-ID: <200706271542.l5RFgXMT003918@theraft.openend.se> Mediawiki -- what wikipedia uses. http://en.wikipedia.org/wiki/Help:Formula Laura In a message of Wed, 27 Jun 2007 10:43:50 EDT, Jay Bloodworth writes: >Not necessarily python related, but perhaps: > >Can anyone suggest some wiki software that includes support for math >markup for nicely formatted expressions, preferably with some simpler >and server-sider than MathML. Bonus points if it also supports simple >syntax for generating graphs of equations. Double bonus if it includes >good access control features. > >Thanks, >Jay > >_______________________________________________ >Edu-sig mailing list >Edu-sig at python.org >http://mail.python.org/mailman/listinfo/edu-sig From kirby.urner at gmail.com Thu Jun 28 05:54:17 2007 From: kirby.urner at gmail.com (kirby urner) Date: Wed, 27 Jun 2007 20:54:17 -0700 Subject: [Edu-sig] More rambling about my new snake habitat Message-ID: So demoing MVC the way I teach it for sa: requires an X3D viewer, POV-Ray, and VPython, all for visualizations of the same core model, implemented using stickworks components: vertex-vectors + connect-the-dots edges. Faces get added at a more outer layer, in one of the "toyz" modules (I don't use them at all in the VPython version, in some ways the most primitive). Faces are, however, core to the basic data structure, whether or not they are shown (typical of geometry formats, OFF in particular). http://shape.cs.princeton.edu/benchmark/ Fortunately, Ubuntu's Synaptic Package Manager makes it really easy to search and install packages over the Internet, including FreeWRL 1.19.5 (it does X3D in addition to VRML so my demo is working). http://freewrl.sourceforge.net/ When I first opened the box, I ran the update manager, which seems to appear periodically on the top horizontal bar (the period is a user setting). A massive upgrade ensued (which used to result in a crash on reboot when these puppies first shipped -- problem fixed), including a download/install of Python 2.5, abetting the two earlier Pythons already housed. But it's a minimal install. Using Synaptic, I added IDLE with Tk, which automatically added itself to the main Applications Menu under Programming (little trowel icon, Python's double snake for IDLE itself, which by default does *not* launch a subprocess (something to change)). VPython likewise came through Synaptic (version 3.2.1-4build1). There's a site-packages at /usr/local/python2.5/site-packages, but by default it belongs to root and staff (a group). I don't find the staff group when I go to administer users and groups. As a lowly user, I'm feeling /home/kirby is where I'm encouraged to keep my .py files. Do .pth files work in Linux like in Windows? Speaking of Windows, I noticed my connectingthedots.pdf looked kinda crummy on Ubuntu, like the fonts weren't right. Sure enough, Microsoft's weirdo brands of Arial needed to go in the suitcase along with the rest of the graphics, increasing the file size but improving the view. The ppt (not available at my ftp site) opened almost flawlessly in OpenOffice impress. I just needed to tweak a few of the slides a little, and resave. But that means it'll be hard to just swap the file back and forth between platforms -- which adds to my sense that it's frozen, at least for now. Hypertoons also work great (see my Youtube examples). I'll be able to show VPython randomly drawing transforming polyhedra with two play heads (two threads), while rotating the Beryl cube. One of my geek friends came by for lunch today and I was able to do that thing Miguel de Icaza demoed at OSCON like two years ago: a DVD (in my case 'Idiocracy') playing in a window that folds around the edge of the rotating cube, half a window in each of two desktops. Meaningless eye candy I realize. Very iPhone. Miguel shows off many more recent xgl type effects in his blog: http://tirania.org/blog/ xgl: http://images.google.com/images?q=xgl&hl=en&um=1&sa=X&oi=images&ct=title Kirby From andre.roberge at gmail.com Fri Jun 29 18:45:00 2007 From: andre.roberge at gmail.com (Andre Roberge) Date: Fri, 29 Jun 2007 13:45:00 -0300 Subject: [Edu-sig] CS0 course Message-ID: <7528bcdd0706290945w13d13ea0lde88e8837fea3e25@mail.gmail.com> Hi everyone, As most people on this list are aware, I am very much interested in promoting Python in education (think rur-ple and crunchy). However, I feel I could do more locally and want to do more but for this I need a bit of help and guidance. To explain things properly, I have to make a small digression (which, I hope, won't be construed as spam ;-) to explain the background. In my day job, I am President of a tiny but wonderful university (Universit? Sainte-Anne, www.usainteanne.ca) in Nova Scotia, Canada. Sainte-Anne is an undergraduate university (400 students, Faculty/student ratio: 1:10) offering programs in French Immersion, Education, Business Administration, Bachelors of Arts (majors: English, French, History), as well as a general B.Sc. (3 year degree, no major). While it is located in a primarily English Canadian province, Sainte-Anne is arguably the *best* place in North America to study French. Our summer French immersion program (two 5-week terms) attract a total of 550 students (more than during the regular year, with every available bed in residence occupied!), about 125 of which come from the U.S. and the rest from elsewhere in Canada; we have the longest waiting list of any other similar programs offered in Canada. (enough bragging ...) We do not offer a course in computer programming. Business administration student have a requirement to take two semester long courses in "computer science" ("informatique", in French) - the courses offered are one introduction to some standard business software (read MS word and eXcel primarily) and one course on creation of web pages, etc. Not exactly what I consider to be computer science... I'd like add a CS0 course (intro to computer science [read: programming] for non cs students) that would introduce Python. Since the courses we offer are all in French, the number of available resources is rather limited... As I'm the only one that knows about programming around, I'd have to teach it. While our students are usually fluent in English, we do strive to provide a completely French learning environment; as President, I could not give a bad example by assigning a textbook (or other main resource) written in English. Since I've never taught a programming course in my life (and only took one, a fortran course, some 30 years ago), I can't draw very much on previous experience. Because of the demands of my job (read:fairly frequent travelling), I can't plan on teaching 2 1.5 hours (or 3 one-hour) lectures a week, every week. I'd like to have a course that could combine classroom teaching combined with small projects that could be done in a self-study mode (with me available to answer questions by email). Something half-way between an independent study course and a traditional lecture-based one. Does anyone have experience with teaching a CS0 course structured like this? Are you aware of any resources that I could use, mostly in terms of assignments idea? (note: they have to be either in French, or things that are short enough that I could translate them without having to invest too much time) Thanks for your time reading this message, and I welcome any suggestion you may have. Andr? Roberge From kirby.urner at gmail.com Fri Jun 29 20:35:47 2007 From: kirby.urner at gmail.com (kirby urner) Date: Fri, 29 Jun 2007 11:35:47 -0700 Subject: [Edu-sig] CS0 course In-Reply-To: <7528bcdd0706290945w13d13ea0lde88e8837fea3e25@mail.gmail.com> References: <7528bcdd0706290945w13d13ea0lde88e8837fea3e25@mail.gmail.com> Message-ID: You ask really interesting questions Andre. I see a huge market for niche authors wanting to specialize in computer language X crossed with human language Y. I think you'll agree that's a huge matrix of possibilities. When you factor in the "Python for Perl junkies" genre (i.e. assuming familiarity with computer language X0, here's computer language X1), and the fact that this bridging goes on with the human languages (e.g. Lithuanian for Dzongkha speakers), you end up staring at a really wide vista (of mostly deserted nothingness). In my view, words like __add__ and __slots__ are special to Python the language, like the list of keywords, but variable names, function names, class names, have wide latitude. People will do their various experiments around Unicode, still very new. I look forward to the many hand- crafted coding languages with those "made by elvynchyx" decorations or whatever gets your pesos. I bet you, a college president, using some free time, could help write a dynamite chapter book ala Who Is Fourier? (LEX) that mixed several languages but with heaviest emphasis on French -- maybe using lots of graphic motifs even starting it as an open source project, with graphic artists especially welcome? Practical? Just like maybe we could recruit aqua teens to someday teach __python__, other cartoon friends. Beloved characters like Big Bird aren't designed to grow up with their cohort. He'll never teach us complex numbers. Not a criticism -- BB is an MVP. Anyway, thank you for bringing up the whole question of how CS gypsies want to wander, vis-a-vis unicode and romanji, the various mixes and matches. I say "onward into the vast wilderness" -- it's stil a small, lonely planet, no matter how ya cut it. Plus lets keep an eye on maintaining useful code that already works, in whatever language. I'm not suggesting we gleefully start from scratch at every opportunity. Getting to the current crop of VHLLs hasn't been whatch'd call easy. Kirby PS: I think Daniel Ajoy writes beautiful Logo in Spanish, even though I (a) don't know Logo that well any more, if I ever did and (b) I'm really rusty with Spanish. From kirby.urner at gmail.com Sat Jun 30 00:29:40 2007 From: kirby.urner at gmail.com (kirby urner) Date: Fri, 29 Jun 2007 15:29:40 -0700 Subject: [Edu-sig] More OLPC chatter Message-ID: Here's a floating email fragment >Date: Thu, 28 Jun 2007 20:54:09 -0400 >From: "Walter Bender" >Subject: OLPC software: our first release and beyond. >To: "OLPC Devel" , sugar at ... >One important feature where we have made little progress is the View >Source key. We decided to build the user experience?and the core >Activity base?in Python, in large part, to facilitate the children's >direct access to modifiable code. We are moving to the latest stable >version of Python as part of our Fedora Core 7 migration; however, we >have yet to put enough resources into building a suitable development >environment for children. This remains an important goal, but not one >we can reasonably meet for our first release. The incorporation of the >context-sensitive spirit of "view source" into all Activities is >another area where we lag. Bolstering these efforts is second only to >stabilizing the current system. We look forward to the possibility of >Guido van Rossum, Python's creator, leading these efforts in the fall. Always interesting to see where some people are hoping to invest some of our BDFL's precious clock cycles... Stepping back for a moment, one has to realize this is a different shop talk, as we typically look at source code as text files, modifiable yes, but not while running as binaries, which are different files entirely, derived from said text files by various processes. Some of this text is expressed in pure Python, but a lot of what *runs* under Python in modular form is actually written in something else, as is Python itself. A whole different text editor might be more appropriate in that case, or at least different plug-ins (the Eclipse model). The trend is to target a shared VM and play freely with other language communities, swapping whatever works in inter-pluggable arrangements. One way around this shortcoming of Sugar's is to suggest that once kids are mature enough to eyeball the kind of convoluted source code required to keep the likes of Sugar alive, it might be time to transition to a more standard model laptop that doesn't push the bleeding edge so hard. Adults need to focus on stable developer environments like Wing's or whatever (or like IDLE for starters). So at your bat mitzvah or other ceremony, you maybe trade in your much loved OLPC XO (and your teddy bear), and move up to something more expensive, with a more traditional source code treatment (anyone ready for C yet?). Or just start using more of those legacy TuxLab desktops, running a variety of distros (Ubuntu Studio might draw some kids, more because they want to study graphical arts than they want to do lexical programming). Basically, I'm somewhat Kusasian in outlook: go with immersive up to a point, then take a break and study some classic combos e.g. emacs + bash + gcc. Drop all the way down to machine language even, coming up through MMIX enroute to Python Part Deux (or "snake guts revisited").[1] At some Coming of Age level, we no longer want to shield kids from the messy reality of *no* single governing paradigm at all levels and the old immersive environment turns out to be one fish tank among many. In retrospect, those early experiences with special namespaces for children will remain a comfort (we hope), and some will elect to professionally teach them to a next generation, and/or invent new ones (already the case, so a next iteration). Kirby [1] http://worldgame.blogspot.com/2007/06/techie-chatter.html From Scott.Daniels at Acm.Org Sat Jun 30 15:24:25 2007 From: Scott.Daniels at Acm.Org (Scott David Daniels) Date: Sat, 30 Jun 2007 06:24:25 -0700 Subject: [Edu-sig] CS0 course In-Reply-To: <7528bcdd0706290945w13d13ea0lde88e8837fea3e25@mail.gmail.com> References: <7528bcdd0706290945w13d13ea0lde88e8837fea3e25@mail.gmail.com> Message-ID: Andre Roberge wrote: > Does anyone have experience with teaching a CS0 course structured like > this? Are you aware of any resources that I could use, mostly in > terms of assignments idea? (note: they have to be either in French, or > things that are short enough that I could translate them without > having to invest too much time) > > Thanks for your time reading this message, and I welcome any > suggestion you may have. Check in newsgroup fr.comp.lang.python. It is fairly active (nowhere near comp.lang.python), but I'm certain there are resources. -- -- Scott David Daniels Scott.Daniels at Acm.Org From andre.roberge at gmail.com Sat Jun 30 15:36:43 2007 From: andre.roberge at gmail.com (Andre Roberge) Date: Sat, 30 Jun 2007 10:36:43 -0300 Subject: [Edu-sig] CS0 course In-Reply-To: References: <7528bcdd0706290945w13d13ea0lde88e8837fea3e25@mail.gmail.com> Message-ID: <7528bcdd0706300636s68499701ub918c89163984be2@mail.gmail.com> On 6/30/07, Scott David Daniels wrote: > Andre Roberge wrote: > > > Does anyone have experience with teaching a CS0 course structured like > > this? Are you aware of any resources that I could use, mostly in > > terms of assignments idea? (note: they have to be either in French, or > > things that are short enough that I could translate them without > > having to invest too much time) > > > > Thanks for your time reading this message, and I welcome any > > suggestion you may have. > > Check in newsgroup fr.comp.lang.python. It is fairly active (nowhere > near comp.lang.python), but I'm certain there are resources. > > -- Thanks for the suggestion; I have been perusing fr.com.lang.python occasionally and should probably ask a similar question there. However, I am also well aware that the French education system is very different than the North American one. The Canadian and American education, while fairly different one from another, can be considered nearly identical when compared with the French system. French students generally have a much more rigorous mathematical background at a given age; the educational approach/style is very much "formal" rather than "informal". Also, there seems to be a lot more early specialization - so I don't think that courses like CS0 are very likely to exist within the French system. However, I will check... Andr? > -- Scott David Daniels > Scott.Daniels at Acm.Org > > _______________________________________________ > Edu-sig mailing list > Edu-sig at python.org > http://mail.python.org/mailman/listinfo/edu-sig > From kirby.urner at gmail.com Sat Jun 30 20:16:35 2007 From: kirby.urner at gmail.com (kirby urner) Date: Sat, 30 Jun 2007 11:16:35 -0700 Subject: [Edu-sig] CS0 course In-Reply-To: <7528bcdd0706300636s68499701ub918c89163984be2@mail.gmail.com> References: <7528bcdd0706290945w13d13ea0lde88e8837fea3e25@mail.gmail.com> <7528bcdd0706300636s68499701ub918c89163984be2@mail.gmail.com> Message-ID: > However, I am also well aware that the French education system is very > different than the North American one. The Canadian and American > education, while fairly different one from another, can be considered > nearly identical when compared with the French system. French > students generally have a much more rigorous mathematical background > at a given age; the educational approach/style is very much "formal" > rather than "informal". Also, there seems to be a lot more early > specialization - so I don't think that courses like CS0 are very > likely to exist within the French system. However, I will check... > > Andr? Lots of moving targets in this picture. Given your idyllic circumstances, I'd think you'd want to customize and localize around your geographical context and expected student demographics, right down to the screen saver and local web server level. Plone has ways to customize all the menus and interface controls per whatever language. How about an inhouse Plone site, with CS0 spending at least a few hours dissecting it, in terms of MVC and the underlying Zope machinery. Zope is very big in Europe, I can say from personal experience. If you were a larger research university, I'd think developing Python bindings to some French-English phrase book database and translation service, ala Google's, would become a part of your infrastructure. Maybe such bindings already exist, in the sense of Python hacks (e.g. xml-rpc "translate this into French" requests to the server farm in The Dalles). As a curriculum writer, I have to assume increasing familiarity with Python among the pre-college set, at least in some parts of North America. CS0 will be easier if the ambient culture gets back on the track we were on with BASIC, per that Salon article 'Why Johnny Can't Code'. But a good CS0 has ways of not penalizing those who're just sampling. There're always more languages, or one could do that "leveling the playing field" thing and do it all in Scheme for a couple weeks, then switching to Python. This idea of "immersion" works well for computer languages, not just human ones (at least for students in the "good at languages" category -- which it sounds like your school attracts). Anyway, the challenges would be much the same in any language I would think. It's more finding the writers who'll commit to doing the work. Kirby From krstic at solarsail.hcs.harvard.edu Sat Jun 30 23:17:51 2007 From: krstic at solarsail.hcs.harvard.edu (=?UTF-8?Q?Ivan_Krsti=C4=87?=) Date: Sat, 30 Jun 2007 17:17:51 -0400 Subject: [Edu-sig] More OLPC chatter In-Reply-To: References: Message-ID: <552E9E91-250A-41B9-9961-881A1B70C106@solarsail.hcs.harvard.edu> On Jun 29, 2007, at 6:29 PM, kirby urner wrote: > One way around this shortcoming of Sugar's is to suggest that once > kids are mature enough to eyeball the kind of convoluted source > code Yes, and we tend to think that's not the right way. > Adults need to focus on stable developer environments like Wing's > or whatever (or like IDLE for starters). So at your bat mitzvah or > other ceremony, you maybe trade in your much loved OLPC XO > (and your teddy bear), and move up to something more expensive, > with a more traditional source code treatment (anyone ready for > C yet?). Is there a reason you think you can't happily run a normal editor, compiler and shell on an XO? You seem to be strangely conflating software that's shipped with the XO by default with both its hardware and the limits of purposes for which it can be used. -- Ivan Krsti? | GPG: 0x147C722D