From mpaul213 at gmail.com Mon Aug 4 05:03:03 2008 From: mpaul213 at gmail.com (michel paul) Date: Sun, 3 Aug 2008 20:03:03 -0700 Subject: [Edu-sig] nouns and verbs Message-ID: <40ea4eb00808032003j280d193ck30b94fdc994efb1a@mail.gmail.com> In secondary math classes we often say "Math is a language", but we really don't teach it that way. The closest we get to that is calling the comparison operators 'verbs' and the various kinds of values that can be combined into expressions 'nouns'. So, as far as contemporary secondary math thinking is concerned, the only 'verbs' in 'math' are '=', '<', and '>', forms of 'to be'. However, I'd bet that a lot of students, and even teachers, would categorize '+', '-', '*', and '/' as 'verbs'. After all, they seem to suggest 'action'. But is '2 + 3' a sentence or a complete thought? No, it is an expression which is equivalent in value to another expression, namely, '5'. I keep thinking that, mathematically, it makes more sense to say that '2 + 3' is one of the already-existing partitions of '5'. Interestingly, if '2 + 3' were to be taken as a sentence, it would be imperative: "Hey you! Yeah, you! Find the value of 2 + 3, now!" Mathematically speaking, it would be more accurate to read '2 + 3' as 'the sum of 2 and 3'. Mathematically speaking, '2 + 3' is a value that does not need to emerge in time. It already exists. But, computationally speaking, it actually does make sense to think of '2 + 3' as a process. We start with a '2', then we do something with some registers or whatever, and we increment '2' by '3', and we end up with '5'. And then this leads into the question of functions - are they 'nouns' or 'verbs'? In OO terms, functions are how objects relate to other objects. Mathematically speaking, at least according to contemporary secondary textbooks, a function is a set of ordered pairs. The expression 'f(x)' is a VALUE. So, 'f(x)' is a 'noun'. But again, computationally speaking, a function is a process. It takes in some information, does something to it, and then yields some new information. In computational terms, a function is something we 'do' to a value to produce a new value. I do apologize if this is not the correct venue for raising such questions, as it is not language specific, but I find this really interesting. I think it might have a lot to do with contemporary students, and teachers!, not 'getting' what math really is, and it might shed a lot of useful light on the disconnect between the current secondary math curriculum and the current state of computational understanding. This semester, at a high school level, I do intend to teach math as a 'language', and I'd like to get really clear about these kinds of things. Thanks very much for any feedback, Michel Paul -------------- next part -------------- An HTML attachment was scrubbed... URL: From kirby.urner at gmail.com Mon Aug 4 05:24:03 2008 From: kirby.urner at gmail.com (kirby urner) Date: Sun, 3 Aug 2008 20:24:03 -0700 Subject: [Edu-sig] nouns and verbs In-Reply-To: References: <40ea4eb00808032003j280d193ck30b94fdc994efb1a@mail.gmail.com> Message-ID: [ repost after delivery failure ] From: kirby urner Date: Sun, Aug 3, 2008 at 8:20 PM Subject: Re: [Edu-sig] nouns and verbs To: michel paul Cc: "edu-sig at python.org" , Glenn Stockton 2008/8/3 michel paul : > In secondary math classes we often say "Math is a language", but we really > don't teach it that way. << SNIP >> > This semester, at a high school level, I do intend to teach math as a > 'language', and I'd like to get really clear about these kinds of things. > > Thanks very much for any feedback, > > Michel Paul Hi Michel, If you haven't already, I seriously recommend you check out the J language from Jsoftware.com, a direct descendant of APL's that is (a) self-consciously an "executable math notation" (this was Iverson's shoptalk) and (b) is very deliberately taught in terms of parts of speech, milks that analogy very creatively and intelligently. Verbs, nouns, adverbs... check it out! http://www.jsoftware.com/jwiki/Phrases Also, I did a few web pages on J myself at http://www.4dsolutions.net/ocn/cp4e.html -- Kenneth Iverson himself helped me with typos in 'Jiving in J', though I still think there's one or two left (my responsibility). I see nothing oxymoronic nor even perverse about recommending J on a Python list, as my position all along has been you need at minimum two widely differently languages, preferably more though, to get a sense of the freedoms one has, when being inventive in this lineage. Python and J would be a dynamite combo I've long considered teaching. Someone should try it, report back. As an intro math course, we're not expecting miracle levels of proficiency with either out the other end, however we already know both communities support a rich and relevant mathematics-related literature, complete with lots free / open source code. See Roger Hui's stuff especially, and our own Tim Peters. Kirby From dr.addn at gmail.com Mon Aug 4 07:21:10 2008 From: dr.addn at gmail.com (Ph.T) Date: Sun, 3 Aug 2008 22:21:10 -0700 Subject: [Edu-sig] web2py 1.38 In-Reply-To: <361b27370807191049h7b2b8fbetb515d5737b1616e4@mail.gmail.com> References: <931AF363-FAA0-4166-9681-6D2885C231AB@cs.depaul.edu> <5.2.1.1.0.20080717094534.01703a60@mail.ece.arizona.edu> <22166b750807191024k4e01c011i839a8c26b5e6383c@mail.gmail.com> <361b27370807191049h7b2b8fbetb515d5737b1616e4@mail.gmail.com> Message-ID: <8fd4a2fe0808032221w26f97fbak527165d0c1171d2e@mail.gmail.com> . I believe that a typical way to name it would be "pyweb2 . 2008/7/19 Atul Varma > 2008/7/19 Tony Theodore : > >> In my mind, web2py sums it up pretty well - Web 2.0 in Python. MVC, ajax, >> trivial deployment (even back to cgi on GAE), all "web2ish" attributes. It >> might interest you that it was initially called Gluon. >> > > That's really interesting, because over the past year or so of reading > about web2py, I had always assumed that it meant "web-to-python", in the > style of command-line tools like "rst2html" (which converts restructured > text to html); this was also confusing, because it seemed like "py2web" > would be more appropriate. > > Looking at the website now, I see no mention of the phrase "web 2.0", so > perhaps the marketing materials may want to make the connection more > evident. > > - Atul > > > _______________________________________________ > Edu-sig mailing list > Edu-sig at python.org > http://mail.python.org/mailman/listinfo/edu-sig > > -- Americium Dream Documents "(real opportunity starts with real documentation) -------------- next part -------------- An HTML attachment was scrubbed... URL: From echerlin at gmail.com Mon Aug 4 07:31:59 2008 From: echerlin at gmail.com (Edward Cherlin) Date: Sun, 3 Aug 2008 22:31:59 -0700 Subject: [Edu-sig] nouns and verbs In-Reply-To: <40ea4eb00808032003j280d193ck30b94fdc994efb1a@mail.gmail.com> References: <40ea4eb00808032003j280d193ck30b94fdc994efb1a@mail.gmail.com> Message-ID: 2008/8/3 michel paul : > In secondary math classes we often say "Math is a language", but we really > don't teach it that way. Turing Award winner Ken Iverson did. He called data objects nouns, functions verbs, identifiers pronouns, and operators (to create new verbs from old) adverbs. So 2 is a noun, as is '2'. 'Hello' is a noun with five member nouns. 1 2 3 4 5 6 is a noun with 2 rows and 3 columns, and thus 6 members. Its shape 2 3 can thus be regarded a a noun with 2 members. Verbs include +-<> and many more that we usually write in non-ASCII symbols. Iverson began using / as an adverb in the 1950s, so that +/1 2 3 puts + between the members of 1 2 3, giving 1+2+3, and similarly for other verbs. Their scope has been very greatly expanded since. I have his textbooks on Arithmetic, Algebra, and Calculus written this way, with every math expression executable. (At One Laptop Per Child we are thinking about going beyond text you can type in and run. We want students to be able to click on expressions in electronic 'books' to execute them, and to be able to tweak the parameters on graphs and have them update. And so on.) > The closest we get to that is calling the comparison operators 'verbs' and > the various kinds of values that can be combined into expressions 'nouns'. > > So, as far as contemporary secondary math thinking is concerned, the only > 'verbs' in 'math' are '=', '<', and '>', forms of 'to be'. > > However, I'd bet that a lot of students, and even teachers, would categorize > '+', '-', '*', and '/' as 'verbs'. or even ?? > After all, they seem to suggest 'action'. > > But is '2 + 3' a sentence or a complete thought? In some programming languages, including all those designed by Iverson, 2+3 is a complete imperative sentence, to which the interpreter responds with the answer. 2+3 5 > No, it is an expression which is equivalent in value to another expression, > namely, '5'. Sometimes. > I keep thinking that, mathematically, it makes more sense to say that '2 + > 3' is one of the already-existing partitions of '5'. > > Interestingly, if '2 + 3' were to be taken as a sentence, it would be > imperative: > "Hey you! Yeah, you! Find the value of 2 + 3, now!" Indeed. > Mathematically speaking, it would be more accurate to read '2 + 3' as 'the > sum of 2 and 3'. > > Mathematically speaking, '2 + 3' is a value that does not need to emerge in > time. It already exists. > > But, computationally speaking, it actually does make sense to think of '2 + > 3' as a process. > > We start with a '2', then we do something with some registers or whatever, > and we increment '2' by '3', and we end up with '5'. In Smalltalk we send a message to 2 telling it '+3', and the interpreter looks up the method for 2 to carry out this request. > And then this leads into the question of functions - are they 'nouns' or > 'verbs'? > > In OO terms, functions are how objects relate to other objects. In OO, objects have methods. > Mathematically speaking, at least according to contemporary secondary > textbooks, a function is a set of ordered pairs. That's a relation. A function is a relation with no duplicate first values. > The expression 'f(x)' is a VALUE. The expression 'f(x)' may have a value, but is not required to do so. > So, 'f(x)' is a 'noun'. You have to be careful of that word 'is'. It may be that 'function' is defined in this way, but functions are many other things besides. > But again, computationally speaking, a function is a process. It takes in > some information, does something to it, and then yields some new > information. > > In computational terms, a function is something we 'do' to a value to > produce a new value. In functional programming, a function must return a value, and not change any values. Code that either does not return a value, or changes values (side effects) may be called a 'procedure'. In procedural programming, the mapping of names (pronouns) and values can be changed by assignment within a procedure. > I do apologize if this is not the correct venue for raising such questions, > as it is not language specific, but I find this really interesting. I think > it might have a lot to do with contemporary students, and teachers!, not > 'getting' what math really is, My mentor in Buddhism, Rev. Jiyu Kennett, told me early on that she had been unable to do algebra between studying it in school in the 1930s, and the time we met in 1969, because the idea of a variable made no sense. Her teacher had tried to explain 'variable' as a number that changes its value, which she and I both understood cannot happen. When I explained that a variable is a name that can be given to different numbers at different times (a pronoun) without the numbers changing, she went away for about half an hour to try it out, and came back saying that she could do it all now, and we didn't need to talk about it any further. Yale University had several math professors teaching in middle school in New Haven in the 1960s, and reporting similar misunderstandings. The children also frequently asked deep questions in the foundations of mathematics that the teachers had no idea how to deal with. One of the simpler ones is, "Is there a biggest number?" This question was a part of the puzzle of foundations, roughly from Peano, Frege, and Russell to Zermelo and Fraenkel, a period of more than thirty years. If by 'number' you mean the integers, then there is no biggest number. If you mean the Cantor transfinite cardinals, it turns out in Zermelo-Fraenkel set theory with the Axiom of Choice (ZFC, "The Standard Model") that the transfinites have an upper limit. At this point one can argue (pointlessly) whether that limit is or is not a number, since all other numbers can be defined as sets, and the limit cannot. ZFC is apparently consistent, and satisfies all of the requirements of working mathematicians up to its time, but it is deeply dissatisfying to the philosophically-minded. One can also look for other foundations for mathematics, as is currently being done in Topose Theory. If you didn't understand all of that, you are in good company. Nobody knows how this phase of it will come out, and we have even less idea what will come after. Furthermore, it is just the same for set theory as Bohr said of his field, "Anyone who is not shocked by quantum theory has not understood it." > and it might shed a lot of useful light on > the disconnect between the current secondary math curriculum and the current > state of computational understanding. In the time since Turing and Goedel proved the essential undecidability of mathematics in general and computation in particular, we do our students a great disservice by pretending that mathematics always gives the right answer. > This semester, at a high school level, I do intend to teach math as a > 'language', and I'd like to get really clear about these kinds of things. > > Thanks very much for any feedback, > > Michel Paul I can point you to software and textbooks that will help, and put you into contact with others who are doing this. > _______________________________________________ > Edu-sig mailing list > Edu-sig at python.org > http://mail.python.org/mailman/listinfo/edu-sig > > -- Silent Thunder [??/????????] is my name, And Children are my nation. The whole world is my dwelling place, And Truth my destination. From echerlin at gmail.com Mon Aug 4 07:42:31 2008 From: echerlin at gmail.com (Edward Cherlin) Date: Sun, 3 Aug 2008 22:42:31 -0700 Subject: [Edu-sig] nouns and verbs In-Reply-To: References: <40ea4eb00808032003j280d193ck30b94fdc994efb1a@mail.gmail.com> Message-ID: On Sun, Aug 3, 2008 at 8:24 PM, kirby urner wrote: > 2008/8/3 michel paul : >> In secondary math classes we often say "Math is a language", but we really >> don't teach it that way. > > << SNIP >> > >> This semester, at a high school level, I do intend to teach math as a >> 'language', and I'd like to get really clear about these kinds of things. >> >> Thanks very much for any feedback, >> >> Michel Paul > > Hi Michel, > > If you haven't already, I seriously recommend you check out the J language > from Jsoftware.com, a direct descendant of APL's that is (a) self-consciously > an "executable math notation" (this was Iverson's shoptalk) and (b) is very > deliberately taught in terms of parts of speech, milks that analogy very > creatively and intelligently. Verbs, nouns, adverbs... check it out! Yes, that's what I was talking about. > http://www.jsoftware.com/jwiki/Phrases > > Also, I did a few web pages on J myself at > http://www.4dsolutions.net/ocn/cp4e.html > -- Kenneth Iverson himself helped me with typos in 'Jiving in J', though I still > think there's one or two left (my responsibility). > > I see nothing oxymoronic nor even perverse about recommending J on a > Python list, as my position all along has been you need at minimum two > widely differently languages, preferably more though, to get a sense of the > freedoms one has, when being inventive in this lineage. I have always said that you need more than two. In Computer Science, I recommend learning not just the surface languages, but how LISP, FORTH, and APL work internally, in comparison with the more conventional languages. Each of these three languages is based on a single unified concept of data objects, with a minimalist syntax. LISP uses prefix syntax with parentheses (+ 2 3), APL uses infix, 2+3, and FORTH uses postfix, 2 3 +. I suggest The Little LISPer or The Little Schemer The Anatomy of LISP Starting FORTH Thinking FORTH Any math book written in APL, such as Iverson's Arithmetic. There is no good introduction to APL internals, but the source code for J has been published, is quite short, and is a miracle of style. > Python and J would be a dynamite combo I've long considered teaching. > Someone should try it, report back. > > As an intro math course, we're not expecting miracle levels of proficiency > with either out the other end, however we already know both communities > support a rich and relevant mathematics-related literature, complete with > lots free / open source code. See Roger Hui's stuff especially, and our > own Tim Peters. > > Kirby > _______________________________________________ > Edu-sig mailing list > Edu-sig at python.org > http://mail.python.org/mailman/listinfo/edu-sig > -- Silent Thunder [??/????????] is my name, And Children are my nation. The whole world is my dwelling place, And Truth my destination. From yoshiki at vpri.org Wed Aug 6 07:32:39 2008 From: yoshiki at vpri.org (Yoshiki Ohshima) Date: Tue, 05 Aug 2008 22:32:39 -0700 Subject: [Edu-sig] nouns and verbs In-Reply-To: <40ea4eb00808032003j280d193ck30b94fdc994efb1a@mail.gmail.com> References: <40ea4eb00808032003j280d193ck30b94fdc994efb1a@mail.gmail.com> Message-ID: At Sun, 3 Aug 2008 20:03:03 -0700, michel paul wrote: > > In secondary math classes we often say "Math is a language", but we really don't teach it that way. > > The closest we get to that is calling the comparison operators 'verbs' and the various kinds of values that can be > combined into expressions 'nouns'. I enjoyed reading your lines of thought, and Edward has a good observation. But I also have to point out that when people say "math is a language", it means that Math is a language to describe what it can describe well. But trying to make an analogy to English doesn't get you go too far. After all, why does it have to have anything to do with the English syntax? It is not a great language to express what you would like to do over weekend either. The "language-ness" is not in whether it has verbs and nouns, but the relationship between the target concept (Idea) and the description to mean it, and also something to "think in". And, the language-ness is not in these mathematical symbols and syntax, either. It would be possible to write equations in English-like syntax (like your "sum of 2 and 3" example). But the aspiration of preciseness compactness tends to favor a simpler and less ambiguious notation. So, it would be appropriate to say "math is a language for of physics" but saying "math is a language" doesn't sound like a complete sentence to me. "Is math a language of math?" would be an interesting question^^; Now, computer languages are like mathematics, but much more complex in many ways. It is built on top of some axioms, but the set of axioms tends to be very big. The notation is less ambiguous than typical mathematics one because one of the intended readers of the notation is the computer. -- Yoshiki From kirby.urner at gmail.com Wed Aug 6 08:56:50 2008 From: kirby.urner at gmail.com (kirby urner) Date: Tue, 5 Aug 2008 23:56:50 -0700 Subject: [Edu-sig] nouns and verbs In-Reply-To: References: <40ea4eb00808032003j280d193ck30b94fdc994efb1a@mail.gmail.com> Message-ID: We have a spectrum of languages gluing equations and other special notations into a larger patchwork of interconnecting disciplines. It's not that there's the vernacular and then math. OO is actually an approach to (mirror of) human grammar in taking the object thing very seriously, maximizing its value as a generalizing metaphor for building syntax ("dot notation" in many languages, Python included), a really good idea I think, even if we continue with other models as well, start new ones. Is chess a language? This kind of question gets discussed in Wittgenstein's remarks on the foundations of mathematics, other investigations. Looking for a simple yes or no answer is missing the point, of appreciating the varied landscape. What makes machine executable math notations special is they must follow a rule book very precisely, a feature one looks for in any language game claiming to be logical. Sheer runnability against an interpreter is already a kind of proof (jumping a logical hurdle), however trivial (like it runs, so what). By the way, the LEX Institute, based in Japan, other places, takes precisely this 'math is another human language' approach when needing to learn about Fourier Transformations in order to tackle vowel sound studies. These language students tackled the job of teaching themselves using their language-teaching philosophy, resulting in a book 'Who Is Fourier?' and talked about early in the history of edu-sig, especially by Jason Cunliffe, whom I had the good fortune to meet in New York City that time. http://mail.python.org/pipermail/edu-sig/2001-October/001788.html Lots of dovetailing twixt the approach here, and what we find in say O'Reilly's 'Dive Into...' series (also in 'Concrete Mathematics' some...). Kirby On Tue, Aug 5, 2008 at 10:32 PM, Yoshiki Ohshima wrote: > At Sun, 3 Aug 2008 20:03:03 -0700, > michel paul wrote: >> >> In secondary math classes we often say "Math is a language", but we really don't teach it that way. >> >> The closest we get to that is calling the comparison operators 'verbs' and the various kinds of values that can be >> combined into expressions 'nouns'. > > I enjoyed reading your lines of thought, and Edward has a good > observation. But I also have to point out that when people say "math > is a language", it means that Math is a language to describe what it > can describe well. But trying to make an analogy to English doesn't > get you go too far. After all, why does it have to have anything to > do with the English syntax? It is not a great language to express > what you would like to do over weekend either. > > The "language-ness" is not in whether it has verbs and nouns, but > the relationship between the target concept (Idea) and the description > to mean it, and also something to "think in". > > And, the language-ness is not in these mathematical symbols and > syntax, either. It would be possible to write equations in > English-like syntax (like your "sum of 2 and 3" example). But the > aspiration of preciseness compactness tends to favor a simpler and > less ambiguious notation. > > So, it would be appropriate to say "math is a language for of > physics" but saying "math is a language" doesn't sound like a complete > sentence to me. "Is math a language of math?" would be an interesting > question^^; > > Now, computer languages are like mathematics, but much more complex > in many ways. It is built on top of some axioms, but the set of > axioms tends to be very big. The notation is less ambiguous than > typical mathematics one because one of the intended readers of the > notation is the computer. > > -- Yoshiki > _______________________________________________ > Edu-sig mailing list > Edu-sig at python.org > http://mail.python.org/mailman/listinfo/edu-sig > From kirby.urner at gmail.com Wed Aug 6 09:01:16 2008 From: kirby.urner at gmail.com (kirby urner) Date: Wed, 6 Aug 2008 00:01:16 -0700 Subject: [Edu-sig] nouns and verbs In-Reply-To: References: <40ea4eb00808032003j280d193ck30b94fdc994efb1a@mail.gmail.com> Message-ID: On Tue, Aug 5, 2008 at 11:56 PM, kirby urner wrote: << SNIP >> > Lots of dovetailing twixt the approach here, and what we find in say > O'Reilly's 'Dive Into...' series (also in 'Concrete Mathematics' > some...). > > Kirby Actually that'd be the 'Head First...' series, but you catch my drift (we've made advances in pedagogy, both around text, and with more cinemagraphic innovations ala ShowMeDo, further expending the range of experimentation (lots to learn, about how to accommodate various learning styles)). Kirby From vceder at canterburyschool.org Wed Aug 6 22:00:44 2008 From: vceder at canterburyschool.org (Vern Ceder) Date: Wed, 06 Aug 2008 16:00:44 -0400 Subject: [Edu-sig] K12 Open Minds Conference Message-ID: <489A02EC.3040807@canterburyschool.org> Hi everyone, I know that this isn't 100% Python related, but I think the topic is close enough to be of interest to many of you, so I thought I'd pass this along. In September in Indianapolis, we will be having the second K12 Open Minds conference, dedicated the use of open source software in K-12 education (e.g. Python in my middle and high school classes, or more compellingly the OLPC's Sugar, and Indiana's use of Linux as the OS for 200,000 computers in high schools across the state). So I've included the full invitation letter from the organizers. Contact me off list if you want to know more, or contact the main organizers, Steve Hargadon and Mike Huffman, directly. And if someone wants to present on using Python in the K12 space, the deadline for proposals is August 15. Cheers, Vern Ceder ----------------------------------------------------------- Dear Educational Leader: Schools around the United States and the world are discovering the benefits of Open-Source Software. In Indiana alone, over 150,000 students use Open-Source Software every day. Not only does Open-Source Software save money, it allows schools to extend essential educational software to students' homes and into after-school programs, providing extended learning opportunities at no cost. Are you looking for ways to provide more technology with less money? Could your teachers benefit from a Virtual Learning Environment (Moodle, Sakai)? Do you want a solution for all of your students to access their school work from home? Is your school community looking for ways to increase student engagement and learning? Have you thought about developing an Open-Source Software strategy to increase technology access while controlling costs? Join us September 25-27, 2008 in Indianapolis, Indiana for the K-12 Open Minds Conference! This is an unparalleled opportunity to talk with teachers, administrators and technology staff from around the U.S. and the world. We expect more than 600 attendees, from the US, Europe, Asia and North and South America. Dozens of sessions that address teaching and learning, leadership and technical issues related to open technologies make this conference a "must attend" event. Teaching and Learning sessions will feature experienced teachers from around the world demonstrating successful strategies and techniques. Technology and Infrastructure sessions will feature experts from around the world on issues such as: connecting to your local Windows or Mac authentication server, managing large and small network deployments, and using interactive whiteboards in classrooms in Linux and open-source environments, and more. Additional sessions designed for Leadership and Policy will demonstrate how policy initiatives and effective strategies for using Open-Source Software help to meet your educational objectives. Featured Speakers include: Donna Benjamin - Executive Director of Creative Contingencies and board member of Open Source Industry Australia; Alex Inman -- Director of Technology at Whitfield School, St. Louis, MO - an Essential School using open source; Chris Lehman -- Principal of the Science Leadership Academy in Philadelphia, PA, and; Dr. David Thornburg - Director of Global Operations for the Thornburg Center and author of several books including, When the Best is Free. For more information and to register go to: http://k12openminds.org A special conference hotel rate of $97 is available at the Indianapolis Downtown Marriott through Monday, August 25, 2008. After that, rates may be higher. If you have any questions please contact Mike Huffman at 317.232.6672 or mhuffman at doe.in.gov -- This time for sure! -Bullwinkle J. Moose ----------------------------- Vern Ceder, Director of Technology Canterbury School, 3210 Smith Road, Ft Wayne, IN 46804 vceder at canterburyschool.org; 260-436-0746; FAX: 260-436-5137 From matt.kameron at gmail.com Mon Aug 11 03:28:39 2008 From: matt.kameron at gmail.com (Matt K) Date: Mon, 11 Aug 2008 11:28:39 +1000 Subject: [Edu-sig] IDE for GUI development in Python Message-ID: <53b2477a0808101828r1a356460h270dff79c9756bb3@mail.gmail.com> Hi all, I'm looking at using a GUI IDE for helping my high school students to learn GUI programming. The kind of interface which Visual Basic offers... but in Python. I've found Blackadder so far, but its not free (or finished!) Do any of you have any (ideally free) suggestions? Thanks -------------- next part -------------- An HTML attachment was scrubbed... URL: From winstonw at stratolab.com Mon Aug 11 03:41:57 2008 From: winstonw at stratolab.com (Winston Wolff) Date: Sun, 10 Aug 2008 21:41:57 -0400 Subject: [Edu-sig] IDE for GUI development in Python In-Reply-To: <53b2477a0808101828r1a356460h270dff79c9756bb3@mail.gmail.com> References: <53b2477a0808101828r1a356460h270dff79c9756bb3@mail.gmail.com> Message-ID: <546CE5A4-BE51-4C69-9678-87EAF851EC80@stratolab.com> PythonCard is pretty nice when it works. I found it finicky but better than most. -Winston On Aug 10, 2008, at 9:28 PM, Matt K wrote: > Hi all, > > I'm looking at using a GUI IDE for helping my high school students > to learn GUI programming. The kind of interface which Visual Basic > offers... but in Python. > > I've found Blackadder so far, but its not free (or finished!) Do any > of you have any (ideally free) suggestions? > > Thanks > _______________________________________________ > Edu-sig mailing list > Edu-sig at python.org > http://mail.python.org/mailman/listinfo/edu-sig Winston Wolff Stratolab - Learning by Creating (646) 827-2242 - http://stratolab.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From kirby.urner at gmail.com Mon Aug 11 04:28:16 2008 From: kirby.urner at gmail.com (kirby urner) Date: Sun, 10 Aug 2008 19:28:16 -0700 Subject: [Edu-sig] IDE for GUI development in Python In-Reply-To: <53b2477a0808101828r1a356460h270dff79c9756bb3@mail.gmail.com> References: <53b2477a0808101828r1a356460h270dff79c9756bb3@mail.gmail.com> Message-ID: Learning GUI programming fundamentals is best accomplished with a straight text editor IMO (vim, scintilla, whatever). Dragging and dropping widgets from a tools palette is convenient, but not the best way to learn GUI programming, as such IDEs tend to insulate from the details, not teach them -- why VB in general is not a good learning environment, a common mistake many schools make. John Zelle's book using Tk is a good one. I recommend intro classes go through quite a number of widget libraries, each time doing nothing too difficult, using Gtk, wx, Qt, even AWT via Jython maybe. Students get a feel for what's common (window concept), what's different (e.g. event model). Most importantly, a lot of GUI development = web pages for visuals these days, not thick client at all, so if the point of the course really is GUI development, then JavaScript/CSS, some exposure to web frameworks, e.g. ASP, is a must. Kirby 2008/8/10 Matt K : > Hi all, > > I'm looking at using a GUI IDE for helping my high school students to learn > GUI programming. The kind of interface which Visual Basic offers... but in > Python. > > I've found Blackadder so far, but its not free (or finished!) Do any of you > have any (ideally free) suggestions? > > Thanks > > _______________________________________________ > Edu-sig mailing list > Edu-sig at python.org > http://mail.python.org/mailman/listinfo/edu-sig > > From mdipierro at cs.depaul.edu Mon Aug 11 09:31:44 2008 From: mdipierro at cs.depaul.edu (Massimo Di Pierro) Date: Mon, 11 Aug 2008 02:31:44 -0500 Subject: [Edu-sig] IDE for GUI development in Python In-Reply-To: References: <53b2477a0808101828r1a356460h270dff79c9756bb3@mail.gmail.com> Message-ID: I have not used but according to http://www.riverbankcomputing.co.uk/software/pyqt/intro "Qt also includes Qt Designer, a graphical user interface designer. PyQt is able to generate Python code from Qt Designer. It is also possible to add new GUI controls written in Python to Qt Designer." Qt designer is fantastic http://trolltech.com/products/qt/features/ tools/designer Massimo On Aug 10, 2008, at 9:28 PM, kirby urner wrote: > Learning GUI programming fundamentals is best accomplished with a > straight text editor IMO (vim, scintilla, whatever). > > Dragging and dropping widgets from a tools palette is convenient, but > not the best way to learn GUI programming, as such IDEs tend to > insulate from the details, not teach them -- why VB in general is not > a good learning environment, a common mistake many schools make. > > John Zelle's book using Tk is a good one. > > I recommend intro classes go through quite a number of widget > libraries, each time doing nothing too difficult, using Gtk, wx, Qt, > even AWT via Jython maybe. Students get a feel for what's common > (window concept), what's different (e.g. event model). > > Most importantly, a lot of GUI development = web pages for visuals > these days, not thick client at all, so if the point of the course > really is GUI development, then JavaScript/CSS, some exposure to web > frameworks, e.g. ASP, is a must. > > Kirby > > > 2008/8/10 Matt K : >> Hi all, >> >> I'm looking at using a GUI IDE for helping my high school students >> to learn >> GUI programming. The kind of interface which Visual Basic >> offers... but in >> Python. >> >> I've found Blackadder so far, but its not free (or finished!) Do >> any of you >> have any (ideally free) suggestions? >> >> Thanks >> >> _______________________________________________ >> Edu-sig mailing list >> Edu-sig at python.org >> http://mail.python.org/mailman/listinfo/edu-sig >> >> > _______________________________________________ > Edu-sig mailing list > Edu-sig at python.org > http://mail.python.org/mailman/listinfo/edu-sig From goodmansond at gmail.com Mon Aug 11 15:39:43 2008 From: goodmansond at gmail.com (DeanG) Date: Mon, 11 Aug 2008 08:39:43 -0500 Subject: [Edu-sig] IDE for GUI development in Python In-Reply-To: <53b2477a0808101828r1a356460h270dff79c9756bb3@mail.gmail.com> References: <53b2477a0808101828r1a356460h270dff79c9756bb3@mail.gmail.com> Message-ID: Wing IDE requires an external GUI but the free 101 version along with an external designing tool may work for you. They've also got steep educational licenses. http://www.wingware.com/wing101 - Dean From macquigg at ece.arizona.edu Tue Aug 12 05:32:34 2008 From: macquigg at ece.arizona.edu (David MacQuigg) Date: Mon, 11 Aug 2008 20:32:34 -0700 Subject: [Edu-sig] IDE for GUI development in Python In-Reply-To: References: <53b2477a0808101828r1a356460h270dff79c9756bb3@mail.gmail.com> <53b2477a0808101828r1a356460h270dff79c9756bb3@mail.gmail.com> Message-ID: <5.2.1.1.0.20080811151738.03ce2120@mail.ece.arizona.edu> At 07:28 PM 8/10/2008 -0700, kirby urner wrote: >Learning GUI programming fundamentals is best accomplished with a >straight text editor IMO (vim, scintilla, whatever). I'll second that. Learn just a few simple widgets in Tk. It's not that much typing. I've also used BlackAdder and Qt (years ago). BlackAdder was a mess. Qt has more polish than Tk, but the detail can be overwhelming for students. Don't forget IDLE, the built-in editor for Python. Superb! The only problem is if your GUI uses an event loop, there will be a conflict when you run it from IDLE, which also uses Tk event loops. Just run your GUI app from a command line instead of the Run command in IDLE, and things should be OK. >Dragging and dropping widgets from a tools palette is convenient, but >not the best way to learn GUI programming, as such IDEs tend to >insulate from the details, not teach them -- why VB in general is not >a good learning environment, a common mistake many schools make. > >John Zelle's book using Tk is a good one. Good choice. -- Dave >2008/8/10 Matt K : >> Hi all, >> >> I'm looking at using a GUI IDE for helping my high school students to learn >> GUI programming. The kind of interface which Visual Basic offers... but in >> Python. >> >> I've found Blackadder so far, but its not free (or finished!) Do any of you >> have any (ideally free) suggestions? >> >> Thanks >> >> _______________________________________________ >> Edu-sig mailing list >> Edu-sig at python.org >> http://mail.python.org/mailman/listinfo/edu-sig >> >> >_______________________________________________ >Edu-sig mailing list >Edu-sig at python.org >http://mail.python.org/mailman/listinfo/edu-sig From matt.kameron at gmail.com Tue Aug 12 08:10:16 2008 From: matt.kameron at gmail.com (Matt K) Date: Tue, 12 Aug 2008 16:10:16 +1000 Subject: [Edu-sig] IDE for GUI development in Python In-Reply-To: <53b2477a0808101828r1a356460h270dff79c9756bb3@mail.gmail.com> References: <53b2477a0808101828r1a356460h270dff79c9756bb3@mail.gmail.com> Message-ID: <53b2477a0808112310v408235c0y2e526064f487cd71@mail.gmail.com> Thanks for all the suggestions! Here are the responses (from both mailing lists): *Winston* - PythonCard looks interesting. However I cannot see any sample code on the website. Would you be able to send me some sample code that your students may have written? Just a small amount so that I can gauge the simplicity for my students. *Garry* - I'm after software to help students design their own GUI, rather than simply a graphical programming environment. Sorry that I was unclear! *Kirby* - What level do you teach? I'm teaching Year 11 students and my goal is certainly not for students to be competent at programming GUIs. My goal is for them to be competent at the basics: loops, data structures etc. I'm hiding many things from them including classes - although we do use classes we use them as no more than a C struct (since this is in line with the secondary school curriculum). Occasionally we need to deviate from this but this is vary rare. The need for GUI is because we are coding a real world problem which requires a GUI. Hence I am after something that is quick and simple, and I don't mind if they come out saying "I really understand programming although I don't really get how the GUI linked in." *Massimo, web2py* - I'm looking for a non-web based solution. We already do cgi-scripting in Year 10 and the project will involve some cgi. But it also needs a stand-alone executable (for a different set of users). *Massimo, QT* - I have the same comment as I gave to Winston, above. Do you have any sample code from students who have written a relatively simplistic GUI? *Tim and Dean* - Wing looks fantastic as a development environment and I will consider switching to it for the general Python programming (replacing the Python IDLE which we're mostly using at the moment). That being said it doesn't offer direct GUI development tools so it doesn't solve my short term problem. *David* - I appreciate your comments re: BlackAdder and Qt. And my reservation with Tk is not the typing... its that the students will not understand the code that they are typing sufficiently well to be able to modify it. *Thanks so much for all your help - further comments are still welcome =) Matt* On Mon, Aug 11, 2008 at 11:28 AM, Matt K wrote: > Hi all, > > I'm looking at using a GUI IDE for helping my high school students to learn > GUI programming. The kind of interface which Visual Basic offers... but in > Python. > > I've found Blackadder so far, but its not free (or finished!) Do any of you > have any (ideally free) suggestions? > > Thanks > -------------- next part -------------- An HTML attachment was scrubbed... URL: From mdipierro at cs.depaul.edu Tue Aug 12 11:08:43 2008 From: mdipierro at cs.depaul.edu (Massimo Di Pierro) Date: Tue, 12 Aug 2008 04:08:43 -0500 Subject: [Edu-sig] IDE for GUI development in Python In-Reply-To: <53b2477a0808112310v408235c0y2e526064f487cd71@mail.gmail.com> References: <53b2477a0808101828r1a356460h270dff79c9756bb3@mail.gmail.com> <53b2477a0808112310v408235c0y2e526064f487cd71@mail.gmail.com> Message-ID: On Aug 12, 2008, at 1:10 AM, Matt K wrote: > Massimo, web2py - I'm looking for a non-web based solution. We > already do cgi-scripting in Year 10 and the project will involve > some cgi. But it also needs a stand-alone executable (for a > different set of users). I'd suggest using WSGI instead of CGI. CGI is slow and does not support streaming. web2py is based on WSGI and you can distribute your apps with the framework as a stand alone executable (when you click on it it starts web server, database, and your app in the UI in the browser). On Windows and Mac it does not require having Python installed. > Massimo, QT - I have the same comment as I gave to Winston, above. > Do you have any sample code from students who have written a > relatively simplistic GUI? Sorry. I have not. Massimo -------------- next part -------------- An HTML attachment was scrubbed... URL: From kirby.urner at gmail.com Tue Aug 12 18:03:55 2008 From: kirby.urner at gmail.com (kirby urner) Date: Tue, 12 Aug 2008 09:03:55 -0700 Subject: [Edu-sig] IDE for GUI development in Python In-Reply-To: <53b2477a0808112310v408235c0y2e526064f487cd71@mail.gmail.com> References: <53b2477a0808101828r1a356460h270dff79c9756bb3@mail.gmail.com> <53b2477a0808112310v408235c0y2e526064f487cd71@mail.gmail.com> Message-ID: 2008/8/11 Matt K : > Thanks for all the suggestions! > Here are the responses (from both mailing lists): << SNIP >> > Kirby - What level do you teach? I'm teaching Year 11 students and my goal > is certainly not for students to be competent at programming GUIs. My goal > is for them to be competent at the basics: loops, data structures etc. I'm > hiding many things from them including classes - although we do use classes > we use them as no more than a C struct (since this is in line with the > secondary school curriculum). Occasionally we need to deviate from this but > this is vary rare. The need for GUI is because we are coding a real world > problem which requires a GUI. Hence I am after something that is quick and > simple, and I don't mind if they come out saying "I really understand > programming although I don't really get how the GUI linked in." Hi Matt. My students have tended to be pre-college and have not been that GUI focused, though we've done some, mostly I tell a lot of stories around how GUIs came to be, in contrast to command line, what's a widget. We might just play with one widget, like a pull down, maybe in a web browser though, the control having been written and populated by server-side Python. An example with some widgets might be http://www.4dsolutions.net/ocn/geoquiz.html which is also about CGI and SQL. I make no effort to sync with the ambient high school curriculum, but rather work backwards from what I think is a very usable set of concepts and skills, try to redesign the curriculum for the 21st century vs. the 19th (yeah, we had to skip one to catch up). This is easier for me because I'm not beholden to layers of administrators who believe the status quo is acceptable. I also have been known to download wxPython and project the demo (easy to flip to source code for each example). Maybe show Jython (I also talk a lot about how Tk itself is a widgets library, ported across systems, and since we're using IDLE much of the time, we're already in a working GUI, one that includes a shell or interactive front end). I'm moving to a new business model where I'll use my Ubuntu laptop more, am especially interested in PDF generation using such as PyCairo and ReportLab, working with adults (many of them faculty of this or that institution). Kirby From EJStrassberger at cps.edu Wed Aug 13 00:09:16 2008 From: EJStrassberger at cps.edu (Earl Strassberger) Date: Tue, 12 Aug 2008 17:09:16 -0500 Subject: [Edu-sig] Easy to read textbook, objects first Message-ID: An HTML attachment was scrubbed... URL: From goldwamh at slu.edu Wed Aug 13 00:38:54 2008 From: goldwamh at slu.edu (Michael H. Goldwasser) Date: Tue, 12 Aug 2008 17:38:54 -0500 Subject: [Edu-sig] Easy to read textbook, objects first In-Reply-To: References: Message-ID: <18594.4350.756326.858801@Michael-Goldwassers-Computer.local> Hello Earl, Definitely take a look at Object-Oriented Programming in Python written by myself and David Letscher. It is the only Python text that supports a truly object-oriented approach at an introductory level. We wrote it for our CS1 course at SLU after failing to find an existing Python textbook that fit such a style. The pace of the book should be manageable at the high-school level (although, later chapters offer greater depth). I hope that the language and writing style will suit your students. With regard, Michael On Tuesday August 12, 2008, Earl Strassberger wrote: > I am looking for a Python textbook that teaches about objects in > the beginning AND is easy to read. I teach at a neighborhood > school in Chicago. English is the second or third language for > many of my students. > > Last semester four students were studying Python mostly on their > own while I teaching the class programming concepts with Alice > (from Carnegie Mellon). The Python students used Michael Dawson's > Guide to Programming with Python. It worked well for them. The > reading level works, the games keep their interest, but it does > not get to objects until Chapter 8. +----------------------------------------------- | Michael Goldwasser | Associate Professor | Dept. Mathematics and Computer Science | Saint Louis University | 220 North Grand Blvd. | St. Louis, MO 63103-2007 | | Office: Ritter Hall 6 | Email: goldwamh at slu.edu | URL: euler.slu.edu/~goldwasser | Phone: (314) 977-7039 | Fax: (314) 977-1452 From misterniceguy0 at gmail.com Wed Aug 13 12:17:26 2008 From: misterniceguy0 at gmail.com (Mister Nice Guy) Date: Wed, 13 Aug 2008 13:17:26 +0300 Subject: [Edu-sig] Storesonline, Ecommerce Software What Are The Things To Look Out For? Message-ID: <3b9f447d0808130317w28d1e27fhca82482111d907e8@mail.gmail.com> *Storesonline, Ecommerce Software What Are The Things To Look Out For?* A lot of ecommerce vendors had to scrap the software they were using because later on they found it lacking in important features and benefits. Their feedback detailed here will help those willing to upgrade and those who are starting their ecommerce activity. *Storesonline* never had to scrap any of their software. A fine ecommerce software package should take care of all parts of the interactions with the customer in a seamless manner so that he finds it a pleasure to transact business with you. The ecommerce solution should be easy to navigate and at the same time, give you the required information of his purchases for quick and easy order placement. *Storesonline* software is quick and easy for all. Website navigation is all-important for the customer. Product details should be easy to locate and simple to sort by price as well as other factors. It is also a good practice to offer alternatives to the product being viewed. Another feature to include would be products that are accessories. The ecommerce shopping cart software *Storesonline* is essential to any good shopping website. An efficient shopping cart software should track the items in the shopper's cart and allow him to leave the cart to resume shopping. But it should also permit the shopper to view warranty and return policy, and shipping information at any time during the transaction. Another useful feature is the ability to add items to a "wish list" and to display items previously purchased. -------------- next part -------------- An HTML attachment was scrubbed... URL: From kirby.urner at gmail.com Thu Aug 14 17:31:56 2008 From: kirby.urner at gmail.com (kirby urner) Date: Thu, 14 Aug 2008 08:31:56 -0700 Subject: [Edu-sig] Experience with projecting student screens? Message-ID: I wonder if anyone on edu-sig has experience in classrooms that allow switching any student's screen to become the projected screen, even dividing up the projected screen among students (as in some Xbox games). I find students don't always like having their privacy disturbed nor the big brother feel, but understand multi-user game play. With Twisted on the school server, it's increasing easy to devise these multi-user exercises involving teams in a competitive relationship. Not saying every school uses Twisted, duh, just that we have that freedom in some academies, where CP4E type kids get a green light to geek out. The more common design pattern these days is for students to share whats on screen more asynchronously, by swapping YouTubes around. Kirby From lac at openend.se Thu Aug 14 18:11:02 2008 From: lac at openend.se (Laura Creighton) Date: Thu, 14 Aug 2008 18:11:02 +0200 Subject: [Edu-sig] Experience with projecting student screens? In-Reply-To: Message from "kirby urner" of "Thu, 14 Aug 2008 08:31:56 PDT." References: Message-ID: <200808141611.m7EGB2gs020050@theraft.openend.se> In a message of Thu, 14 Aug 2008 08:31:56 PDT, "kirby urner" writes: >I wonder if anyone on edu-sig has experience in classrooms that allow >switching any student's screen to become the projected screen, even >dividing up the projected screen among students (as in some Xbox >games). > >I find students don't always like having their privacy disturbed nor >the big brother feel, but understand multi-user game play. > >Kirby My limited experience with this is that it makes a big difference if this is set up so that students can decide to show their own work on the big classroom screen, rather than having you as the teacher expose them to the whole class in a manner out of their control. I have seen such systems be completely abused by the students and turned into a way for the good students to excessively brag about their accomplishments to the other good students, and ridicule and heap scorn on those having difficulties. 'Welcome to the shark tank', indeed. Of course discipline has to pretty much have gone to hell before such experiments in cruelty become institutionalised, but if you do the 'travelling lecturer' bit, you may be unfortunate enough to run into such situations. Laura From kirby.urner at gmail.com Thu Aug 14 18:13:12 2008 From: kirby.urner at gmail.com (kirby urner) Date: Thu, 14 Aug 2008 09:13:12 -0700 Subject: [Edu-sig] Experience with projecting student screens? In-Reply-To: <48A452C3.5020506@canterburyschool.org> References: <48A452C3.5020506@canterburyschool.org> Message-ID: On Thu, Aug 14, 2008 at 8:44 AM, Vern Ceder wrote: > Not so much the split screen, but we have started using iTalc to > share/monitor/etc student screens. That lets an arbitrary student screen > appear as the projected screen. iTalk is controlled from the teacher's > computer, so it's not really spontaneous or student controlled. > Do you have an iTalk link handy, one that describes capabilities in detail? > On a similar theme, I've also had kids in Python classes write IRC clients > and bots and interact on an inhouse IRC server. That's actually loads of > fun, particularly when they start trying to construct bots - lots of > thinking that goes beyond bare syntax and coding and the like. Yes, I think we do too little with bots or "active agents" as some call them, e.g. web crawlers that go out at night and come back with loads of goodies. If anyone comes across a good Google Video on daemon architecture, I'm looking for animations that will help students visualize multiple processes staying resident in memory. That helps with the bot concept as well, although some bots are no more than listeners on a channel, not much autonomy after the lights go out. Kirby > > Cheers, > Vern > > kirby urner wrote: >> >> I wonder if anyone on edu-sig has experience in classrooms that allow >> switching any student's screen to become the projected screen, even >> dividing up the projected screen among students (as in some Xbox >> games). >> >> I find students don't always like having their privacy disturbed nor >> the big brother feel, but understand multi-user game play. >> >> With Twisted on the school server, it's increasing easy to devise >> these multi-user exercises involving teams in a competitive >> relationship. >> >> Not saying every school uses Twisted, duh, just that we have that >> freedom in some academies, where CP4E type kids get a green light to >> geek out. >> >> The more common design pattern these days is for students to share >> whats on screen more asynchronously, by swapping YouTubes around. >> >> Kirby >> _______________________________________________ >> Edu-sig mailing list >> Edu-sig at python.org >> http://mail.python.org/mailman/listinfo/edu-sig > > -- > This time for sure! > -Bullwinkle J. Moose > ----------------------------- > Vern Ceder, Director of Technology > Canterbury School, 3210 Smith Road, Ft Wayne, IN 46804 > vceder at canterburyschool.org; 260-436-0746; FAX: 260-436-5137 > From vceder at canterburyschool.org Thu Aug 14 17:44:03 2008 From: vceder at canterburyschool.org (Vern Ceder) Date: Thu, 14 Aug 2008 11:44:03 -0400 Subject: [Edu-sig] Experience with projecting student screens? In-Reply-To: References: Message-ID: <48A452C3.5020506@canterburyschool.org> Not so much the split screen, but we have started using iTalc to share/monitor/etc student screens. That lets an arbitrary student screen appear as the projected screen. iTalk is controlled from the teacher's computer, so it's not really spontaneous or student controlled. On a similar theme, I've also had kids in Python classes write IRC clients and bots and interact on an inhouse IRC server. That's actually loads of fun, particularly when they start trying to construct bots - lots of thinking that goes beyond bare syntax and coding and the like. Cheers, Vern kirby urner wrote: > I wonder if anyone on edu-sig has experience in classrooms that allow > switching any student's screen to become the projected screen, even > dividing up the projected screen among students (as in some Xbox > games). > > I find students don't always like having their privacy disturbed nor > the big brother feel, but understand multi-user game play. > > With Twisted on the school server, it's increasing easy to devise > these multi-user exercises involving teams in a competitive > relationship. > > Not saying every school uses Twisted, duh, just that we have that > freedom in some academies, where CP4E type kids get a green light to > geek out. > > The more common design pattern these days is for students to share > whats on screen more asynchronously, by swapping YouTubes around. > > Kirby > _______________________________________________ > Edu-sig mailing list > Edu-sig at python.org > http://mail.python.org/mailman/listinfo/edu-sig -- This time for sure! -Bullwinkle J. Moose ----------------------------- Vern Ceder, Director of Technology Canterbury School, 3210 Smith Road, Ft Wayne, IN 46804 vceder at canterburyschool.org; 260-436-0746; FAX: 260-436-5137 From kirby.urner at gmail.com Thu Aug 14 18:29:25 2008 From: kirby.urner at gmail.com (kirby urner) Date: Thu, 14 Aug 2008 09:29:25 -0700 Subject: [Edu-sig] Experience with projecting student screens? In-Reply-To: <200808141611.m7EGB2gs020050@theraft.openend.se> References: <200808141611.m7EGB2gs020050@theraft.openend.se> Message-ID: Yes, good advice Laura. This is where one's skill as a teacher comes in, plus it helps to have that atmosphere of "team learning" i.e. these are your peers on the same team and we all have an investment in helping one another get up to speed in various ways, sort of what XP is about in the switching of partners i.e. you're a potential ally of anyone in the room, know that going in. A typical sequence in my experience is doing a projected talk on VPython, heaping praise on the minimalist API, just one page, easy to get a cylinder up by cutting and pasting. Then I give some play time, each student alone with the docs, trying stuff out, no pairing. It's at this point that showcasing student work makes some sense, i.e. "look at what Jill has come up with" -- they inspire one another. This extends to showing source code and fixing it online. I might walk to a student station and help with debugging, standing behind but not touching the keys, using the laser pointer to highlight on screen (or on the projected screen) which line needs fixing. Other students watch, learn from, or decide that's not a mistake they're making so continue on with their individual project. In other words, when I project and discuss, it's sometimes only for the benefit of a few, not all except in some corner of their attention. As a teacher, I have no problem being "tuned out" in some learning modes (some neophyte teachers have problems with individual learning going on in the same room, coming from a "me active, you passive" background, or "teacher as Tarzan" school of thought -- I only swing from trees, i.e. demand attention, sometimes, not every freakin' minute (not a drama queen)). When I'm projecting a movie or video clip, I might like to push this to each student monitor simultaneously -- not there yet. In a setup where each student has a screen, it's not always necessary to project, as you can just pipe to each monitor. On the other hand, that's too intrusive in some modes i.e. you want to have the shared channel in a window and up front (projected), but the freedom to have a code window open that's not slaved to any teacher process. Synchronous learning (teaching) is a whole different ball game from asynchronous, the latter design patterns more like reading in the library, being an independent scholar. In between are small group projects. The technology is giving us interesting new synchronous possibilities but there's a lot of trial and error in this picture for sure (as r0ml advised at OSCON, expect exceptions and write lots of code to allow graceful failures). Kirby On Thu, Aug 14, 2008 at 9:11 AM, Laura Creighton wrote: > In a message of Thu, 14 Aug 2008 08:31:56 PDT, "kirby urner" writes: >>I wonder if anyone on edu-sig has experience in classrooms that allow >>switching any student's screen to become the projected screen, even >>dividing up the projected screen among students (as in some Xbox >>games). >> >>I find students don't always like having their privacy disturbed nor >>the big brother feel, but understand multi-user game play. > > > >> >>Kirby > > My limited experience with this is that it makes a big difference if > this is set up so that students can decide to show their own work on > the big classroom screen, rather than having you as the teacher > expose them to the whole class in a manner out of their control. > > I have seen such systems be completely abused by the students and > turned into a way for the good students to excessively brag about > their accomplishments to the other good students, and ridicule and > heap scorn on those having difficulties. 'Welcome to the shark > tank', indeed. Of course discipline has to pretty much have gone > to hell before such experiments in cruelty become institutionalised, > but if you do the 'travelling lecturer' bit, you may be unfortunate > enough to run into such situations. > > Laura > > From vceder at canterburyschool.org Thu Aug 14 18:29:39 2008 From: vceder at canterburyschool.org (Vern Ceder) Date: Thu, 14 Aug 2008 12:29:39 -0400 Subject: [Edu-sig] Experience with projecting student screens? In-Reply-To: References: <48A452C3.5020506@canterburyschool.org> Message-ID: <48A45D73.5050302@canterburyschool.org> kirby urner wrote: > Do you have an iTalk link handy, one that describes capabilities in detail? http://italc.sourceforge.net/ and the wiki at http://italc.sourceforge.net/wiki/index.php?title=Main_Page > If anyone comes across a good Google Video on daemon architecture, I'm > looking for animations that will help students visualize multiple > processes staying resident in memory. That helps with the bot concept > as well, although some bots are no more than listeners on a channel, > not much autonomy after the lights go out. Actually, I've discovered that you can't really write an IRC client without dealing with threading, at least in a light-weight sort of way. Cheers, Vern -- This time for sure! -Bullwinkle J. Moose ----------------------------- Vern Ceder, Director of Technology Canterbury School, 3210 Smith Road, Ft Wayne, IN 46804 vceder at canterburyschool.org; 260-436-0746; FAX: 260-436-5137 From kirby.urner at gmail.com Thu Aug 14 19:00:18 2008 From: kirby.urner at gmail.com (kirby urner) Date: Thu, 14 Aug 2008 10:00:18 -0700 Subject: [Edu-sig] Experience with projecting student screens? In-Reply-To: References: <200808141611.m7EGB2gs020050@theraft.openend.se> Message-ID: << SNIP >> > On the other hand, that's too intrusive in some modes i.e. you want to > have the shared channel in a window and up front (projected), but the > freedom to have a code window open that's not slaved to any teacher > process. Quoting from a web site, here's a product allowing both modes: full screen takeover of a client, vs. less intrusive push to a window. """ The full screen mode occupies the entire screen of the student computers and locks the mouse and keyboard. Full screen mode is used when you want the student's full attention without any computer interaction on their part. The windowed mode allows students to work on their computer while they are viewing the instructor's computer. During a lesson the instructor can easily toggle back and forth between windowed and full screen mode to accommodate the different activities in the lesson. """ http://www.genevalogic.com/fileadmin/newsletter/2003-Spring-North_America/p4.html It's easy to come to negative conclusions about a classroom with "takeover mode" but I think you need to zoom back and consider the context e.g. is this an elective course with students knowing ahead of time that there's close monitoring and mouse killing potential? True story: I had one class in which a certain student apparently had no Internet access in any other context, perhaps a controlling family, but our school has a strong reputation so I guess we were OK, maybe parents didn't get we had unfiltered Internet. This kid just blissed out reading political satire, no porno or loud music (no speakers hooked up), and would chuckle through most of my class, fairly quietly, but obviously learning no VPython whatsoever, most of the time. Given the voluntary structure of this class and non gatekeeper function at this juncture, I didn't see my role as one of discouragement and let him get away with it, as long as other students weren't disturbed. However, if my agreement with parents were to organize more of a forced march experience, and the student was apparently up for it (no tantrums first day), then I might be OK with locking him out of his political readings for an hour a day, as we worked through the materials. This brings up the larger point of getting refugees from homes with no Internet. They've heard about it, know it's hot, but haven't had any real time on it, so going straight to some Urner guy teaching group theory with __snakes__ is hardly a logical first step. I'm looking for students with a more jaded attitude, not gaga in a candy shop. This is why I encourage parents to provide Internet @ home if at all possible, perhaps in a communal day room with an adult supervisor present, if this is what the culture demands, even use Squid for blocking. Of course such a "monitored day room" is precisely where this security cam software, ostensibly for the classroom, is likely to be abused by busybody adult spies. At some point, one hopes to get out from under their control, but some environments make that difficult, I don't deny it. I'm not Tarzan in that sense either i.e. don't see it as my mission to crash every community and disrupt local practices. On the other hand, if you come to my school, don't be surprised that we have our own rules you're expected to follow -- different for tourists than for staff. Kirby From david at boddie.org.uk Thu Aug 14 23:43:05 2008 From: david at boddie.org.uk (David Boddie) Date: Thu, 14 Aug 2008 23:43:05 +0200 Subject: [Edu-sig] IDE for GUI development in Python Message-ID: <200808142343.05550.david@boddie.org.uk> On Tue Aug 12 08:10:16 CEST 2008, Matt K wrote: > *Massimo, QT* - I have the same comment as I gave to Winston, above. Do you > have any sample code from students who have written a relatively simplistic > GUI? In theory, it should be possible for students to grasp the kind of event- based programming you see with GUIs. Something I've wanted to do is to take the content of this talk and make it more tutorial-like: http://indico.cern.ch/contributionDisplay.py?contribId=33&sessionId=41&confId=44 These days, with a good interactive environment, the code snippets given in the talk are basically usable in the form in which they are presented. (Recent versions of PyQt4 can run the event loop in the interactive Python shell, for example, so the process of creating and showing windows is more or less interactive.) > *David* - I appreciate your comments re: BlackAdder and Qt. And my > reservation with Tk is not the typing... its that the students will not > understand the code that they are typing sufficiently well to be able to > modify it. BlackAdder is very old now, and PyQt users typically prefer Eric3, Eric4 or something like Sandbox: http://www.qtrac.eu/sandbox.html David From igor at tamarapatino.org Fri Aug 15 00:01:02 2008 From: igor at tamarapatino.org (Igor =?iso-8859-1?Q?T=E1mara?=) Date: Thu, 14 Aug 2008 17:01:02 -0500 Subject: [Edu-sig] Fwd: [crunchy-discuss] Croquant: a set of MoinMoin plugins for an integration with Crunchy In-Reply-To: <7528bcdd0807091311t49a7a657q59befc2d6c9f41c1@mail.gmail.com> References: <4873EB54.10702@gmail.com> <7528bcdd0807091311t49a7a657q59befc2d6c9f41c1@mail.gmail.com> Message-ID: <20080814220101.GG5651@tamarapatino.org> Hi, Andre> Hi everyone, Andre> Andre> Florian Bir?e (see below) has completed parts of his Google Summer of Andre> Code project. If you are interested in having a wiki to store python Andre> snippets (they could be doctest-based problems) as learning tools and Andre> have students use Crunchy to run and modify the code snippets, this is Andre> the tool for you. Andre> I started to test it, moinmoin+crunchy is a killer combination :) , for those that are starting to try it, use the trunk version of crunchy, crouqant and 1.7.1 moinmoin. user crunchy, password password. Thanks for that good work. Andre> Cheers, Andre> Andr? Andre> Andre> P.S. Croquant is French for Crunchy. :-) Andre> Andre> Andre> ---------- Forwarded message ---------- Andre> From: Florian Bir?e Andre> Date: Tue, Jul 8, 2008 at 7:33 PM Andre> Subject: [crunchy-discuss] Croquant: a set of MoinMoin plugins for an Andre> integration with Crunchy Andre> To: moin-user at lists.sourceforge.net Andre> Cc: crunchy-discuss at googlegroups.com Andre> Andre> Andre> Hello, Andre> Andre> I proud to announce the 1.0 release of Croquant Andre> . Andre> Andre> Croquant is a set of MoinMoin plugins (currently one parser, three Andre> macros and one theme) to allow to use a MoinMoin wiki to write Andre> tutorials for Crunchy (). Andre> Andre> Crunchy is a software which transform a static html tutorial to learn Andre> the python language into a dynamic tutorial with the python Andre> interpreter embedded inside. Andre> With MoinMoin and Croquant, a tutorial can be written in an easy and Andre> collaborative way. Andre> Andre> This is a part of my Google Summer of Code 2008 for Crunchy. All Andre> feedback is welcome! Andre> Andre> Cheers, Andre> -- Andre> Thesa ~ Florian Bir?e Andre> e-mail : florian at biree.name Andre> Messagerie Instantan?e Jabber/XMPP/Google Talk : florian.biree at jabber.fr Andre> Site web : http://florian.biree.name/ Andre> Carnet web : http://filyb.info/ Andre> -----BEGIN PGP SIGNATURE----- Andre> Version: GnuPG v1.4.6 (GNU/Linux) Andre> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org Andre> Andre> iD8DBQFIc+tU3uynSfJ1uGoRAvXVAJoD0wk4TiFmSq1yiOJs0oXPCo0LnwCfZJo2 Andre> +3wRyN+/G/KvyN/s2ES4E+s= Andre> =5j97 Andre> -----END PGP SIGNATURE----- Andre> _______________________________________________ Andre> Edu-sig mailing list Andre> Edu-sig at python.org Andre> http://mail.python.org/mailman/listinfo/edu-sig -- Recomiendo Postgresql, el sistema manejador de bases de datos http://www.postgresql.org -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: Digital signature URL: From krstic at solarsail.hcs.harvard.edu Fri Aug 15 08:05:09 2008 From: krstic at solarsail.hcs.harvard.edu (=?UTF-8?Q?Ivan_Krsti=C4=87?=) Date: Fri, 15 Aug 2008 02:05:09 -0400 Subject: [Edu-sig] Experience with projecting student screens? In-Reply-To: <48A45D73.5050302@canterburyschool.org> References: <48A452C3.5020506@canterburyschool.org> <48A45D73.5050302@canterburyschool.org> Message-ID: <50C2D3E8-7A64-4211-B98C-66DAC749BF81@solarsail.hcs.harvard.edu> Hi Vern, On Aug 14, 2008, at 12:29 PM, Vern Ceder wrote: > Actually, I've discovered that you can't really write an IRC client > without dealing with threading, at least in a light-weight sort of > way. could you elaborate a bit on this? I'm curious. Cheers, -- Ivan Krsti? | http://radian.org From vceder at canterburyschool.org Fri Aug 15 14:11:31 2008 From: vceder at canterburyschool.org (Vern Ceder) Date: Fri, 15 Aug 2008 08:11:31 -0400 Subject: [Edu-sig] Experience with projecting student screens? In-Reply-To: <50C2D3E8-7A64-4211-B98C-66DAC749BF81@solarsail.hcs.harvard.edu> References: <48A452C3.5020506@canterburyschool.org> <48A45D73.5050302@canterburyschool.org> <50C2D3E8-7A64-4211-B98C-66DAC749BF81@solarsail.hcs.harvard.edu> Message-ID: <48A57273.8060200@canterburyschool.org> Hi Ivan, Ivan Krsti? wrote: > On Aug 14, 2008, at 12:29 PM, Vern Ceder wrote: >> Actually, I've discovered that you can't really write an IRC client >> without dealing with threading, at least in a light-weight sort of way. > > could you elaborate a bit on this? I'm curious. I should have made that clearer - it's way too broad as I said it. I had them writing *terminal* based chat clients, since we hadn't done much with GUI's at that point. And under those conditions threading is the easiest way (or at least the easiest way I could think of) to write a client that behaves the way we're used having a chat client behave - with messages streaming by as you enter your own messages. I was actually happy about this, since it was a way to introduce the topic as a solution they needed to a problem they were trying to solve (i.e., "my current client really sucks"), rather than just another topic that would be good to know some day. Cheers, Vern -- This time for sure! -Bullwinkle J. Moose ----------------------------- Vern Ceder, Director of Technology Canterbury School, 3210 Smith Road, Ft Wayne, IN 46804 vceder at canterburyschool.org; 260-436-0746; FAX: 260-436-5137 From vceder at canterburyschool.org Fri Aug 15 18:19:39 2008 From: vceder at canterburyschool.org (Vern Ceder) Date: Fri, 15 Aug 2008 12:19:39 -0400 Subject: [Edu-sig] K12 Open Minds Reminder Message-ID: <48A5AC9B.5080707@canterburyschool.org> This is just a quick reminder that the K12 Open Minds conference is approaching. See http://www.k12openminds.org for more details - this is one of the few conferences devoted to Free and Open Source Software in K-12 education, so if that's an area of interest please come and consider presenting. There are two updates worth mentioning. First, the deadline for rooms at the conference rate of $97 a night is August 25. After that, the room rate will increase dramatically. So if you are planning to attend, booking a room now (see Second, we have extended the deadline for speaking proposals to Friday, August 22, so please consider submitting a talk. While all proposals are welcome, talks focussed on FOSS at the classroom level, either teaching or technical, would be welcomed. Cheers, Vern Ceder -- This time for sure! -Bullwinkle J. Moose ----------------------------- Vern Ceder, Director of Technology Canterbury School, 3210 Smith Road, Ft Wayne, IN 46804 vceder at canterburyschool.org; 260-436-0746; FAX: 260-436-5137 From vceder at canterburyschool.org Fri Aug 15 18:28:17 2008 From: vceder at canterburyschool.org (Vern Ceder) Date: Fri, 15 Aug 2008 12:28:17 -0400 Subject: [Edu-sig] K12 Open Minds Reminder Message-ID: <48A5AEA1.8050403@canterburyschool.org> Sorry about the fragment in my previous post - it's supposed to say "See the "hotels" link on the web site" Cheers, Vern This is just a quick reminder that the K12 Open Minds conference is approaching. See http://www.k12openminds.org for more details - this is one of the few conferences devoted to Free and Open Source Software in K-12 education, so if that's an area of interest please come and consider presenting. There are two updates worth mentioning. First, the deadline for rooms at the conference rate of $97 a night is August 25. After that, the room rate will increase dramatically. So if you are planning to attend, booking a room now would be a good idea (see the "Hotels link on the web site). Second, we have extended the deadline for speaking proposals to Friday, August 22, so please consider submitting a talk. While all proposals are welcome, talks focussed on FOSS at the classroom level, either teaching or technical, would be welcomed. Cheers, Vern Ceder -- This time for sure! -Bullwinkle J. Moose ----------------------------- Vern Ceder, Director of Technology Canterbury School, 3210 Smith Road, Ft Wayne, IN 46804 vceder at canterburyschool.org; 260-436-0746; FAX: 260-436-5137 From kirby.urner at gmail.com Sun Aug 17 18:10:07 2008 From: kirby.urner at gmail.com (kirby urner) Date: Sun, 17 Aug 2008 09:10:07 -0700 Subject: [Edu-sig] Repositioning SQL within K-16 Message-ID: Yesterday at Pauling House (a meeting place) I was sketching my vision of how to get more "SQL savvy" out to more people. The visiting CTO seemed unpersuaded, said SQL was archiac and you couldn't model business intelligence in purely transactional systems, but we'd only just met, I don't think he's as focused on K-16 curriculum writing as I am. As I put it in my blog "SQL is old hat, but we still need professionals with the skills and/or overview vis-a-vis this technology." [1] So a lot of you probably know that SQL is about creating tables, storing, updating and retrieving data in those tables, related by intersecting columns. Until not so long ago, my story goes, SQL was a high priest language as it only ran on million dollar mainframes, most mom & pop (small) businesses had no need for such a thing. Not surprisingly, the teaching literature tends to be very business oriented in the sense of talking about parts in inventory, quantity and price. Like economists, they (the business school writers) talk about "widgets" meaning "generic salable catalog item" (this all got started well before software engineers actually implemented GUI widgets for real, actually called something "a widget" and built businesses around them, e.g. buy my closed source OCX calendar object and drag and drop it onto your Visual Basic canvas, for only $29.95, free shipping). The problem is I'm trying to insert more SQL into the grade school mathematics curriculum, right about the time we're doing Venn Diagrams, union and intersection of sets. This "business flavor" of widgets in inventory isn't "mathy" enough, leaves students and teachers thinking they're on some pre-business track, whereas a lot of these youngsters are looking at field work in biology or something. It's premature to assume business, and yet not a bad investment, in terms of time, plus SQL is used in field work, bioinformatics etc. My solution (drum roll) is to switch to Polyhedra for subject matter, rather like parts in inventory (they even stack up, some of 'em), with the main table giving a possibly lengthy greek name, like esoteric species of flora or fauna (more biological). peda.com is an example source of information, Web pages by George Hart and collaborators also good.[2] Where Python fits in is we want our math students to get it about "transformations" between XYZ coordinates in say traditional OFF format, and a VRML or POV-Ray scene description, i.e. the same information, pulled via SQL, but then couched in an XML (x3D = new VRML) or ray tracing script (also recently million dollar software that ran only on mainframes but now accessible to any kid with a desktop or laptop). In addition to whatever server side transformations (implemented in Python), we want to diagram / explain / show how a SQL engine backs a website with pages assembled on the fly in response to an incoming URL. We don't store the HTML, we suck out the relevant data and build a page, with a picture and everything, or we list results of queries, SELECT statements, entered at the front end. A simple web framework, WSGI scripts or whatever, everything open source, transparent, will give kids a clue as to how their world works, including all that parts and inventory stuff (like when ordering a new video card from TigerDirect or whatever). They build it themselves, with help from teachers, pass the work down from year to year, start new versions. The school intranet becomes a source of culture, a living document and portfolio of student work (students have some control over what of theirs gets saved, vs. deleted if just a draft). Now of course our math teachers are complaining at this point that we've gone far afield and they're right. This SQL database about polyhedra is on the school intranet let us imagine, one among several, and students use it in art class, chemistry class, lots of places besides math. Geographic information systems show gem stones, where this or that type is more prevalent. So in math class we're maybe more interested in the duals table (relates each poly to its unique dual) and the XYZ coordinates, if that's how they're stored (I've used quadrays in some of my FoxPro implementations, got an article in FoxPro Advisor about that).[3] In science class we might be looking at crystal lattices and pull up pictures of polyhedra in that context instead (same database, different subject area). Math classes definitely need to be using x3D and some ray tracing, if spatial geometry is on the agenda at all. This presumes vectors, the usual pre linear algebra content, and if we're using a "math objects" approach, we definitely get to those, complete with __add__ and scalar __mul__ per Gibbs-Heaviside (overloading special names, used interactively in shell mode as well as in scripts). All of the above may be implemented as student led projects, teachers as managers, including with some XP techniques if that's what your school is into, not speaking for all of them. You don't need an exhaustive table of hundreds of polyhedra, or even if your school has that, hand doing a small set, maybe just the Platonics, is enough to start doing an inner join or two, running a ray tracer. The point is to get some hands on experience even before college, with what are still the tools of many a trade, from show biz to neurochemistry. The same approach works after high school as well, but I think we'll want to get started as soon as students feel ready, let them set the pace, like so what if they're only like age 12 in China, it's not up to me to make all the rules, I'm not some Olympian head honcho. I'm a big believer in organic growth, community gardens i.e. we want "SQL savvy" to take root indigenously, not show up at the door as some "must study me" imposed module. The technology is all freely available, don't have to go with polyhedra, but in the interests of efficiency, optimization, I'm suggesting that'd be a smart investment for any school, with all the raw materials already free and open source. Kirby 4D PS: an excellent main table could be the Waterman Polyhedra, which I named for Steve Waterman. These are convex polys carved from the CCP matrix, such that every vertex is the center of a CCP within radius maximum, i.e. its the maximum convex hull for each ball-to-ball sweepout radius. The bigger ones are especially beautiful, though not every SQL group would want to bother storing them (vs. generating efficiently -- given the symmetries you only need to store like a 12th of the vertices).[4] [1] http://worldgame.blogspot.com/2008/08/wanderers-2008816.html [2] http://www.cit.gu.edu.au/%7Eanthony/graphics/polyhedra/archimedean_duals/triakisicosahedron.jpg by Anthony Thyssen, with data from George Hart [3] http://www.grunch.net/synergetics/quadrays.html [4] http://watermanpolyhedron.com/watermanpolyhedra1.html http://local.wasp.uwa.edu.au/~pbourke/geometry/waterman/gen/index.html From jrgray at gmail.com Tue Aug 19 21:44:41 2008 From: jrgray at gmail.com (Jeremy Gray) Date: Tue, 19 Aug 2008 15:44:41 -0400 Subject: [Edu-sig] after-school python, age 11+ Message-ID: <844f07dc0808191244o7d84fb50q58ca05dcd9124ac6@mail.gmail.com> Hi all, This is my first post to edu-sig, and its sort of long. In a nutshell: a) I have developed and posted a few new material for kids getting started with programming, e.g., for an after-school club, at http://afterschoolpython.pbwiki.com/ Its free (no advertising ever, open-source recommended), and will be so forever. b) I am interested in collaborating with or sharing notes with others, to make it even better. Being new to this interesting forum, I'll introduce myself briefly. I'm a dad (two kids, age 11 and 5), and have always been a geek at heart. I do science for a living (human brain imaging and psychology, using computers for everything), and have interests in education (including National Science Foundation grants related to education research). I'm not an elementary-age educator, although have family members who are educators. So it seems inevitable that I'd end up lurking on python edu-sig :o) I've seen some fairly long posts, so I'll take the plunge with a longish one myself. Apologies if that's frowned on. Basically, I want to teach my 6th grader how to program this coming year. We've fooled around with logo / turtle graphics and like it, and are ready for a real language. I was quickly sold on python as the way to go, despite never having used it myself (or any OO language ... or maybe in part because of that--I want to learn something too!). I looked around for existing materials, and am really impressed by how much is out there for python (one of several selling points). yet I did not find anything I was that completely happy with. I looked carefully at the following, and learned a lot, and like a great many things about them: - Snake Wrangling for Kids - LiveWires summer program - other resources linked on Beginner's Guide to Python for non-programmers - A byte of python - J. Miller's 2004 PhD dissertation. his analysis of posts on what the community thinks about desirable features in using python in education is really helpful. one point that caught my eye was the dearth of intro curriculum materials. So, I took the plunge and have started to write something up myself. Its well underway, but is a work in progress, at http://afterschoolpython.pbwiki.com/ My goal is to have it be an experience in learning how a computer can enhance your mind, using a real language, aimed at a young audience without talking down to them. (Young but able to read, type using a text editor, and do some elementary-school math). I tried to follow Miller's guidelines on desirable features, but have not followed them all (not yet at least, graphics is a glaring example). The key thing that motivated me to put effort into yet-another-free-resource for learning python was to try to focus on problem solving as enhanced by a computer, for this age group. Plus sneaking in some geek tidbits here and there, like a few linux command-line tools (e.g., top), so that they are not seen as exotic or weird or hard. A few of the activities are basically cognitive science, and a few are more or less math. I'm posting for two main reasons. 1. The first is just to say: Hi, there is a little bit more curriculum "raw material" out there, I hope someone else can use it too. Who might be interested? My guess is that it will be most appropriate for a self-selected audience, rather than cp4e. I envision it being used in an after-school group (hence the name), probably at the middle-school level but maybe some things would work for advanced elementary (I'm not an educator, just guessing). Maybe some could be rewritten for an older audience. Some of the activities are tried and true ("hello world!"), and some are ones I thought up, like counting to a million to give kids a gut sense for how fast computers are, described as turning yourself into a cyborg, counting to a million in one second, and then changing back. I want kids to see themselves as the agent that makes things happen, not the computer. At first its a little freaky that way, but I hope its ultimately more empowering as well. And I think it better reflects reality: a computer is a tool, a prosthesis for thinking. Like a bicycle is for transportation. I describe it as currently in "beta", meaning that, while there are some rough edges, the ideas and activities might be useful to others even so. Feedback would be very useful to have now to make it better. Again, it will never have advertising. Its currently set up as a wiki, under a Creative Commons Attribution-NonCommercial-ShareAlike License 2.0, which I used because _A byte of python_ used it. I have it as wiki to emphasize that I'd love to include others as hands-on contributors (see #2). 2. The second reason for this post is to say: I know it can be way better. I think its good enough that I can wing it through the fall, but it would be cool to partner with a) people who have elementary & middle-school education experience with programming (esp python), and b) know OO and good projects for introducing it. I know the website is currently just the start of what it could be. It currently reads like notes for either self-guided exploration by kids, but given various gaps in the description (hopefully filled soon) its probably best thought of as structured notes for an informed adult to use when leading a small group of kids. Its not complete yet, and I will be revising after seeing how kids interact with it. Its not lesson plans, although I could see some of the material being used in that way, with more work. - feedback of any kind would be terrific, don't hold back just to be polite. (As a scientist, all my day-job work gets peer reviewed, at times "tersely", shall we say. it took some getting used to but now I love getting frank feedback because ultimately it makes for a better product.) So if anything moves you one way or another, I'd love to know and won't be offended. This is not to say I'll change things to reflect every comment, of course, but I definitely promise to read and consider them all closely. More importantly, if you have a lot to add, I'd love to have collaborators as well. - I've set it up as a wiki with the idea that eventually there may be several editors, developers, and caretakers (a few, not the whole world). Please email me to talk about possibilities. For example, currently, there's nothing that uses graphics, which of course are very engaging, especially for this age group. currently, there's nothing that uses or explains OO, despite python being strongly OO. getting to games would be good. And I'm not convinced that being hosted on pbwiki is best, either. So there's room to grow as well. to comment on anything, you can either email me personally (jrgray at gmail.com, which is the same email for the wiki owner) or just leave a comment at the end of a particular wiki page (I think they make you sign up for an account an login to leave a comment). Anyway, its nice to be joining this community. best regards, --Jeremy /*------------------------------------------------------------- Jeremy R. Gray, PhD Assistant Professor, Yale University Dept. of Psychology & Interdepartmental Neuroscience Program web http://www.yale.edu/scan/ -------------------------------------------------------------*/ -------------- next part -------------- An HTML attachment was scrubbed... URL: From asweigart at gmail.com Wed Aug 20 22:45:51 2008 From: asweigart at gmail.com (Albert Sweigart) Date: Wed, 20 Aug 2008 13:45:51 -0700 Subject: [Edu-sig] after-school python, age 11+ Message-ID: <716dd5b60808201345w59bc7448jad7cc35714e2d779@mail.gmail.com> Jeremy, I've skimmed the site, and it looks good. I'll pitch in some effort to it in the future. I'd like to also recommend a book I wrote (and released for free under a Creative Commons license), entitled Invent Your Own Computer Games with Python. It is available here: http://pythonbook.coffeeghost.net It is a book designed for kids and non-programmers (though I left out cute pictures and "kiddie" elements.) The method of teaching I used is to demonstrate complete source code for games (which use simple console IO) and then teach programming principles from the examples. I based it off of a similar book I learned BASIC programming when I was a kid. I've tried to keep the book as terse and simple as possible. Each chapter goes through the same formula: describe the game, show the game source code, explain what each line in the source code does while explaining concepts those lines use. Although it is complete, I am still putting some editing effort into it. I'd appreciate any feedback you have. Also, the complete PDF is not as up to date as the individual web pages. I hope you find it useful! -Al Sweigart On Wed, Aug 20, 2008 at 3:00 AM, wrote: > > Hi all, > > This is my first post to edu-sig, and its sort of long. In a nutshell: > a) I have developed and posted a few new material for kids getting started > with programming, e.g., for an after-school club, at > http://afterschoolpython.pbwiki.com/ Its free (no advertising ever, > open-source recommended), and will be so forever. > b) I am interested in collaborating with or sharing notes with others, to > make it even better. > > Being new to this interesting forum, I'll introduce myself briefly. I'm a > dad (two kids, age 11 and 5), and have always been a geek at heart. I do > science for a living (human brain imaging and psychology, using computers > for everything), and have interests in education (including National > Science > Foundation grants related to education research). I'm not an elementary-age > educator, although have family members who are educators. So it seems > inevitable that I'd end up lurking on python edu-sig :o) I've seen some > fairly long posts, so I'll take the plunge with a longish one myself. > Apologies if that's frowned on. > > Basically, I want to teach my 6th grader how to program this coming year. > We've fooled around with logo / turtle graphics and like it, and are ready > for a real language. I was quickly sold on python as the way to go, despite > never having used it myself (or any OO language ... or maybe in part > because > of that--I want to learn something too!). I looked around for existing > materials, and am really impressed by how much is out there for python (one > of several selling points). yet I did not find anything I was that > completely happy with. I looked carefully at the following, and learned a > lot, and like a great many things about them: > - Snake Wrangling for Kids > - LiveWires summer program > - other resources linked on Beginner's Guide to Python for non-programmers > - A byte of python > - J. Miller's 2004 PhD dissertation. his analysis of posts on what the > community thinks about desirable features in using python in education is > really helpful. one point that caught my eye was the dearth of intro > curriculum materials. > > So, I took the plunge and have started to write something up myself. Its > well underway, but is a work in progress, at > http://afterschoolpython.pbwiki.com/ > My goal is to have it be an experience in learning how a computer can > enhance your mind, using a real language, aimed at a young audience without > talking down to them. (Young but able to read, type using a text editor, > and > do some elementary-school math). I tried to follow Miller's guidelines on > desirable features, but have not followed them all (not yet at least, > graphics is a glaring example). > > The key thing that motivated me to put effort into > yet-another-free-resource > for learning python was to try to focus on problem solving as enhanced by a > computer, for this age group. Plus sneaking in some geek tidbits here and > there, like a few linux command-line tools (e.g., top), so that they are > not > seen as exotic or weird or hard. A few of the activities are basically > cognitive science, and a few are more or less math. > > I'm posting for two main reasons. > 1. The first is just to say: Hi, there is a little bit more curriculum > "raw > material" out there, I hope someone else can use it too. Who might be > interested? My guess is that it will be most appropriate for a > self-selected > audience, rather than cp4e. I envision it being used in an after-school > group (hence the name), probably at the middle-school level but maybe some > things would work for advanced elementary (I'm not an educator, just > guessing). Maybe some could be rewritten for an older audience. > > Some of the activities are tried and true ("hello world!"), and some are > ones I thought up, like counting to a million to give kids a gut sense for > how fast computers are, described as turning yourself into a cyborg, > counting to a million in one second, and then changing back. I want kids to > see themselves as the agent that makes things happen, not the computer. At > first its a little freaky that way, but I hope its ultimately more > empowering as well. And I think it better reflects reality: a computer is a > tool, a prosthesis for thinking. Like a bicycle is for transportation. > > I describe it as currently in "beta", meaning that, while there are some > rough edges, the ideas and activities might be useful to others even so. > Feedback would be very useful to have now to make it better. Again, it will > never have advertising. > > Its currently set up as a wiki, under a Creative Commons > Attribution-NonCommercial-ShareAlike License 2.0, which I used because _A > byte of python_ used it. I have it as wiki to emphasize that I'd love to > include others as hands-on contributors (see #2). > > 2. The second reason for this post is to say: I know it can be way better. > I think its good enough that I can wing it through the fall, but it would > be > cool to partner with a) people who have elementary & middle-school > education > experience with programming (esp python), and b) know OO and good projects > for introducing it. I know the website is currently just the start of what > it could be. It currently reads like notes for either self-guided > exploration by kids, but given various gaps in the description (hopefully > filled soon) its probably best thought of as structured notes for an > informed adult to use when leading a small group of kids. Its not complete > yet, and I will be revising after seeing how kids interact with it. Its not > lesson plans, although I could see some of the material being used in that > way, with more work. > > - feedback of any kind would be terrific, don't hold back just to be > polite. > (As a scientist, all my day-job work gets peer reviewed, at times > "tersely", > shall we say. it took some getting used to but now I love getting frank > feedback because ultimately it makes for a better product.) So if anything > moves you one way or another, I'd love to know and won't be offended. This > is not to say I'll change things to reflect every comment, of course, but I > definitely promise to read and consider them all closely. More importantly, > if you have a lot to add, I'd love to have collaborators as well. > > - I've set it up as a wiki with the idea that eventually there may be > several editors, developers, and caretakers (a few, not the whole world). > Please email me to talk about possibilities. For example, currently, > there's > nothing that uses graphics, which of course are very engaging, especially > for this age group. currently, there's nothing that uses or explains OO, > despite python being strongly OO. getting to games would be good. And I'm > not convinced that being hosted on pbwiki is best, either. So there's room > to grow as well. > > to comment on anything, you can either email me personally ( > jrgray at gmail.com, > which is the same email for the wiki owner) or just leave a comment at the > end of a particular wiki page (I think they make you sign up for an account > an login to leave a comment). > > Anyway, its nice to be joining this community. > > best regards, > > --Jeremy > > > /*------------------------------------------------------------- > Jeremy R. Gray, PhD > Assistant Professor, Yale University > Dept. of Psychology & Interdepartmental Neuroscience Program > web http://www.yale.edu/scan/ > -------------------------------------------------------------*/ > -------------- next part -------------- An HTML attachment was scrubbed... URL: From gregor.lingl at aon.at Wed Aug 20 23:37:56 2008 From: gregor.lingl at aon.at (Gregor Lingl) Date: Wed, 20 Aug 2008 23:37:56 +0200 Subject: [Edu-sig] after-school python, age 11+ In-Reply-To: <844f07dc0808191244o7d84fb50q58ca05dcd9124ac6@mail.gmail.com> References: <844f07dc0808191244o7d84fb50q58ca05dcd9124ac6@mail.gmail.com> Message-ID: <48AC8EB4.7080008@aon.at> Jeremy Gray schrieb: > Hi all, > > This is my first post to edu-sig, and its sort of long. In a nutshell: > a) I have developed and posted a few new material for kids getting > started with programming, e.g., for an after-school club, at > http://afterschoolpython.pbwiki.com/ Its free (no advertising ever, > open-source recommended), and will be so forever. > b) I am interested in collaborating with or sharing notes with others, > to make it even better. > > Being new to this interesting forum, I'll introduce myself briefly. > I'm a dad (two kids, age 11 and 5), and have always been a geek at > heart. I do science for a living (human brain imaging and psychology, > using computers for everything), and have interests in education > (including National Science Foundation grants related to education > research). I'm not an elementary-age educator, although have family > members who are educators. So it seems inevitable that I'd end up > lurking on python edu-sig :o) I've seen some fairly long posts, so > I'll take the plunge with a longish one myself. Apologies if that's > frowned on. > > Basically, I want to teach my 6th grader how to program this coming > year. We've fooled around with logo / turtle graphics and like it, and > are ready for a real language. Hi Jeremy, I just wanted to point out that Python also has a turtle graphics module: turtle.py While turtle.py in Python 2.5 did a good job, it has somewhat limited capabilities. It will be replaced by an enhanced one from Python 2.6 on. This enhanced module (fomerly known to some of us as xturtle.py) is already part of Python 2.6 beta2 and I'll do a more elaborated posting on it as soon as beta3 is out, which should happen these days. The new turtle module has - as one of it's new features - enhanced animation which is intended to serve as a visual feedback facility for young programmers. (Moreover they can - if they wish - choose the shape for their turtles, for instance they can use turtle-shaped turtles or design their own shapes ...) The new module will also run unaltered - as is - under Python 2.5 You can download it from here: http://svn.python.org/view/python/trunk/Lib/lib-tk/ The docs can be found here: http://docs.python.org/dev/library/turtle.html#module-turtle Regards, Gregor > I was quickly sold on python as the way to go, despite never having > used it myself (or any OO language ... or maybe in part because of > that--I want to learn something too!). I looked around for existing > materials, and am really impressed by how much is out there for python > (one of several selling points). yet I did not find anything I was > that completely happy with. I looked carefully at the following, and > learned a lot, and like a great many things about them: > - Snake Wrangling for Kids > - LiveWires summer program > - other resources linked on Beginner's Guide to Python for non-programmers > - A byte of python > - J. Miller's 2004 PhD dissertation. his analysis of posts on what the > community thinks about desirable features in using python in education > is really helpful. one point that caught my eye was the dearth of > intro curriculum materials. > > So, I took the plunge and have started to write something up myself. > Its well underway, but is a work in progress, at > http://afterschoolpython.pbwiki.com/ > My goal is to have it be an experience in learning how a computer can > enhance your mind, using a real language, aimed at a young audience > without talking down to them. (Young but able to read, type using a > text editor, and do some elementary-school math). I tried to follow > Miller's guidelines on desirable features, but have not followed them > all (not yet at least, graphics is a glaring example). > > The key thing that motivated me to put effort into > yet-another-free-resource for learning python was to try to focus on > problem solving as enhanced by a computer, for this age group. Plus > sneaking in some geek tidbits here and there, like a few linux > command-line tools (e.g., top), so that they are not seen as exotic or > weird or hard. A few of the activities are basically cognitive > science, and a few are more or less math. > > I'm posting for two main reasons. > 1. The first is just to say: Hi, there is a little bit more > curriculum "raw material" out there, I hope someone else can use it > too. Who might be interested? My guess is that it will be most > appropriate for a self-selected audience, rather than cp4e. I envision > it being used in an after-school group (hence the name), probably at > the middle-school level but maybe some things would work for advanced > elementary (I'm not an educator, just guessing). Maybe some could be > rewritten for an older audience. > > Some of the activities are tried and true ("hello world!"), and some > are ones I thought up, like counting to a million to give kids a gut > sense for how fast computers are, described as turning yourself into a > cyborg, counting to a million in one second, and then changing back. I > want kids to see themselves as the agent that makes things happen, not > the computer. At first its a little freaky that way, but I hope its > ultimately more empowering as well. And I think it better reflects > reality: a computer is a tool, a prosthesis for thinking. Like a > bicycle is for transportation. > > I describe it as currently in "beta", meaning that, while there are > some rough edges, the ideas and activities might be useful to others > even so. Feedback would be very useful to have now to make it better. > Again, it will never have advertising. > > Its currently set up as a wiki, under a Creative Commons > Attribution-NonCommercial-ShareAlike License 2.0, which I used because > _A byte of python_ used it. I have it as wiki to emphasize that I'd > love to include others as hands-on contributors (see #2). > > 2. The second reason for this post is to say: I know it can be way > better. I think its good enough that I can wing it through the fall, > but it would be cool to partner with a) people who have elementary & > middle-school education experience with programming (esp python), and > b) know OO and good projects for introducing it. I know the website is > currently just the start of what it could be. It currently reads like > notes for either self-guided exploration by kids, but given various > gaps in the description (hopefully filled soon) its probably best > thought of as structured notes for an informed adult to use when > leading a small group of kids. Its not complete yet, and I will be > revising after seeing how kids interact with it. Its not lesson plans, > although I could see some of the material being used in that way, with > more work. > > - feedback of any kind would be terrific, don't hold back just to be > polite. (As a scientist, all my day-job work gets peer reviewed, at > times "tersely", shall we say. it took some getting used to but now I > love getting frank feedback because ultimately it makes for a better > product.) So if anything moves you one way or another, I'd love to > know and won't be offended. This is not to say I'll change things to > reflect every comment, of course, but I definitely promise to read and > consider them all closely. More importantly, if you have a lot to add, > I'd love to have collaborators as well. > > - I've set it up as a wiki with the idea that eventually there may be > several editors, developers, and caretakers (a few, not the whole > world). Please email me to talk about possibilities. For example, > currently, there's nothing that uses graphics, which of course are > very engaging, especially for this age group. currently, there's > nothing that uses or explains OO, despite python being strongly OO. > getting to games would be good. And I'm not convinced that being > hosted on pbwiki is best, either. So there's room to grow as well. > > to comment on anything, you can either email me personally > (jrgray at gmail.com , which is the same email > for the wiki owner) or just leave a comment at the end of a particular > wiki page (I think they make you sign up for an account an login to > leave a comment). > > Anyway, its nice to be joining this community. > > best regards, > > --Jeremy > > > /*------------------------------------------------------------- > Jeremy R. Gray, PhD > Assistant Professor, Yale University > Dept. of Psychology & Interdepartmental Neuroscience Program > web http://www.yale.edu/scan/ > -------------------------------------------------------------*/ > > ------------------------------------------------------------------------ > > _______________________________________________ > Edu-sig mailing list > Edu-sig at python.org > http://mail.python.org/mailman/listinfo/edu-sig > From warren.sande at rogers.com Thu Aug 21 09:22:44 2008 From: warren.sande at rogers.com (Warren Sande) Date: Thu, 21 Aug 2008 00:22:44 -0700 (PDT) Subject: [Edu-sig] after-school python, age 11+ Message-ID: <737473.75193.qm@web88104.mail.re2.yahoo.com> Jeremy, I was at the same point a couple years ago, and reached the same conclusion. Long story short, the end result is "Hello World! Computer Programming for Kids and Other Beginners" which I wrote with my son. It will be released in a few weeks. Some edu-sig folks were involved in the review process (Thanks, all!) You can see the publisher's page here: http://www.manning.com/sande/. You can pre-order it on Amazon here. It uses Python (and Pygame and PythonCard). Some examples are games, but many more are not. It takes a fairly traditional approach to teaching beginning programming. I think the presentation, writing style, illustrations, and examples make it suitable for kids 10 and up. Several adults who reviewed it said they would use it, too, which I was really happy to hear. We absolutely tried to avoid "talking down" to the reader, while also trying to make it fun. Regards, Warren Sande ----- Original Message ---- From: Jeremy Gray To: edu-sig at python.org Sent: Tuesday, August 19, 2008 12:44:41 PM Subject: [Edu-sig] after-school python, age 11+ Hi all, This is my first post to edu-sig, and its sort of long. In a nutshell: a) I have developed and posted a few new material for kids getting started with programming, e.g., for an after-school club, at http://afterschoolpython.pbwiki.com/ Its free (no advertising ever, open-source recommended), and will be so forever. b) I am interested in collaborating with or sharing notes with others, to make it even better. Being new to this interesting forum, I'll introduce myself briefly. I'm a dad (two kids, age 11 and 5), and have always been a geek at heart. I do science for a living (human brain imaging and psychology, using computers for everything), and have interests in education (including National Science Foundation grants related to education research). I'm not an elementary-age educator, although have family members who are educators. So it seems inevitable that I'd end up lurking on python edu-sig :o) I've seen some fairly long posts, so I'll take the plunge with a longish one myself. Apologies if that's frowned on. Basically, I want to teach my 6th grader how to program this coming year. We've fooled around with logo / turtle graphics and like it, and are ready for a real language. I was quickly sold on python as the way to go, despite never having used it myself (or any OO language ... or maybe in part because of that--I want to learn something too!). I looked around for existing materials, and am really impressed by how much is out there for python (one of several selling points). yet I did not find anything I was that completely happy with. I looked carefully at the following, and learned a lot, and like a great many things about them: - Snake Wrangling for Kids - LiveWires summer program - other resources linked on Beginner's Guide to Python for non-programmers - A byte of python - J. Miller's 2004 PhD dissertation. his analysis of posts on what the community thinks about desirable features in using python in education is really helpful. one point that caught my eye was the dearth of intro curriculum materials. So, I took the plunge and have started to write something up myself. Its well underway, but is a work in progress, at http://afterschoolpython.pbwiki.com/ My goal is to have it be an experience in learning how a computer can enhance your mind, using a real language, aimed at a young audience without talking down to them. (Young but able to read, type using a text editor, and do some elementary-school math). I tried to follow Miller's guidelines on desirable features, but have not followed them all (not yet at least, graphics is a glaring example). The key thing that motivated me to put effort into yet-another-free-resource for learning python was to try to focus on problem solving as enhanced by a computer, for this age group. Plus sneaking in some geek tidbits here and there, like a few linux command-line tools (e.g., top), so that they are not seen as exotic or weird or hard. A few of the activities are basically cognitive science, and a few are more or less math. I'm posting for two main reasons. 1. The first is just to say: Hi, there is a little bit more curriculum "raw material" out there, I hope someone else can use it too. Who might be interested? My guess is that it will be most appropriate for a self-selected audience, rather than cp4e. I envision it being used in an after-school group (hence the name), probably at the middle-school level but maybe some things would work for advanced elementary (I'm not an educator, just guessing). Maybe some could be rewritten for an older audience. Some of the activities are tried and true ("hello world!"), and some are ones I thought up, like counting to a million to give kids a gut sense for how fast computers are, described as turning yourself into a cyborg, counting to a million in one second, and then changing back. I want kids to see themselves as the agent that makes things happen, not the computer. At first its a little freaky that way, but I hope its ultimately more empowering as well. And I think it better reflects reality: a computer is a tool, a prosthesis for thinking. Like a bicycle is for transportation. I describe it as currently in "beta", meaning that, while there are some rough edges, the ideas and activities might be useful to others even so. Feedback would be very useful to have now to make it better. Again, it will never have advertising. Its currently set up as a wiki, under a Creative Commons Attribution-NonCommercial-ShareAlike License 2.0, which I used because _A byte of python_ used it. I have it as wiki to emphasize that I'd love to include others as hands-on contributors (see #2). 2. The second reason for this post is to say: I know it can be way better. I think its good enough that I can wing it through the fall, but it would be cool to partner with a) people who have elementary & middle-school education experience with programming (esp python), and b) know OO and good projects for introducing it. I know the website is currently just the start of what it could be. It currently reads like notes for either self-guided exploration by kids, but given various gaps in the description (hopefully filled soon) its probably best thought of as structured notes for an informed adult to use when leading a small group of kids. Its not complete yet, and I will be revising after seeing how kids interact with it. Its not lesson plans, although I could see some of the material being used in that way, with more work. - feedback of any kind would be terrific, don't hold back just to be polite. (As a scientist, all my day-job work gets peer reviewed, at times "tersely", shall we say. it took some getting used to but now I love getting frank feedback because ultimately it makes for a better product.) So if anything moves you one way or another, I'd love to know and won't be offended. This is not to say I'll change things to reflect every comment, of course, but I definitely promise to read and consider them all closely. More importantly, if you have a lot to add, I'd love to have collaborators as well. - I've set it up as a wiki with the idea that eventually there may be several editors, developers, and caretakers (a few, not the whole world). Please email me to talk about possibilities. For example, currently, there's nothing that uses graphics, which of course are very engaging, especially for this age group. currently, there's nothing that uses or explains OO, despite python being strongly OO. getting to games would be good. And I'm not convinced that being hosted on pbwiki is best, either. So there's room to grow as well. to comment on anything, you can either email me personally (jrgray at gmail.com, which is the same email for the wiki owner) or just leave a comment at the end of a particular wiki page (I think they make you sign up for an account an login to leave a comment). Anyway, its nice to be joining this community. best regards, --Jeremy /*------------------------------------------------------------- Jeremy R. Gray, PhD Assistant Professor, Yale University Dept. of Psychology & Interdepartmental Neuroscience Program web http://www.yale.edu/scan/ -------------------------------------------------------------*/ -------------- next part -------------- An HTML attachment was scrubbed... URL: From jrgray at gmail.com Thu Aug 21 15:42:26 2008 From: jrgray at gmail.com (Jeremy Gray) Date: Thu, 21 Aug 2008 09:42:26 -0400 Subject: [Edu-sig] after-school python, age 11+ In-Reply-To: <48AC8EB4.7080008@aon.at> References: <844f07dc0808191244o7d84fb50q58ca05dcd9124ac6@mail.gmail.com> <48AC8EB4.7080008@aon.at> Message-ID: <844f07dc0808210642o1b877b52s56654c103871b588@mail.gmail.com> thanks Gregor, this is very good to know! I plan to get into using turtle graphics down the road, as I like it so much. I'll definitely plan to work with the version to be released with 2.6 --Jeremy On Wed, Aug 20, 2008 at 5:37 PM, Gregor Lingl wrote: > Jeremy Gray schrieb: > >> Hi all, >> >> This is my first post to edu-sig, and its sort of long. In a nutshell: >> a) I have developed and posted a few new material for kids getting started >> with programming, e.g., for an after-school club, at >> http://afterschoolpython.pbwiki.com/ Its free (no advertising ever, >> open-source recommended), and will be so forever. >> b) I am interested in collaborating with or sharing notes with others, to >> make it even better. >> >> Being new to this interesting forum, I'll introduce myself briefly. I'm a >> dad (two kids, age 11 and 5), and have always been a geek at heart. I do >> science for a living (human brain imaging and psychology, using computers >> for everything), and have interests in education (including National Science >> Foundation grants related to education research). I'm not an elementary-age >> educator, although have family members who are educators. So it seems >> inevitable that I'd end up lurking on python edu-sig :o) I've seen some >> fairly long posts, so I'll take the plunge with a longish one myself. >> Apologies if that's frowned on. >> >> Basically, I want to teach my 6th grader how to program this coming year. >> We've fooled around with logo / turtle graphics and like it, and are ready >> for a real language. >> > Hi Jeremy, > > I just wanted to point out that Python also has a turtle graphics module: > turtle.py > While turtle.py in Python 2.5 did a good job, it has somewhat limited > capabilities. It will be replaced by an enhanced one from Python 2.6 on. > This enhanced module (fomerly known to some of us as xturtle.py) is already > part of Python 2.6 beta2 and I'll do a more elaborated posting on it as soon > as beta3 is out, which should happen these days. > > The new turtle module has - as one of it's new features - enhanced > animation which is intended to serve as a visual feedback facility for young > programmers. (Moreover they can - if they wish - choose the shape for their > turtles, for instance they can use turtle-shaped turtles or design their own > shapes ...) > > The new module will also run unaltered - as is - under Python 2.5 > > You can download it from here: > > http://svn.python.org/view/python/trunk/Lib/lib-tk/ > > The docs can be found here: > > http://docs.python.org/dev/library/turtle.html#module-turtle > > Regards, > Gregor > > I was quickly sold on python as the way to go, despite never having used >> it myself (or any OO language ... or maybe in part because of that--I want >> to learn something too!). I looked around for existing materials, and am >> really impressed by how much is out there for python (one of several selling >> points). yet I did not find anything I was that completely happy with. I >> looked carefully at the following, and learned a lot, and like a great many >> things about them: >> - Snake Wrangling for Kids >> - LiveWires summer program >> - other resources linked on Beginner's Guide to Python for non-programmers >> - A byte of python >> - J. Miller's 2004 PhD dissertation. his analysis of posts on what the >> community thinks about desirable features in using python in education is >> really helpful. one point that caught my eye was the dearth of intro >> curriculum materials. >> >> So, I took the plunge and have started to write something up myself. Its >> well underway, but is a work in progress, at >> http://afterschoolpython.pbwiki.com/ My goal is to have it be an >> experience in learning how a computer can enhance your mind, using a real >> language, aimed at a young audience without talking down to them. (Young but >> able to read, type using a text editor, and do some elementary-school math). >> I tried to follow Miller's guidelines on desirable features, but have not >> followed them all (not yet at least, graphics is a glaring example). >> >> The key thing that motivated me to put effort into >> yet-another-free-resource for learning python was to try to focus on problem >> solving as enhanced by a computer, for this age group. Plus sneaking in some >> geek tidbits here and there, like a few linux command-line tools (e.g., >> top), so that they are not seen as exotic or weird or hard. A few of the >> activities are basically cognitive science, and a few are more or less math. >> >> I'm posting for two main reasons. >> 1. The first is just to say: Hi, there is a little bit more curriculum >> "raw material" out there, I hope someone else can use it too. Who might be >> interested? My guess is that it will be most appropriate for a self-selected >> audience, rather than cp4e. I envision it being used in an after-school >> group (hence the name), probably at the middle-school level but maybe some >> things would work for advanced elementary (I'm not an educator, just >> guessing). Maybe some could be rewritten for an older audience. >> >> Some of the activities are tried and true ("hello world!"), and some are >> ones I thought up, like counting to a million to give kids a gut sense for >> how fast computers are, described as turning yourself into a cyborg, >> counting to a million in one second, and then changing back. I want kids to >> see themselves as the agent that makes things happen, not the computer. At >> first its a little freaky that way, but I hope its ultimately more >> empowering as well. And I think it better reflects reality: a computer is a >> tool, a prosthesis for thinking. Like a bicycle is for transportation. >> >> I describe it as currently in "beta", meaning that, while there are some >> rough edges, the ideas and activities might be useful to others even so. >> Feedback would be very useful to have now to make it better. Again, it will >> never have advertising. >> >> Its currently set up as a wiki, under a Creative Commons >> Attribution-NonCommercial-ShareAlike License 2.0, which I used because _A >> byte of python_ used it. I have it as wiki to emphasize that I'd love to >> include others as hands-on contributors (see #2). >> >> 2. The second reason for this post is to say: I know it can be way >> better. I think its good enough that I can wing it through the fall, but it >> would be cool to partner with a) people who have elementary & middle-school >> education experience with programming (esp python), and b) know OO and good >> projects for introducing it. I know the website is currently just the start >> of what it could be. It currently reads like notes for either self-guided >> exploration by kids, but given various gaps in the description (hopefully >> filled soon) its probably best thought of as structured notes for an >> informed adult to use when leading a small group of kids. Its not complete >> yet, and I will be revising after seeing how kids interact with it. Its not >> lesson plans, although I could see some of the material being used in that >> way, with more work. >> >> - feedback of any kind would be terrific, don't hold back just to be >> polite. (As a scientist, all my day-job work gets peer reviewed, at times >> "tersely", shall we say. it took some getting used to but now I love getting >> frank feedback because ultimately it makes for a better product.) So if >> anything moves you one way or another, I'd love to know and won't be >> offended. This is not to say I'll change things to reflect every comment, of >> course, but I definitely promise to read and consider them all closely. More >> importantly, if you have a lot to add, I'd love to have collaborators as >> well. >> >> - I've set it up as a wiki with the idea that eventually there may be >> several editors, developers, and caretakers (a few, not the whole world). >> Please email me to talk about possibilities. For example, currently, there's >> nothing that uses graphics, which of course are very engaging, especially >> for this age group. currently, there's nothing that uses or explains OO, >> despite python being strongly OO. getting to games would be good. And I'm >> not convinced that being hosted on pbwiki is best, either. So there's room >> to grow as well. >> >> to comment on anything, you can either email me personally ( >> jrgray at gmail.com , which is the same email for >> the wiki owner) or just leave a comment at the end of a particular wiki page >> (I think they make you sign up for an account an login to leave a comment). >> >> Anyway, its nice to be joining this community. >> >> best regards, >> >> --Jeremy >> >> >> /*------------------------------------------------------------- >> Jeremy R. Gray, PhD >> Assistant Professor, Yale University >> Dept. of Psychology & Interdepartmental Neuroscience Program >> web http://www.yale.edu/scan/ >> -------------------------------------------------------------*/ >> >> ------------------------------------------------------------------------ >> >> _______________________________________________ >> Edu-sig mailing list >> Edu-sig at python.org >> http://mail.python.org/mailman/listinfo/edu-sig >> >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From kirby.urner at gmail.com Thu Aug 21 16:24:44 2008 From: kirby.urner at gmail.com (kirby urner) Date: Thu, 21 Aug 2008 07:24:44 -0700 Subject: [Edu-sig] after-school python, age 11+ In-Reply-To: <844f07dc0808191244o7d84fb50q58ca05dcd9124ac6@mail.gmail.com> References: <844f07dc0808191244o7d84fb50q58ca05dcd9124ac6@mail.gmail.com> Message-ID: Greetings Jeremy, welcome to one of the best discussion lists ever. I've not published a book per se, do have a lot of teaching materials on-line through my Mathematical Canvas project of the Oregon Curriculum network. I also had several weeks with 8th graders at a Portland Public flagship in 05 - 06, which I wrote up for posterity (see link below). My take on "Hello World" is to morph it into a more contemporary segment using Google Earth (world) where we zoom in on points of interest (like the school itself), stick a push-pin, then look at the XML associated therewith. This leads to a discussion of latitude / longitude and the beginnings of a Rich Data Structure involving cities and their coordinates. We even did a little XML-RPC against a server (type in an address, get back a lat/long). I'm a big believer in scaffolding, meaning I like students to eyeball code that's above their pay grade, in terms of sophistication, like when learning a human language it's a good idea to watch TV or read the newspaper in that language, to get a feel for fluent styles. Recall and Recognition are quite different exercises, Recall being what you're able to code on your own, Recognition meaning you're following someone else's code. Recall is harder. In between is trying to debug or enhance existing code, which is the entry point for a lot of working geeks, i.e. the way we learn a new language is by inheriting some code pile and needing to troubleshoot. I work to simulate that experience in my classroom. In other words, it's not like I expect 8th graders to sit at a blank screen and crank out the kind of stuff I let them play with (recall). That being said, my goal as a teacher is to help bring them to a higher level (different for each student), meaning they do of course write their own code. VPython has been a centerpiece of my several classroom gigs with this age group (8th - 12th graders). Here're some links: http://www.4dsolutions.net/ocn/winterhaven/ http://www.4dsolutions.net/cp4e.html Kirby 4dSolutions.net 2008/8/19 Jeremy Gray : > Hi all, > > This is my first post to edu-sig, and its sort of long. In a nutshell: > a) I have developed and posted a few new material for kids getting started > with programming, e.g., for an after-school club, at > http://afterschoolpython.pbwiki.com/ Its free (no advertising ever, > open-source recommended), and will be so forever. > b) I am interested in collaborating with or sharing notes with others, to > make it even better. > From echerlin at gmail.com Fri Aug 22 07:44:16 2008 From: echerlin at gmail.com (Edward Cherlin) Date: Thu, 21 Aug 2008 22:44:16 -0700 Subject: [Edu-sig] after-school python, age 11+ In-Reply-To: <737473.75193.qm@web88104.mail.re2.yahoo.com> References: <737473.75193.qm@web88104.mail.re2.yahoo.com> Message-ID: You guys and kids are all so great. How would some of you like to speak and do demos at a future PyCon? Next year will be in Chicago, and for the year after that I am heading the bid to get it in the San Francisco Bay Area. The other possibilities are Atlanta and Cleveland. If you are interested, I can introduce you all to the PyCon staff and to the OLPC Grassroots list, and we can organize something for lots of children all over the world. There are a lot of other conferences that should see your work up close. Software, hardware, education, economic development... Also, how would you and your publishers like to have classroom-tested Spanish and other translations of your books? 2008/8/21 Warren Sande : > Jeremy, > > I was at the same point a couple years ago, and reached the same > conclusion. Long story short, the end result is "Hello World! Computer > Programming for Kids and Other Beginners" which I wrote with my son. It > will be released in a few weeks. Some edu-sig folks were involved in the > review process (Thanks, all!) > > You can see the publisher's page here: http://www.manning.com/sande/. > > You can pre-order it on Amazon here. > > It uses Python (and Pygame and PythonCard). Some examples are games, but > many more are not. It takes a fairly traditional approach to teaching > beginning programming. I think the presentation, writing style, > illustrations, and examples make it suitable for kids 10 and up. Several > adults who reviewed it said they would use it, too, which I was really happy > to hear. We absolutely tried to avoid "talking down" to the reader, while > also trying to make it fun. > > > Regards, > Warren Sande > > > > ----- Original Message ---- > From: Jeremy Gray > To: edu-sig at python.org > Sent: Tuesday, August 19, 2008 12:44:41 PM > Subject: [Edu-sig] after-school python, age 11+ > > Hi all, > > This is my first post to edu-sig, and its sort of long. In a nutshell: > a) I have developed and posted a few new material for kids getting started > with programming, e.g., for an after-school club, at > http://afterschoolpython.pbwiki.com/ Its free (no advertising ever, > open-source recommended), and will be so forever. > b) I am interested in collaborating with or sharing notes with others, to > make it even better. > > Being new to this interesting forum, I'll introduce myself briefly. I'm a > dad (two kids, age 11 and 5), and have always been a geek at heart. I do > science for a living (human brain imaging and psychology, using computers > for everything), and have interests in education (including National Science > Foundation grants related to education research). I'm not an elementary-age > educator, although have family members who are educators. So it seems > inevitable that I'd end up lurking on python edu-sig :o) I've seen some > fairly long posts, so I'll take the plunge with a longish one myself. > Apologies if that's frowned on. > > Basically, I want to teach my 6th grader how to program this coming year. > We've fooled around with logo / turtle graphics and like it, and are ready > for a real language. I was quickly sold on python as the way to go, despite > never having used it myself (or any OO language ... or maybe in part because > of that--I want to learn something too!). I looked around for existing > materials, and am really impressed by how much is out there for python (one > of several selling points). yet I did not find anything I was that > completely happy with. I looked carefully at the following, and learned a > lot, and like a great many things about them: > - Snake Wrangling for Kids > - LiveWires summer program > - other resources linked on Beginner's Guide to Python for non-programmers > - A byte of python > - J. Miller's 2004 PhD dissertation. his analysis of posts on what the > community thinks about desirable features in using python in education is > really helpful. one point that caught my eye was the dearth of intro > curriculum materials. > > So, I took the plunge and have started to write something up myself. Its > well underway, but is a work in progress, at > http://afterschoolpython.pbwiki.com/ > My goal is to have it be an experience in learning how a computer can > enhance your mind, using a real language, aimed at a young audience without > talking down to them. (Young but able to read, type using a text editor, and > do some elementary-school math). I tried to follow Miller's guidelines on > desirable features, but have not followed them all (not yet at least, > graphics is a glaring example). > > The key thing that motivated me to put effort into yet-another-free-resource > for learning python was to try to focus on problem solving as enhanced by a > computer, for this age group. Plus sneaking in some geek tidbits here and > there, like a few linux command-line tools (e.g., top), so that they are not > seen as exotic or weird or hard. A few of the activities are basically > cognitive science, and a few are more or less math. > > I'm posting for two main reasons. > 1. The first is just to say: Hi, there is a little bit more curriculum "raw > material" out there, I hope someone else can use it too. Who might be > interested? My guess is that it will be most appropriate for a self-selected > audience, rather than cp4e. I envision it being used in an after-school > group (hence the name), probably at the middle-school level but maybe some > things would work for advanced elementary (I'm not an educator, just > guessing). Maybe some could be rewritten for an older audience. > > Some of the activities are tried and true ("hello world!"), and some are > ones I thought up, like counting to a million to give kids a gut sense for > how fast computers are, described as turning yourself into a cyborg, > counting to a million in one second, and then changing back. I want kids to > see themselves as the agent that makes things happen, not the computer. At > first its a little freaky that way, but I hope its ultimately more > empowering as well. And I think it better reflects reality: a computer is a > tool, a prosthesis for thinking. Like a bicycle is for transportation. > > I describe it as currently in "beta", meaning that, while there are some > rough edges, the ideas and activities might be useful to others even so. > Feedback would be very useful to have now to make it better. Again, it will > never have advertising. > > Its currently set up as a wiki, under a Creative Commons > Attribution-NonCommercial-ShareAlike License 2.0, which I used because _A > byte of python_ used it. I have it as wiki to emphasize that I'd love to > include others as hands-on contributors (see #2). > > 2. The second reason for this post is to say: I know it can be way better. > I think its good enough that I can wing it through the fall, but it would be > cool to partner with a) people who have elementary & middle-school education > experience with programming (esp python), and b) know OO and good projects > for introducing it. I know the website is currently just the start of what > it could be. It currently reads like notes for either self-guided > exploration by kids, but given various gaps in the description (hopefully > filled soon) its probably best thought of as structured notes for an > informed adult to use when leading a small group of kids. Its not complete > yet, and I will be revising after seeing how kids interact with it. Its not > lesson plans, although I could see some of the material being used in that > way, with more work. > > - feedback of any kind would be terrific, don't hold back just to be polite. > (As a scientist, all my day-job work gets peer reviewed, at times "tersely", > shall we say. it took some getting used to but now I love getting frank > feedback because ultimately it makes for a better product.) So if anything > moves you one way or another, I'd love to know and won't be offended. This > is not to say I'll change things to reflect every comment, of course, but I > definitely promise to read and consider them all closely. More importantly, > if you have a lot to add, I'd love to have collaborators as well. > > - I've set it up as a wiki with the idea that eventually there may be > several editors, developers, and caretakers (a few, not the whole world). > Please email me to talk about possibilities. For example, currently, there's > nothing that uses graphics, which of course are very engaging, especially > for this age group. currently, there's nothing that uses or explains OO, > despite python being strongly OO. getting to games would be good. And I'm > not convinced that being hosted on pbwiki is best, either. So there's room > to grow as well. > > to comment on anything, you can either email me personally > (jrgray at gmail.com, which is the same email for the wiki owner) or just leave > a comment at the end of a particular wiki page (I think they make you sign > up for an account an login to leave a comment). > > Anyway, its nice to be joining this community. > > best regards, > > --Jeremy > > > /*------------------------------------------------------------- > Jeremy R. Gray, PhD > Assistant Professor, Yale University > Dept. of Psychology & Interdepartmental Neuroscience Program > web http://www.yale.edu/scan/ > -------------------------------------------------------------*/ > > > _______________________________________________ > Edu-sig mailing list > Edu-sig at python.org > http://mail.python.org/mailman/listinfo/edu-sig > > -- Silent Thunder [ ?? / ???????? ] is my name, And Children are my nation. The Cosmos is my dwelling place, And Truth my destination. From echerlin at gmail.com Sun Aug 24 10:30:45 2008 From: echerlin at gmail.com (Edward Cherlin) Date: Sun, 24 Aug 2008 01:30:45 -0700 Subject: [Edu-sig] nouns and verbs In-Reply-To: References: <40ea4eb00808032003j280d193ck30b94fdc994efb1a@mail.gmail.com> Message-ID: On Tue, Aug 5, 2008 at 10:32 PM, Yoshiki Ohshima wrote: > At Sun, 3 Aug 2008 20:03:03 -0700, > michel paul wrote: >> >> In secondary math classes we often say "Math is a language", but we really don't teach it that way. >> >> The closest we get to that is calling the comparison operators 'verbs' and the various kinds of values that can be >> combined into expressions 'nouns'. > > I enjoyed reading your lines of thought, and Edward has a good > observation. But I also have to point out that when people say "math > is a language", it means that Math is a language to describe what it > can describe well. But trying to make an analogy to English doesn't > get you go too far. After all, why does it have to have anything to > do with the English syntax? It is not a great language to express > what you would like to do over weekend either. > > The "language-ness" is not in whether it has verbs and nouns, but > the relationship between the target concept (Idea) and the description > to mean it, and also something to "think in". Most of math uses quite other forms of language, including equations and relations. It turns out that math for imperative programming is the kind that makes the best use of the noun-verb-adverb-pronoun family of distinctions. On the other hand, there are math languages important for computing that are analogous to quite different human languages. Among them is relational algebra, which can express all standard relational database operations, and can be expressed quite directly in Lojban, which has relation words but no separate nouns, verbs, or adjectives. There are also declarative languages such as Prolog that do not specify how to carry out a computation, but do give sets of constraints on the solution that a Prolog engine can process. The question is not, Which language is best? but, Which is best for this purpose? Which is not only a question of inherent mathematics, but of external network effects and ecologies and of available hardware. > And, the language-ness is not in these mathematical symbols and > syntax, either. It would be possible to write equations in > English-like syntax (like your "sum of 2 and 3" example). But the > aspiration of preciseness compactness tends to favor a simpler and > less ambiguious notation. The solution of the cubic equation was discovered and presented in this sort of language. Florian Cajori wrote an excellent History of Mathematical Notation that talks about the relationship between notations and discoveries in considerable detail. > So, it would be appropriate to say "math is a language for of > physics" but saying "math is a language" doesn't sound like a complete > sentence to me. "Is math a language of math?" would be an interesting > question^^; There are many languages in math. > Now, computer languages are like mathematics, but much more complex > in many ways. It is built on top of some axioms, but the set of > axioms tends to be very big. The notation is less ambiguous than > typical mathematics one because one of the intended readers of the > notation is the computer. Actually, to the mathematician, programming is a fairly simple concept that can be expressed in several different ways as the working out of only two basic concepts, such as the S and K combinators (Unlambda or J), or Lambda expressions and application (LISP and many related languages). Most programming languages have a good deal of unneeded and counterproductive complexity added on, like C++. To the non-mathematician, these simpler solutions seem harder than memorizing the complex syntax of conventional languages, as was often borne in upon Computer Scientist Edsger Dijkstra. He spent much of his career trying to make programming easier to do well, and was regularly told by practitioners that he had made it harder instead. The same principle applies with even greater force in education. "Don't do us no favors," teachers seem to say. "if you make it so that we can really teach this stuff, then we will all have to go learn it ourselves, and we can't." This is a delusion in a way, but not the delusion of the teachersthemselves. It is a delusion enforced by the social system they work in. Like Ethiopian teachers treating questions from students as personal insults, until they get XOs. There experience suggests that there is hope for the profession as a whole. > -- Yoshiki > _______________________________________________ > Edu-sig mailing list > Edu-sig at python.org > http://mail.python.org/mailman/listinfo/edu-sig > -- Silent Thunder [ ?? / ???????? ] is my name, And Children are my nation. The Cosmos is my dwelling place, And Truth my destination. From lucychili at gmail.com Sun Aug 24 11:09:44 2008 From: lucychili at gmail.com (Janet Hawtin) Date: Sun, 24 Aug 2008 18:39:44 +0930 Subject: [Edu-sig] nouns and verbs In-Reply-To: References: <40ea4eb00808032003j280d193ck30b94fdc994efb1a@mail.gmail.com> Message-ID: Does ternary math offer states which provide relational opportunities? From kirby.urner at gmail.com Sun Aug 24 17:48:18 2008 From: kirby.urner at gmail.com (kirby urner) Date: Sun, 24 Aug 2008 08:48:18 -0700 Subject: [Edu-sig] nouns and verbs In-Reply-To: References: <40ea4eb00808032003j280d193ck30b94fdc994efb1a@mail.gmail.com> Message-ID: On Sun, Aug 24, 2008 at 1:30 AM, Edward Cherlin wrote: << SNIP >> > Actually, to the mathematician, programming is a fairly simple concept > that can be expressed in several different ways as the working out of > only two basic concepts, such as the S and K combinators (Unlambda or > J), or Lambda expressions and application (LISP and many related > languages). Most programming languages have a good deal of unneeded > and counterproductive complexity added on, like C++. Mathematicians may boil it down to a few basic concepts (like a Turing Machine or whatever), but when push comes to shove they like their traditional notations and both MathCad and Mathematica have gone to some length to get those old pre-computer typographies on screen, so that math looks like it used to. Lots of mathy types didn't want to touch a mouse and keyboard as long as programming looked like FORTRAN (not saying I blame them). We've come a long way baby. > To the non-mathematician, these simpler solutions seem harder than > memorizing the complex syntax of conventional languages, as was often > borne in upon Computer Scientist Edsger Dijkstra. He spent much of his > career trying to make programming easier to do well, and was regularly > told by practitioners that he had made it harder instead. Distilling to two concepts might be theoretically advantageous in some context, but trying to code anything sophisticated in such a primitive manner would be tedious to say the least, although I realize LISP is all S-expressions (exciting to purists in that way). > The same principle applies with even greater force in education. > "Don't do us no favors," teachers seem to say. "if you make it so that > we can really teach this stuff, then we will all have to go learn it > ourselves, and we can't." This is a delusion in a way, but not the > delusion of the teachersthemselves. It is a delusion enforced by the > social system they work in. Like Ethiopian teachers treating questions > from students as personal insults, until they get XOs. There > experience suggests that there is hope for the profession as a whole. Yes, it's good to have languages so accessible that we don't really need teachers any more (just self teaching abilities), although if we have them that's cool (teach your peers!). The self-marginalizing of professional adults to where they're not relevant to passing on so many core aspects of the culture, because not venturing to keep up, even if called "teachers" originally, is certainly a social problem. akin to juvenile delinquency in some ways (i.e. whole groups of people feeling they have no accepted role in the ambient culture anymore). Kirby From Scott.Daniels at Acm.Org Mon Aug 25 00:05:16 2008 From: Scott.Daniels at Acm.Org (Scott David Daniels) Date: Sun, 24 Aug 2008 15:05:16 -0700 Subject: [Edu-sig] nouns and verbs In-Reply-To: References: <40ea4eb00808032003j280d193ck30b94fdc994efb1a@mail.gmail.com> Message-ID: Edward Cherlin wrote: > On Tue, Aug 5, 2008 at 10:32 PM, Yoshiki Ohshima wrote: >> ... Now, computer languages are like mathematics, but much more complex >> in many ways. It is built on top of some axioms, but the set of >> axioms tends to be very big. The notation is less ambiguous than >> typical mathematics one because one of the intended readers of the >> notation is the computer. > > Actually, to the mathematician, programming is a fairly simple concept > that can be expressed in several different ways as the working out of > only two basic concepts, such as the S and K combinators (Unlambda or > J), or Lambda expressions and application (LISP and many related > languages). Most programming languages have a good deal of unneeded > and counterproductive complexity added on, like C++. The current ACM has the last half of a great interview with Donald Knuth. The whole is great, but the second can be read stand-alone. He was a and is a mathematician by most lights, but said in this interview, "Software is hard. My experience with TeX taught me to have much more admiration for colleagues that are devoting most of their life to software than I had previously done, because I didn't realize how much more bandwidth of my brain was being taken up by that work than when I was doing theoretical work." --Scott David Daniels Scott.Daniels at Acm.Org From mpaul213 at gmail.com Mon Aug 25 03:38:08 2008 From: mpaul213 at gmail.com (michel paul) Date: Sun, 24 Aug 2008 18:38:08 -0700 Subject: [Edu-sig] nouns and verbs In-Reply-To: References: <40ea4eb00808032003j280d193ck30b94fdc994efb1a@mail.gmail.com> Message-ID: <40ea4eb00808241838w333364f8tdb807d9197e161dd@mail.gmail.com> Thanks for the thoughtful responses on this. Yeah, a distinction between nouns and verbs can't be made too rigid, as, for one thing, some words, like 'shout', can serve as either nouns or verbs depending upon context, and in some languages, such as a designed language, such a distinction might not be necessary, but there is an interesting contrast that naturally arises, similar to the one between 'things' and 'processes'. A related question I had is whether nouns and verbs are processed differently in the brain? From what I've found, the current view is that, yes, there are differences, but there is of course lots of debate about the details. The most recent views explain the difference in terms of grammatical 'markers' associated with noun or verb phrases, not the specific noun or verb itself. "nouns and verbs qua nouns and verbs are not represented in separate regions of the brain." I'm completely unqualified to really say anything further about this, so see Talking Brains. It makes me wonder about how our brains process functions, as we can understand functions as either 'nouns' (values) or 'verbs' (processes acting on other values) or both. Again, to summarize what prompted my original question, those high school math texts that do describe math as a 'language 'typically will call the comparison operators 'verbs', as they contain 'is'. Expressions are not considered complete statements. Equations or inequalities are defined as the only complete statements, and these are built from expressions. Again - that's how the high school texts typically present it. However, it is clearly the case from the discussion here that computational expressions can indeed be interpreted as imperative statements. And, as I mentioned, I bet that most students and teachers automatically think of arithmetic expressions in a computational or imperative way, especially in an age of calculators, so it would seem that this could become part of the argument for weaving computational thinking into the math curriculum? We would be giving them a richer language for expressing the kind of thinking they're already inclined to do. The block Parmenidean universe of traditional high school math where nothing actually 'happens' is kind of distant from how most kids naturally think. - Michel On Sun, Aug 24, 2008 at 8:48 AM, kirby urner wrote: > On Sun, Aug 24, 2008 at 1:30 AM, Edward Cherlin > wrote: > > << SNIP >> > > > Actually, to the mathematician, programming is a fairly simple concept > > that can be expressed in several different ways as the working out of > > only two basic concepts, such as the S and K combinators (Unlambda or > > J), or Lambda expressions and application (LISP and many related > > languages). Most programming languages have a good deal of unneeded > > and counterproductive complexity added on, like C++. > > Mathematicians may boil it down to a few basic concepts (like a Turing > Machine or whatever), but when push comes to shove they like their > traditional notations and both MathCad and Mathematica have gone to > some length to get those old pre-computer typographies on screen, so > that math looks like it used to. > > Lots of mathy types didn't want to touch a mouse and keyboard as long > as programming looked like FORTRAN (not saying I blame them). We've > come a long way baby. > > > To the non-mathematician, these simpler solutions seem harder than > > memorizing the complex syntax of conventional languages, as was often > > borne in upon Computer Scientist Edsger Dijkstra. He spent much of his > > career trying to make programming easier to do well, and was regularly > > told by practitioners that he had made it harder instead. > > Distilling to two concepts might be theoretically advantageous in some > context, but trying to code anything sophisticated in such a primitive > manner would be tedious to say the least, although I realize LISP is > all S-expressions (exciting to purists in that way). > > > The same principle applies with even greater force in education. > > "Don't do us no favors," teachers seem to say. "if you make it so that > > we can really teach this stuff, then we will all have to go learn it > > ourselves, and we can't." This is a delusion in a way, but not the > > delusion of the teachersthemselves. It is a delusion enforced by the > > social system they work in. Like Ethiopian teachers treating questions > > from students as personal insults, until they get XOs. There > > experience suggests that there is hope for the profession as a whole. > > Yes, it's good to have languages so accessible that we don't really > need teachers any more (just self teaching abilities), although if we > have them that's cool (teach your peers!). > > The self-marginalizing of professional adults to where they're not > relevant to passing on so many core aspects of the culture, because > not venturing to keep up, even if called "teachers" originally, is > certainly a social problem. akin to juvenile delinquency in some ways > (i.e. whole groups of people feeling they have no accepted role in the > ambient culture anymore). > > Kirby > _______________________________________________ > Edu-sig mailing list > Edu-sig at python.org > http://mail.python.org/mailman/listinfo/edu-sig > -------------- next part -------------- An HTML attachment was scrubbed... URL: From jonah at ccnmtl.columbia.edu Mon Aug 25 17:16:03 2008 From: jonah at ccnmtl.columbia.edu (Jonah Bossewitch) Date: Mon, 25 Aug 2008 11:16:03 -0400 Subject: [Edu-sig] Python Ed Tech positions Message-ID: Hi, I am not sure if this list is ever used for job postings, but we are recruiting for a great position involving python and educational technology in New York City right now. I'm posting this on the Python Job board too, but I wanted to draw the position to your attention, especially since you may be able to think of people outside of the python world who might be interested. We actually have a few jobs open(ing) other than the one listed below (some graphic design, project mgmt, and communications too), so please have folks contact me if they are interested in working for our organization. Thanks! /Jonah ---------------- `Columbia Center for New Media Teaching and Learning `__ (New York, NY, USA) ==================================================================== **Job Description**: Design and develop educationally purposeful teaching and learning environments. You can browse our portfolio of past projects (http://ccnmtl.columbia.edu) get a sense of the exciting range of projects we are involved with. We are also closely involved with many open source projects. We need people with strong web development skills, a good intuition for User Interfaces, a passion for education, and a creative spirit. **What Python is used for**: We are a service organization with an educational mission, and use a heterogeneous mix of technologies. We love python and use if for many of our custom web development projects (Django, Turbogears), some of our Content Management needs (Plone), and most of our scripting and sys admin tasks. * **Contact**: Jonah Bossewitch * **E-mail contact**: jonah at ccnmtl dot columbia dot edu * **Other Contact Info**: Please submit your resume to the job posting below * **Web**: http://jobs.columbia.edu/applicants/Central?quickFind=112228 From vceder at canterburyschool.org Sat Aug 30 06:50:51 2008 From: vceder at canterburyschool.org (Vern Ceder) Date: Sat, 30 Aug 2008 00:50:51 -0400 Subject: [Edu-sig] K12 Open Minds Reminder - Sessions announced! Message-ID: <48B8D1AB.5070001@canterburyschool.org> This is just a quick (and final) reminder that the K12 Open Minds conference is fast approaching. See http://www.k12openminds.org for more details - this is one of the few conferences devoted to Free and Open Source Software in K-12 education. There are two updates worth mentioning. First, the preliminary sessions list is now available at http://www.k12openminds.org/sessions - check it out and consider joining us. Both Andy Harrington and I will be talking about teaching Python, and Walter Bender from SugarLabs will also be presenting. Second, the deadline for rooms at the conference rate of $97 a night has been extended to Tuesday, Sept 2. After that, the room rate will increase dramatically. So if you are planning to attend, book a room now (see the "Hotels" link on k12openminds.org). You should be able to book online all through the weekend. I know that time is short, but we hope you will consider joining us in Indy for this event. Cheers, Vern Ceder, K12 Open Minds Planning Committee -- This time for sure! -Bullwinkle J. Moose ----------------------------- Vern Ceder, Director of Technology Canterbury School, 3210 Smith Road, Ft Wayne, IN 46804 vceder at canterburyschool.org; 260-436-0746; FAX: 260-436-5137