From kirby.urner at gmail.com Mon Feb 13 08:42:57 2012 From: kirby.urner at gmail.com (kirby urner) Date: Sun, 12 Feb 2012 23:42:57 -0800 Subject: [Edu-sig] should we have learning languages? Message-ID: One still hear's tones of regret that the good old days are over, when one's choice of a first year computer language was obvious: Algol or Pascal. Today there's no such consensus (if there ever was), but another question is "should we have learning languages?" There was a time when it was considered intuitive that languages not used in the "real world" could be all that much more powerful as educational tools because weighted to "learner" needs. BASIC was one of those languages, and we may argue that it gave birth to the PC era, which is what gave rise to the *nix explosion (aka the "dot com bomb") as a follow-on event.** But is the Darwinian process that winnows the field to but a few languages also giving us more learnable ones? Consider Grace, a new language in development for the express purpose of teaching object oriented programming to students. Why not use Python? Python lacks compile time type checking. Is that bad? It's a subject of religious wars. Note how the voices beneath the main question worry about it's "subjective" nature: code for it's potential to inspire "flame wars": http://stackoverflow.com/questions/125367/dynamic-type-languages-versus-static-type-languages The answer that's eventually accepted takes the approach of reserving scorn for extremists in both camps. Kirby ** of course "dot com bomb" sounds bad for business whereas the *Nix revolution paved the way for the Free Web and free just about everything. New businesses depend on "going viral" i.e. the infinite replicability of binary objects is the key to their success, versus failure (a big turnaround in some industries) From kirby.urner at gmail.com Mon Feb 13 08:56:52 2012 From: kirby.urner at gmail.com (kirby urner) Date: Sun, 12 Feb 2012 23:56:52 -0800 Subject: [Edu-sig] will cows code? Message-ID: My whimsical title relates to the conflation of two notions: cows in a morphogenetic field, and the spread of computer languages. As more and more people learn Python, does it get easier to learn? That would seem an obvious "no" unless you believe in magic, but then think about it: more people learning it means more people who know Python and can write books, or already know how to make TV. It's the overlap in skill sets that spreads it, not spooky "action at a distance." The cow part comes for the story about those bars across ditches, aimed at scaring cows from trying to get through the gate. They were eventually so effective that baby cows would "just know", even if not shown the consequences (the adults already knew too). Lets see what my CropCircle Tractor can dig up on this... Bingo. "Is this because calves learn from older cattle that they should not try to cross? Apparently not." Feel free text search in the article below to this well known meme (be the 100th monkey to do so and win a prize!): http://www.noetic.org/noetic/issue-four-november-2010/morphic-fields-and-morphic-resonance/ Hey, I'm not saying I don't believe in a Noosphere (what they called it at Princeton). Kirby From kirby.urner at gmail.com Mon Feb 13 09:22:07 2012 From: kirby.urner at gmail.com (kirby urner) Date: Mon, 13 Feb 2012 00:22:07 -0800 Subject: [Edu-sig] edu.pycons? Message-ID: I brought up the idea of edu.pycon.org again recently. My idea was to have more university-based events instead of meeting in business hotels. Chairman Steve immediately pointed out the error of my ways. Pycons, including us.pycons, have already been university-based, many times. Those of you following the various blogs (planet this, laughing that) maybe saw how pycon.org is able to do outreach by tying to related domains through a subdomain. us.pycon.org is a good example. edu.pycon.org might map to a university that has chosen to specialize in Python, MIT for example. Or would that be fair? The PSF, as the owner of the pycon.org domain, would have to decide. Just because MIT hosted the site wouldn't mean the edu.pycons couldn't be somewhere else. On another front, I've been looking into the 'dirty jobs for academic credit' scenario, which is already a reality for some vets. My friend Glenn, in the military for a spell, got credits towards a degree at Antioch, or I believe he did, based on previous life experience. But this would be different, more like a semester abroad. One of Haverford Colleges former presidents is an inspiration here too. He would take other jobs just to keep his experience base broad. He wasn't trying to wear a halo, he was trying to stay smart and up to date. What "dirty jobs" might involve you with Python? A lot depends on what counts as a "dirty job". In one translation, it simply means "involving hard physical labor, such as heavy lifting, or the need to wear special clothing to guard against toxins or extremes of heat and cold". Python is not so often embedded in small devices as Java I'm pretty sure. The Java VM has a stronger market share. Who wants to talk about cell phones? If we have an edu.pycon someday, I hope there are tracks for people from many walks of life, and therefore with a wide variety of experience. I'm not saying the existing Pycons, in Asia, in South America, in North America, aren't already diverse. They are. Chairman Steve got to the ones in Argentina and Brazil last year, and in Singapore the year before. Python is sprouting up all over. I always think of Jeff Rush as an inspiration and mover and shaker behind the edu.pycon idea. Given how quickly us.pycon sold out, we might be seeing a surge of interest in this technology. Even more teachers are giving it a first or second look. Kirby From mokurai at earthtreasury.org Mon Feb 13 09:28:37 2012 From: mokurai at earthtreasury.org (mokurai at earthtreasury.org) Date: Mon, 13 Feb 2012 03:28:37 -0500 Subject: [Edu-sig] should we have learning languages? In-Reply-To: References: Message-ID: On Mon, February 13, 2012 2:42 am, kirby urner wrote: > One still hear's tones of regret that the good old > days are over, when one's choice of a first year > computer language was obvious: Algol or Pascal. LISP, Sir, LISP every time. Well, Logo or Scheme, more recently. (I reviewed The Little LISPer for Byte Magazine in 1978, and called it the best introductory programming book in any language. It has been replaced by The Little Schemer.) One of the greatest advantages of LISP is that one can rewrite the read-eval-print loop to one's own taste, so that LISPers are almost the only people in computing who are aware that syntax is bupkes. They call it syntactic sugar. But I know APLers who do the same thing, and it was even applied to FORTRAN once, in the form of RATFOR. Myself, I write tutorials for elementary school students in Turtle Art, where they get to program directly in tree structures, not in text. Thus they are not "sheltered" from parse trees, and can easily see that a TA program is the same in tree form, or if translated to Logo, Python, Smalltalk, APL/J, FORTH, or any other language in which TA has been or could be implemented. > Today there's no such consensus (if there ever > was), but another question is "should we have > learning languages?" Yes. Multiple languages. > There was a time when it was considered > intuitive that languages not used in the "real > world" could be all that much more powerful > as educational tools because weighted to > "learner" needs. Logo, Smalltalk, and APL, in particular. Logo and Smalltalk were designed so that children could learn them, and APL so that people could talk to each other about computers. Ken Iverson successfully used APL to teach first-grade arithmetic in an IBM-funded project. Except that they actually are used in what real programmers laughingly refer to as "the real world". > BASIC was one of those languages, and we > may argue that it gave birth to the PC era, which > is what gave rise to the *nix explosion (aka the > "dot com bomb") as a follow-on event.** > > But is the Darwinian process that winnows > the field to but a few languages also giving us > more learnable ones? The process is in no way Darwinian, which would imply Natural Selection or Sexual Selection. What we have instead is network effects in which the existence of large bodies of code in horrible languages is taken as sufficient reason to continue to program in the languages of those corpora. My father, a pioneer in the use of APL in actuarial work, offered to write a textbook in APL to be published by the Actuarial Society, but they insisted on FORTRAN instead. (This heavy-handed approach was only possible in the time of dead-tree textbooks, of course, but unfortunately that time is not quite over.) Since then FORTRAN has taken to stealing from the design of APL, but has never stolen enough. At the same time, "mainstream" CS academics have wandered all across the map of programming languages, from Algol to BASIC to Pascal to C to Java, but have never let up on the fundamental fallacy that every budding high-school CS student should be taught the same single language so that they can take the same AP exam. > Consider Grace, a new language in development > for the express purpose of teaching object > oriented programming to students. Why not > use Python? Python lacks compile time type > checking. Why not Smalltalk? Why not J? and while we are at it, why not teach functional programming? > Is that bad? > > It's a subject of religious wars. Note how the > voices beneath the main question worry about > it's "subjective" nature: code for it's potential > to inspire "flame wars": > > http://stackoverflow.com/questions/125367/dynamic-type-languages-versus-static-type-languages Edsger Dijkstra taught that separation of concerns was one of the most important concepts in applying Computer Science to real programming. In particular, getting programs provably correct before worrying in the least about efficiency. He described, advocated, and demonstrated the process in A Discipline of Programming. Similarly, Donald Knuth claimed, "Premature optimization is the root of all evil." However, neither of them applied his principle to language design. Dijkstra claimed that APL was "a mistake carried through to perfection", while Knuth to this day teaches MIX assembly language in The Art of Computer Programming. > The answer that's eventually accepted takes > the approach of reserving scorn for extremists > in both camps. "I invented the phrase Object-Oriented Programming, and C++ was not what I had in mind."--Alan Kay APL, the unCOBOL--me, on a bumper sticker sold at APL conferences > Kirby > > ** of course "dot com bomb" sounds bad > for business whereas the *Nix revolution paved > the way for the Free Web and free just about > everything. New businesses depend on "going > viral" i.e. the infinite replicability of binary > objects is the key to their success, versus > failure (a big turnaround in some industries) > _______________________________________________ > Edu-sig mailing list > Edu-sig at python.org > http://mail.python.org/mailman/listinfo/edu-sig > -- Edward Mokurai (默雷/धर्ममेघशब्दगर्ज/دھرممیگھشبدگر ج) Cherlin Silent Thunder is my name, and Children are my nation. The Cosmos is my dwelling place, the Truth my destination. http://wiki.sugarlabs.org/go/Replacing_Textbooks From kirby.urner at gmail.com Thu Feb 23 09:24:00 2012 From: kirby.urner at gmail.com (kirby urner) Date: Thu, 23 Feb 2012 00:24:00 -0800 Subject: [Edu-sig] spreading the word about PythonAnywhere Message-ID: """ Re: freeing scholars to return to their studies === http://www.pythonanywhere.com/user/pdx4d/consoles/ You won't be able to access that username's consoles without a password, but feel free to set up your own account. Here's a way to share Python across the wire. A way to play around and learn with others. Math teachers take note. Have a shared Python console open, along with audio/Skype, and you have the basis for an interesting meetup. Ideally, someone leading the presentation has uploaded some modules via DropBox. I could showcase rbf.py or quadrays.py. Something to work on. I'll post an update one day soon. """ to another list I frequent... Kirby