From mdipierro at cs.depaul.edu Tue Apr 1 02:06:25 2008 From: mdipierro at cs.depaul.edu (Massimo Di Pierro) Date: Mon, 31 Mar 2008 19:06:25 -0500 Subject: [Edu-sig] teaching with python experience In-Reply-To: References: Message-ID: <95087890-1A39-43AF-A44A-06BC6141D0CD@cs.depaul.edu> Hi Ishwar, You can find the original course proposal that I wrote at http://mdp.cti.depaul.edu/examples/static/csc261.pdf This predates the idea of using a web framework. I do not have assignments because I did not teach this course myself. Massimo On Mar 31, 2008, at 4:08 PM, ISHWAR RATTAN wrote: > Hello Massimo, > > I would like more details on introductory sequence > courses: info covered and programming assignment statments > (if possible). > > I am not a fan of Python but this might be the right > first programming language for undergraduates (like a > throw back Pascal days). > > Regards, > - ishwar rattan > > On Mon, 31 Mar 2008, Massimo Di Pierro wrote: > >> Hello everybody, >> >> I would like to share some of my experience in teaching Python at >> DePaul University in Computer Science. The main problem we have been >> facing with C++ and Java courses is that it takes years of practice >> before students are able to develop something interesting. We tried >> different approaches: >> >> 1) We created an optional introductory sequence in Python (in >> alternative to Java or C++, but they still have to learn Java and C++ >> in more advanced courses). Students who take the class tend to be >> generally more knowledgeable of CS concepts than students who choose >> the Java and C++ intro courses (who chose them because they have >> heard of the names). >> >> 2) We use Python more and more in courses that are not language >> specific. For example I teach graduate courses on Monte Carlo >> Simulations for Financial Applications, a course on Scientific >> Computing and a course on Parallel Programming. In all these courses >> I use python instead of pseudo code and the students get it right >> away even if they have not been trained in the language. In some >> cases they have to translate python in C++ but Python helps them >> separate the complexity of the algorithms from the complexity of C++ >> progamming. >> >> 3) We created a new course on web frameworks in Python. The course is >> not on the usage of one particular framework, although we had to >> choose one, but on the programming patterns used to develop >> frameworks. This course was targeted to both undergraduates and >> graduates students in order to fill gaps in their knowledge. The >> basic idea was to follow the path of an HTTP request from the moment >> its is generated by a browser until it reaches the server, is >> processed and the response is sent back. We discussed good practice, >> security, different types of persistence (database, cookies, >> sessions, filesystem, ram) and the Model View Controller design. Most >> of the students had no previous python experience and no server-side >> programming experience. They all new HTML but minimal CSS and zero >> knowledge of network protocols such as HTTP. >> >> After evaluating a number of web frameworks and having tried to teach >> a previous course using Django I found that most of the existing >> frameworks have a too steep learning curve. A typical problem for >> example is the need for shell commands (Ruby on Rails, Django, >> Pylons, TurboGears, they all require use of a shell) but most >> students have only bee exposed to windows and they the concept of >> shell very alien to them. In order to solve this problem I wrote >> >> http://mdp.cti.depaul.edu (TRY THE LIVE DEMO ONLINE) (GPL >> license) >> >> specifically for these students. This experiment had more success >> than expected and all students in the class have been able to create >> decent projects using the framework and the best students got more >> involved the core development, joined the mailing list and were glad >> to give a real contribution to their first open source project. For >> some reason, since then, web2py has picked up some steam more in the >> business environment than in the teaching environment. >> >> Although my class was not targeted to freshmen, it could have been >> (with some changes). >> >> My experience with 3) is that students appreciate programming better >> when they develop something that they can use, that they can show >> their friends who are not computer scientists, and they get it. One >> way to do it is by programming inside a web framework (whether it is >> web2py or Django or Pylons does not really matter). >> >> Some things are different and some things are the same when compared >> with teaching "normal" programming: >> >> a) One visits a URL and a function is called, the output of the >> function is sent back to the browser. You still has to write the >> function, but the concept is more intuitive than calling a function >> from main(). They get it right away because it is related to their >> everyday experience. They also understand parameters passing because >> they are familiar with filling forms online. In the case of a full >> stack framework all of the work is actually done by the framework >> itself, the students only have to write the function the "returns" >> the response as a string. >> >> b) Conditionals are not much different than in "normal" programming. >> >> c) Loops are somewhat less important in the initial phase because >> there is a lot one can do without looping. This is good because it is >> with loops that students have the most trouble. >> >> d) Most web frameworks abstract the access to the database, therefore >> adding real database persistence is not much more difficult than >> using a member variable of a Java class. This enables students to >> created rich functionalities with a small set of API. >> >> e) cookie, sessions and cache add a small level of complexity but a >> good web framework should be able to take care of these issues >> transparently. web2py does. Django, Pylons and TurboGears doo to >> although they require some configuration. >> >> f) They do not need to know HTML because they can use an HTML WYSIWYG >> editor. >> >> Moreover in doing web programming at a more advanced level, two >> crucial CS tasks show up naturally: regular expressions (for >> validation of user input) and parsing (for reading HTML/XML/XML-RPC/ >> RSS and for all kind of tasks like parsing code embedded in a web >> page, for performing syntax highlighting, etc.). These are concepts >> that every CS major should know but we often teach them in ways that >> do not relate to the everyday experience of the students. >> >> ***** >> Anyway, the bottom line is that instead of start teaching programming >> using programs that interact with a shell or with a GUI, today it is >> becoming easier and easier to write programs that interact with the >> web. There is a small overhead but a lot more power and fun for the >> students. >> >> Personally I am going to follow this approach in other courses that I >> am teaching that do not require python and do not require web >> development. If you want to try it too and have questions let me >> know. I will be happy to share my experience and material. >> >> Massimo >> >> _______________________________________________ >> Edu-sig mailing list >> Edu-sig at python.org >> http://mail.python.org/mailman/listinfo/edu-sig >> From macquigg at ece.arizona.edu Tue Apr 1 05:21:59 2008 From: macquigg at ece.arizona.edu (David MacQuigg) Date: Mon, 31 Mar 2008 20:21:59 -0700 Subject: [Edu-sig] More on decorators In-Reply-To: Message-ID: <5.2.1.1.0.20080330133010.03cafca0@mail.ece.arizona.edu> "Getting this right can be slightly brain-bending ..." quote from discussion on Decorators in What's New in Python 2.4. :( Kirby, I love your examples below!! Helped me understand the generality of the @ syntax (which I gave up on before the developers had finished their discussion), and the usefulness of classmethod (which I had assumed was a solution in search of a problem). I do use staticmethod, and I've got some good examples at http://ece.arizona.edu/~edatools/Python/Animals.py, but never saw a real need for classmethod. Your example at least makes the utility plausible, although I could easily do the same without a classmethod. But I think I see what you are trying to do. Maybe you could expand the example a bit to make it more compelling. In the current example, the variable klass has only one value, Register. You could have multiple classes (Retail, Wholesale, etc.) to drive home that klass really is an important variable, and can't just be hard-coded as Register. The motivation for staticmethod is easy in the context of my OO zoo. The show() methods print out the properties of each of the animals in the zoo. The problem is, you can't call a show() method for a particular class of animal until the zoo has at least one instance of that animal. The problem can be solved by making the show() methods simple functions, outside of any class, but that is ugly. The show() methods belong inside their classes, and to do that, they must be static methods. Good examples are crucial. So much syntax, even in Python, is unnecessary clutter. Thank you for showing me classmethod was not just clutter. -- Dave At 10:38 AM 3/30/2008 -0700, kirby urner wrote: >Here's a little module about the power of decorators. > >We show decorators used in two capacities: > >1. to invoke the built-in classmethod wrapper, giving us >a way to invoke methods on a class with no "self objects" > >2. to wrap a user-defined cost with a user-defined sales_tax >with a flexible percentage (defaults to 10%). > > >==== taxes.py ==== > >from random import randint > >def sales_tax(sale, percent = 0.1): > def vat(x): > before = sale(x) > after = (1 + percent) * before > print("Before: %s; After: %s" % (before, after)) > return after > return vat > >class Register: > > shipping = 1.70 # fixed cost > > @sales_tax > def __cost(price): > return price + Register.shipping > > @classmethod > def transact(klass, price): > return klass.__cost(price) > >def test(): > print(Register) > for i in range(10): > Register.transact(randint(1,100)) > >However, I'd consider the above too complicated, so refactor >below: > >==== taxes.py ==== > >from random import randint > >def sales_tax(sale, percent = 0.1): > def vat(x): > before = sale(x) > after = (1 + percent) * before > print("Before: %s; After: %s" % (before, after)) > return after > return vat > ># fixed cost >shipping = 1.70 > >@sales_tax >def cost(price): > return price + shipping > >class Register: > > @classmethod > def transact(klass, price): > return cost(price) > >def test(): > print(Register) > for i in range(10): > Register.transact(randint(1,100)) > >What's cooler is we're also demonstrating how decorator >syntax makes as much sense outside a class definition, >plus we're playing a different scope game, with Register >reaching outside its class for a more global cost function >(it really didn't have been inside the class def in the first >example), which in turn relies on the global shipping >variable. > >In the lesson plan I'm dreaming up, it'd be useful to >show both examples, as we're showing off the freedoms >you have when it comes to mixing functions and classes >top level, in addition to decorator syntax. > >Regarding decorators, I think I good way to teach them >*is* to recapitulate their motivation. > >Having to define the function first, before wrapping it >in clunky f = g(f) syntax at the end, was making for >less readable code. > >@ is Python's function composer, with the second >argument a function def and source of the name, the >first argument functional wrapper for the second >i.e. > >@f >def g(args) >... > >is the same as g = f(g(args)) > >Earlier in the buildup to such as the above, we'll look >at simpler more algebraic examples of function >composition . > >>>> def f(h): > def k(x): > return h(x) + 2 > return k > >>>> @ f >def g(x): return x**2 > >>>> print(g(10)) >102 >>>> print(g(12)) >146 > >Then go for fancier user-defined examples, including >with argument passing. > > >>>> def f(a): > if a == 1: > def n(targ): > def z(x): > return targ(x) + 2 > return z > return n > if a == 2: > def n(targ): > def z(x): > return targ(x) + 3 > return z > return n > > >>>> f(1)(g) > >>>> f(1) > >>>> @f(1) >def g(x): return x * x > >>>> g(10) >102 >>>> @f(2) >def g(x): return x * x > >>>> g(10) >103 > >Kirby >_______________________________________________ >Edu-sig mailing list >Edu-sig at python.org >http://mail.python.org/mailman/listinfo/edu-sig From kirby.urner at gmail.com Tue Apr 1 15:42:11 2008 From: kirby.urner at gmail.com (kirby urner) Date: Tue, 1 Apr 2008 06:42:11 -0700 Subject: [Edu-sig] More on decorators In-Reply-To: <5.2.1.1.0.20080330133010.03cafca0@mail.ece.arizona.edu> References: <5.2.1.1.0.20080330133010.03cafca0@mail.ece.arizona.edu> Message-ID: > I do use staticmethod, and I've got some good examples at http://ece.arizona.edu/~edatools/Python/Animals.py, but never saw a real need for classmethod. Your example at least makes the utility plausible, although I could easily do the same without a classmethod. But I think I see what you are trying to do. Maybe you could expand the example a bit to make it more compelling. In the current example, the variable klass has only one value, Register. You could have multiple classes (Retail, Wholesale, etc.) to drive home that klass really is an important variable, and can't just be hard-coded as Register. > Hi Dave -- Good questions! I think the staticmethod vs. classmethod topic, decorators aside, is a good one, I hope we do more on it. Here's your Animals.py with classmethod in place of staticmethod. Works about the same. But I won't say "this answers your question" -- just adds more grist to the mill at this point. class Animal(object): "Ancestor of the Animal hierarchy" _numAnimals = 0 home = "Earth" def __init__(self): Animal._numAnimals += 1 @classmethod def show(klass): print "Inventory:" print " Animals:", klass._numAnimals class Reptile(Animal): pass class Mammal(Animal): _numMammals = 0 basal_metabolic_rate = 7.2 def __init__( self, s = "Maa... Maa..."): Animal.__init__(self) Mammal._numMammals += 1 self.sound = s @classmethod def show(klass): Animal.show() print " Mammals:", klass._numMammals, print " BMR =", klass.basal_metabolic_rate def talk(self): print "Mammal sound: ", self.sound class Bovine(Mammal): pass class Canine(Mammal): pass class Feline(Mammal): _numFelines = 0 genus = "feline" def __init__( self): Mammal.__init__(self) Feline._numFelines += 1 @classmethod def show(klass): Mammal.show() print " Felines:", klass._numFelines class Cat(Feline): _numCats = 0 def __init__( self, n = "unknown", s = "Meow" ): Feline.__init__(self) Cat._numCats += 1 self.name = n self.sound = s @ classmethod def show(klass): Feline.show() print " Cats:", klass._numCats def talk(self): print "My name is ...", self.name print "I am a %s from %s" % (self.genus, self.home) Mammal.talk(self) def test(): a = Animal() m = Mammal(); print "m:",; m.talk() f = Feline(); print "f:",; f.talk() c = Cat(); print "c:",; c.talk() print "--- Cat.show() ---" Cat.show() print "--- cat1.talk() ---" cat1 = Cat("Garfield", "Purr") cat1.talk() if __name__ == '__main__': test() Kirby From wescpy at gmail.com Tue Apr 1 23:46:26 2008 From: wescpy at gmail.com (wesley chun) Date: Tue, 1 Apr 2008 14:46:26 -0700 Subject: [Edu-sig] [ANN] May 2008 Python course In-Reply-To: <78b3a9580804011444v388d5690m4d9a3931da4523a2@mail.gmail.com> References: <78b3a9580804011444v388d5690m4d9a3931da4523a2@mail.gmail.com> Message-ID: <78b3a9580804011446r3c03d07bl94e001fd492c8bf7@mail.gmail.com> * apologies if you receive cross-posted duplicates * FINAL REMINDER Need to get up-to-speed with Python as quickly as possible? Come join me, Wesley Chun, author of Prentice-Hall's well-received "Core Python Programming," for another comprehensive intro course next month in beautiful Northern California! I look forward to meeting you! If you miss this one, our next courses will likely be in Oct or Nov 2008. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (COMPREHENSIVE) INTRODUCTION TO PYTHON: Mon-Wed, 2008 May 5-7 Although this course may appear to those new to Python, it is also perfect those who have tinkered with it and want to "fill in the gaps" and/or want to get more in-depth formal training. It combines the best of both an introduction to the language as well as a "Python Internals" training course. We will immerse you in the world of Python in only a few days. We will show you more than just its syntax (which you don't really need a book to learn, right?). Knowing more about how Python works under the covers, including the relationship between data objects and memory management, will make you a much more effective Python programmer coming out of the gate. 3 hands-on labs each day will help hammer the concepts home. Come find out why Google, Yahoo!, Disney, ILM/LucasFilm, VMware, OLPC, NASA, Ubuntu, YouTube, and Red Hat all use Python. Users supporting or jumping to Plone, Zope, TurboGears, Django, Pylons, Jython, IronPython, and Mailman will also benefit! - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - WHERE: near the San Francisco Airport (SFO/San Bruno), CA, USA WEB: http://cyberwebconsulting.com (click "Python Training") LOCALS: easy freeway (101/280/380) with lots of parking plus public transit (BART and CalTrain) access via the San Bruno stations, easily accessible from all parts of the Bay Area VISITORS: free shuttle to/from the airport, free high-speed internet, free breakfast and regular evening receptions; fully-equipped suites See website for costs, venue info, and registration. Discounts are available for multiple registrations as well as for teachers/students. Hope to see you there! -- wesley - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - "Core Python Programming", Prentice Hall, (c)2007,2001 http://corepython.com wesley.j.chun :: wescpy-at-gmail.com python training and technical consulting cyberweb.consulting : silicon valley, ca http://cyberwebconsulting.com From kirby.urner at gmail.com Sat Apr 5 22:03:48 2008 From: kirby.urner at gmail.com (kirby urner) Date: Sat, 5 Apr 2008 13:03:48 -0700 Subject: [Edu-sig] Random example, early college charter... Message-ID: """ TECC prototype: 4D Puzzler: Egg Hunt The following namespace has been defined: """ class Egg: def __init__(self, thething): self.__secret_prize = thething @property def prize(self): return self.__secret_prize egg = Egg("********") struct = ( [ ( { 'a' : 1 }, { 2: 'a'} ), { ('a') : [ ] } , ] , [ {3 : egg} ] ) """ Now reach into struct using indexing to get the secret contents of the egg, using a one line expression. One possible answer: >>> struct[1][0][3].prize '********' another: >>> struct[1][0][3]._Egg__secret_prize '********' """ 4D:k! From jonah at ccnmtl.columbia.edu Sun Apr 6 02:02:39 2008 From: jonah at ccnmtl.columbia.edu (Jonah Bossewitch) Date: Sat, 5 Apr 2008 20:02:39 -0400 Subject: [Edu-sig] College Board Cuts CS AP Message-ID: http://www.washingtonpost.com/wp-dyn/content/story/2008/04/03/ ST2008040303977.html Pretty disheartening considering the declining interest in CS majors.... so much for switching to python on the AP exam. Even java is better than no AP (mostly ;-) ) /jsb From kirby.urner at gmail.com Sun Apr 6 02:13:11 2008 From: kirby.urner at gmail.com (kirby urner) Date: Sat, 5 Apr 2008 17:13:11 -0700 Subject: [Edu-sig] College Board Cuts CS AP In-Reply-To: References: Message-ID: Anyway I prefer an arrangement where high schools collaborate locally with various higher ed venues, such that instead of AP, we get actual college credit in the name of some institution, for approved courses (basically college courses for credit offered to those still in high school but qualified to accomplish college level work). Then those hard earnings turn into transfer credits if the student in question wishes to go elsewhere e.g. out of town, for more college (very often the case). Logistics of transfer of credits between institutions remain a challenge (not a new problem, many analogues) but I still prefer that to AP, which discourages diversity, enforces uniformity, takes a one size fits all approach. I wouldn't like to see Python imposed from above by self-styled know-it-alls anymore than I've liked seeing Java or C++ abused in this way. Kirby On Sat, Apr 5, 2008 at 5:02 PM, Jonah Bossewitch wrote: > http://www.washingtonpost.com/wp-dyn/content/story/2008/04/03/ > ST2008040303977.html > > Pretty disheartening considering the declining interest in CS > majors.... so much for switching to python on the AP exam. Even java > is better than no AP (mostly ;-) ) > > /jsb > _______________________________________________ > Edu-sig mailing list > Edu-sig at python.org > http://mail.python.org/mailman/listinfo/edu-sig > From goldwamh at slu.edu Sun Apr 6 02:15:57 2008 From: goldwamh at slu.edu (Michael H. Goldwasser) Date: Sat, 5 Apr 2008 19:15:57 -0500 Subject: [Edu-sig] College Board Cuts CS AP In-Reply-To: References: Message-ID: <18424.5693.21522.756979@Michael-Goldwassers-Computer.local> On Saturday April 5, 2008, Jonah Bossewitch wrote: > http://www.washingtonpost.com/wp-dyn/content/story/2008/04/03/ > ST2008040303977.html > > Pretty disheartening considering the declining interest in CS > majors.... so much for switching to python on the AP exam. Even java > is better than no AP (mostly ;-) ) > > /jsb My read on that article is that they are only cutting the AB version of the exam (that is the more advanced version, somewhat akin to CS1+CS2). The A version of the exam (akin to CS1) remains intact. So you've still got the Java exam rather than no exam (careful what you wish for!) With regard, Michael +----------------------------------------------- | Michael Goldwasser | Associate Professor | Dept. Mathematics and Computer Science | Saint Louis University | 220 North Grand Blvd. | St. Louis, MO 63103-2007 From vceder at canterburyschool.org Sun Apr 6 02:18:54 2008 From: vceder at canterburyschool.org (Vern Ceder) Date: Sat, 05 Apr 2008 20:18:54 -0400 Subject: [Edu-sig] College Board Cuts CS AP In-Reply-To: References: Message-ID: <47F816EE.6040800@canterburyschool.org> Actually only the AB CS exam is being cut - it's the more advanced of the two, trying to do some things with advanced data structures and algorithms. The A version of the CS exam remains and will be strengthened, according to the email sent to AP CS teachers. The problem with the AB exam as I understand it was that it was too much for a year of HS in a lot of porograms, but not enough for credit for an extra semester of college credit. Cheers, Vern Jonah Bossewitch wrote: > http://www.washingtonpost.com/wp-dyn/content/story/2008/04/03/ > ST2008040303977.html > > Pretty disheartening considering the declining interest in CS > majors.... so much for switching to python on the AP exam. Even java > is better than no AP (mostly ;-) ) > > /jsb > _______________________________________________ > 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 Sun Apr 6 02:23:10 2008 From: kirby.urner at gmail.com (kirby urner) Date: Sat, 5 Apr 2008 17:23:10 -0700 Subject: [Edu-sig] College Board Cuts CS AP In-Reply-To: <47F816EE.6040800@canterburyschool.org> References: <47F816EE.6040800@canterburyschool.org> Message-ID: What I've heard is in Oregon the state schools don't honor or accept any AP CS deal. It's an opt out scheme after all. However, nearby Utah does accept it, so you have a lot of wannabes avidly learning Java to get ahead in the Utah scene somehow. Interesting ecology. Kirby On Sat, Apr 5, 2008 at 5:18 PM, Vern Ceder wrote: > Actually only the AB CS exam is being cut - it's the more advanced of > the two, trying to do some things with advanced data structures and > algorithms. The A version of the CS exam remains and will be > strengthened, according to the email sent to AP CS teachers. > > The problem with the AB exam as I understand it was that it was too much > for a year of HS in a lot of porograms, but not enough for credit for an > extra semester of college credit. > > Cheers, > Vern > > > > Jonah Bossewitch wrote: > > http://www.washingtonpost.com/wp-dyn/content/story/2008/04/03/ > > ST2008040303977.html > > > > Pretty disheartening considering the declining interest in CS > > majors.... so much for switching to python on the AP exam. Even java > > is better than no AP (mostly ;-) ) > > > > /jsb > > _______________________________________________ > > 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 > > > _______________________________________________ > Edu-sig mailing list > Edu-sig at python.org > http://mail.python.org/mailman/listinfo/edu-sig > From vceder at canterburyschool.org Sun Apr 6 02:31:52 2008 From: vceder at canterburyschool.org (Vern Ceder) Date: Sat, 05 Apr 2008 20:31:52 -0400 Subject: [Edu-sig] College Board Cuts CS AP In-Reply-To: References: <47F816EE.6040800@canterburyschool.org> Message-ID: <47F819F8.1080904@canterburyschool.org> Yes, what gets accepted and for what kind of credit is wildly variable from school to school... Even though I've taught it for years, and it's not a *terrible* curriculum, I don't care for the AP much - the very fact that you're driven by an exam tends to deflect you from covering concepts in real depth (and also tends to make you write odd little programs that illustrate the test topics instead of larger projects that do something). My administrators would not be happy to hear me say it, but I wouldn't mind opting out myself... Vern kirby urner wrote: > What I've heard is in Oregon the state schools don't honor or accept any > AP CS deal. It's an opt out scheme after all. However, nearby Utah does > accept it, so you have a lot of wannabes avidly learning Java to get ahead > in the Utah scene somehow. Interesting ecology. > > Kirby > > > On Sat, Apr 5, 2008 at 5:18 PM, Vern Ceder wrote: >> Actually only the AB CS exam is being cut - it's the more advanced of >> the two, trying to do some things with advanced data structures and >> algorithms. The A version of the CS exam remains and will be >> strengthened, according to the email sent to AP CS teachers. >> >> The problem with the AB exam as I understand it was that it was too much >> for a year of HS in a lot of porograms, but not enough for credit for an >> extra semester of college credit. >> >> Cheers, >> Vern >> >> >> >> Jonah Bossewitch wrote: >> > http://www.washingtonpost.com/wp-dyn/content/story/2008/04/03/ >> > ST2008040303977.html >> > >> > Pretty disheartening considering the declining interest in CS >> > majors.... so much for switching to python on the AP exam. Even java >> > is better than no AP (mostly ;-) ) >> > >> > /jsb >> > _______________________________________________ >> > 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 >> >> >> _______________________________________________ >> 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 -- 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 ccosse at gmail.com Sun Apr 6 04:01:43 2008 From: ccosse at gmail.com (=?ISO-8859-1?Q?Charles_Coss=E9?=) Date: Sat, 5 Apr 2008 20:01:43 -0600 Subject: [Edu-sig] College Board Cuts CS AP In-Reply-To: <47F819F8.1080904@canterburyschool.org> References: <47F816EE.6040800@canterburyschool.org> <47F819F8.1080904@canterburyschool.org> Message-ID: I just tried to read the article and it says "unauthorized" on an otherwise white page! -Charles On Sat, Apr 5, 2008 at 6:31 PM, Vern Ceder wrote: > Yes, what gets accepted and for what kind of credit is wildly variable > from school to school... > > Even though I've taught it for years, and it's not a *terrible* > curriculum, I don't care for the AP much - the very fact that you're > driven by an exam tends to deflect you from covering concepts in real > depth (and also tends to make you write odd little programs that > illustrate the test topics instead of larger projects that do > something). My administrators would not be happy to hear me say it, but > I wouldn't mind opting out myself... > > Vern > > kirby urner wrote: > > What I've heard is in Oregon the state schools don't honor or accept any > > AP CS deal. It's an opt out scheme after all. However, nearby Utah > does > > accept it, so you have a lot of wannabes avidly learning Java to get > ahead > > in the Utah scene somehow. Interesting ecology. > > > > Kirby > > > > > > On Sat, Apr 5, 2008 at 5:18 PM, Vern Ceder > wrote: > >> Actually only the AB CS exam is being cut - it's the more advanced of > >> the two, trying to do some things with advanced data structures and > >> algorithms. The A version of the CS exam remains and will be > >> strengthened, according to the email sent to AP CS teachers. > >> > >> The problem with the AB exam as I understand it was that it was too > much > >> for a year of HS in a lot of porograms, but not enough for credit for > an > >> extra semester of college credit. > >> > >> Cheers, > >> Vern > >> > >> > >> > >> Jonah Bossewitch wrote: > >> > http://www.washingtonpost.com/wp-dyn/content/story/2008/04/03/ > >> > ST2008040303977.html > >> > > >> > Pretty disheartening considering the declining interest in CS > >> > majors.... so much for switching to python on the AP exam. Even java > >> > is better than no AP (mostly ;-) ) > >> > > >> > /jsb > >> > _______________________________________________ > >> > 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 > >> > >> > >> _______________________________________________ > >> 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 > > -- > 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 > _______________________________________________ > Edu-sig mailing list > Edu-sig at python.org > http://mail.python.org/mailman/listinfo/edu-sig > -- AsymptopiaSoftware | Software at theLimit www.asymptopia.org -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.python.org/pipermail/edu-sig/attachments/20080405/b95c0311/attachment-0001.htm From vceder at canterburyschool.org Sun Apr 6 04:04:29 2008 From: vceder at canterburyschool.org (Vern Ceder) Date: Sat, 05 Apr 2008 22:04:29 -0400 Subject: [Edu-sig] College Board Cuts CS AP In-Reply-To: References: <47F816EE.6040800@canterburyschool.org> <47F819F8.1080904@canterburyschool.org> Message-ID: <47F82FAD.90905@canterburyschool.org> The link as it came through on the list was broken - you need to add the second line to finish it... http://www.washingtonpost.com/wp-dyn/content/story/2008/04/03/ST2008040303977.html (Let's see if this one makes it through in one piece - if not reassemble manually. ) Vern Charles Coss? wrote: > I just tried to read the article and it says "unauthorized" on an > otherwise white page! > -Charles > > On Sat, Apr 5, 2008 at 6:31 PM, Vern Ceder > wrote: > > Yes, what gets accepted and for what kind of credit is wildly variable > from school to school... > > Even though I've taught it for years, and it's not a *terrible* > curriculum, I don't care for the AP much - the very fact that you're > driven by an exam tends to deflect you from covering concepts in real > depth (and also tends to make you write odd little programs that > illustrate the test topics instead of larger projects that do > something). My administrators would not be happy to hear me say it, but > I wouldn't mind opting out myself... > > Vern > > kirby urner wrote: > > What I've heard is in Oregon the state schools don't honor or > accept any > > AP CS deal. It's an opt out scheme after all. However, nearby > Utah does > > accept it, so you have a lot of wannabes avidly learning Java to > get ahead > > in the Utah scene somehow. Interesting ecology. > > > > Kirby > > > > > > On Sat, Apr 5, 2008 at 5:18 PM, Vern Ceder > > > wrote: > >> Actually only the AB CS exam is being cut - it's the more > advanced of > >> the two, trying to do some things with advanced data structures and > >> algorithms. The A version of the CS exam remains and will be > >> strengthened, according to the email sent to AP CS teachers. > >> > >> The problem with the AB exam as I understand it was that it was > too much > >> for a year of HS in a lot of porograms, but not enough for > credit for an > >> extra semester of college credit. > >> > >> Cheers, > >> Vern > >> > >> > >> > >> Jonah Bossewitch wrote: > >> > http://www.washingtonpost.com/wp-dyn/content/story/2008/04/03/ > >> > ST2008040303977.html > >> > > >> > Pretty disheartening considering the declining interest in CS > >> > majors.... so much for switching to python on the AP exam. > Even java > >> > is better than no AP (mostly ;-) ) > >> > > >> > /jsb > >> > _______________________________________________ > >> > 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 > >> > >> > >> _______________________________________________ > >> 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 > > -- > 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 > _______________________________________________ > Edu-sig mailing list > Edu-sig at python.org > http://mail.python.org/mailman/listinfo/edu-sig > > > > > -- > AsymptopiaSoftware | Software at theLimit > www.asymptopia.org -- 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 ccosse at gmail.com Sun Apr 6 04:19:53 2008 From: ccosse at gmail.com (=?ISO-8859-1?Q?Charles_Coss=E9?=) Date: Sat, 5 Apr 2008 20:19:53 -0600 Subject: [Edu-sig] College Board Cuts CS AP In-Reply-To: <47F82FAD.90905@canterburyschool.org> References: <47F816EE.6040800@canterburyschool.org> <47F819F8.1080904@canterburyschool.org> <47F82FAD.90905@canterburyschool.org> Message-ID: Doh! Sorry :-) On Sat, Apr 5, 2008 at 8:04 PM, Vern Ceder wrote: > The link as it came through on the list was broken - you need to add the > second line to finish it... > > > http://www.washingtonpost.com/wp-dyn/content/story/2008/04/03/ST2008040303977.html > > (Let's see if this one makes it through in one piece - if not reassemble > manually. ) > > Vern > > Charles Coss? wrote: > > I just tried to read the article and it says "unauthorized" on an > > otherwise white page! > > -Charles > > > > On Sat, Apr 5, 2008 at 6:31 PM, Vern Ceder > vceder at canterburyschool.org>> wrote: > > > > Yes, what gets accepted and for what kind of credit is wildly > > variable > > from school to school... > > > > Even though I've taught it for years, and it's not a *terrible* > > curriculum, I don't care for the AP much - the very fact that you're > > driven by an exam tends to deflect you from covering concepts in real > > depth (and also tends to make you write odd little programs that > > illustrate the test topics instead of larger projects that do > > something). My administrators would not be happy to hear me say it, > > but > > I wouldn't mind opting out myself... > > > > Vern > > > > kirby urner wrote: > > > What I've heard is in Oregon the state schools don't honor or > > accept any > > > AP CS deal. It's an opt out scheme after all. However, nearby > > Utah does > > > accept it, so you have a lot of wannabes avidly learning Java to > > get ahead > > > in the Utah scene somehow. Interesting ecology. > > > > > > Kirby > > > > > > > > > On Sat, Apr 5, 2008 at 5:18 PM, Vern Ceder > > > > > wrote: > > >> Actually only the AB CS exam is being cut - it's the more > > advanced of > > >> the two, trying to do some things with advanced data structures > > and > > >> algorithms. The A version of the CS exam remains and will be > > >> strengthened, according to the email sent to AP CS teachers. > > >> > > >> The problem with the AB exam as I understand it was that it was > > too much > > >> for a year of HS in a lot of porograms, but not enough for > > credit for an > > >> extra semester of college credit. > > >> > > >> Cheers, > > >> Vern > > >> > > >> > > >> > > >> Jonah Bossewitch wrote: > > >> > http://www.washingtonpost.com/wp-dyn/content/story/2008/04/03/ > > >> > ST2008040303977.html > > >> > > > >> > Pretty disheartening considering the declining interest in CS > > >> > majors.... so much for switching to python on the AP exam. > > Even java > > >> > is better than no AP (mostly ;-) ) > > >> > > > >> > /jsb > > >> > _______________________________________________ > > >> > 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 > > >> > > >> > > >> _______________________________________________ > > >> 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 > > > > -- > > 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 > > _______________________________________________ > > Edu-sig mailing list > > Edu-sig at python.org > > http://mail.python.org/mailman/listinfo/edu-sig > > > > > > > > > > -- > > AsymptopiaSoftware | Software at theLimit > > www.asymptopia.org > > > > -- > 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 > -- AsymptopiaSoftware | Software at theLimit www.asymptopia.org -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.python.org/pipermail/edu-sig/attachments/20080405/f8f72f24/attachment.htm From kirby.urner at gmail.com Sun Apr 6 04:26:43 2008 From: kirby.urner at gmail.com (kirby urner) Date: Sat, 5 Apr 2008 19:26:43 -0700 Subject: [Edu-sig] College Board Cuts CS AP In-Reply-To: <47F82FAD.90905@canterburyschool.org> References: <47F816EE.6040800@canterburyschool.org> <47F819F8.1080904@canterburyschool.org> <47F82FAD.90905@canterburyschool.org> Message-ID: Interesting: """ The courses being cut -- Italian, Latin literature, French literature and computer science AB -- are among the least popular in the AP portfolio. """ Consider in light of presentations by Robert Lefkowitz (OSCON etc.) re programming as part of the new rhetoric of the 21st century (the logical part, subsumes boolean, becomes the lingua franca for sharing anticipatory "what if" models (simulations), just as the I Ching influenced Leibniz suggested might happen (Ada too). Looking back, we just needed to get over Artificial Intelligence ("AI"), the bogus dogma that human intelligence needed to be superseded by supercomputers. Vannevar Bush's MEMEX in reality turned out to be a cell-silicon hybrid, not just Google-the-hardware (i.e. the networking effects of individual humans remains critical, and not just to advertisers). Anyway, I'm happy to see the old order crumbling, giving us some more breathing room, a chance to start over from scratch in some ways. Portland public schools are even now forging new alliances with state academies, AP or no AP (AP is out of ETS in New Jersey right?). Plus now that some of us are phasing in programming as a standard math lab activity, it's hardly necessary to keep this older approach to college prep alive. Kids will be learning Python simply as a consequence of needing to learn math concepts -- in some schools (we're not mandating, just noting we already have that freedom under state law, in Alaska too). Related blog post: http://worldgame.blogspot.com/2008/04/national-standards.html Kirby On Sat, Apr 5, 2008 at 7:04 PM, Vern Ceder wrote: > The link as it came through on the list was broken - you need to add the > second line to finish it... > > > > http://www.washingtonpost.com/wp-dyn/content/story/2008/04/03/ST2008040303977.html > > (Let's see if this one makes it through in one piece - if not reassemble > manually. ) > > Vern From kirby.urner at gmail.com Sun Apr 6 19:36:50 2008 From: kirby.urner at gmail.com (kirby urner) Date: Sun, 6 Apr 2008 10:36:50 -0700 Subject: [Edu-sig] Unicode made easy: another recreational example Message-ID: I put the code I was demoing at Wanderers, (see recent blog post **), at the URL below: http://www.4dsolutions.net/ocn/python/iching.py If you want to see the Chinese characters, set your browser to Unicode -- has to be done manually because this Python module has none of the XHTML stuff that'd cue today's models. Presuming you have a compatible font installed, you'll see even the trigrams appear in quoted strings. That's it though. I'm sticking with Latin-1 for unquoted names so I'm guessing this'd technically meet the Standard Library compatibility test no? Nothing you couldn't already do in 2.5, but this implementation is definitely cleaner. All that stuff about coin tossing, even/odd is from Glenn (a friend and student of the relevant literature). Another design I use, for bridging to spatial geometry, is (+A and -A) = 2 = even, while (+B or -B) = 1 = odd, and AAB creates the value 3 MITE, the beginning of "number" in the I Ching namespace, with 2 and 1 regarded as primitive yinyang generators, and the MITE being a particular space-filling shape I blog about, define as a Python class in some modules (my students know about MITEs, that A & B are likewise shape names). Kirby 4D ** http://worldgame.blogspot.com/2008/04/wanderers-200841.html From GGraham at cistercian.org Mon Apr 7 18:22:42 2008 From: GGraham at cistercian.org (Greg Graham) Date: Mon, 7 Apr 2008 11:22:42 -0500 Subject: [Edu-sig] College Board Cuts CS AP In-Reply-To: References: <47F816EE.6040800@canterburyschool.org><47F819F8.1080904@canterburyschool.org><47F82FAD.90905@canterburyschool.org> Message-ID: <4B07785C52C78449A6C036FB2F69BEBD0320B746@server1.cistercian.com> I already sent this to Kirby thinking it was going to the whole list... I am new in education, coming out of the software development industry. The school I'm at used to offer a Java programming class to prepare students for taking the CS AP. I was asked to teach the class for this semester, but it turned out that the class didn't make. It seems that a combination of me being an unknown quantity (I started at the school last October), and the course not sounding very exciting compared to the other electives, led to no one registering for it. I'm somewhat glad because I wasn't that excited by the material either. (Java is ok, but I find it a little tedious and boring now that I'm using Python.) Since we have a lot of freedom with our electives here, I'm going to offer an elective for the fall that will be computer game programming with Python and PyGame. I think the topic will not only encourage boys to register for the class, but my hope is they will have a desire to master programming so that they can create some good games, and will learn a lot more than they would in the AP curriculum. They may not know the Java syntax required to pass the AP, but I think they will have a better conceptual knowledge of the computer and problem solving, which will help them in Computer Science or most any other pursuit. Our Headmaster likes the idea and thinks it will be a popular class. I will let the group know how the class goes next year. Greg P. S. Kirby recommended I look at GameMaker because PyGame is rather low-level, so I will check it out too. -----Original Message----- From: edu-sig-bounces at python.org [mailto:edu-sig-bounces at python.org] On Behalf Of kirby urner Sent: Saturday, April 05, 2008 9:27 PM To: edu-sig at python.org Subject: Re: [Edu-sig] College Board Cuts CS AP Interesting: """ The courses being cut -- Italian, Latin literature, French literature and computer science AB -- are among the least popular in the AP portfolio. """ Consider in light of presentations by Robert Lefkowitz (OSCON etc.) re programming as part of the new rhetoric of the 21st century (the logical part, subsumes boolean, becomes the lingua franca for sharing anticipatory "what if" models (simulations), just as the I Ching influenced Leibniz suggested might happen (Ada too). Looking back, we just needed to get over Artificial Intelligence ("AI"), the bogus dogma that human intelligence needed to be superseded by supercomputers. Vannevar Bush's MEMEX in reality turned out to be a cell-silicon hybrid, not just Google-the-hardware (i.e. the networking effects of individual humans remains critical, and not just to advertisers). Anyway, I'm happy to see the old order crumbling, giving us some more breathing room, a chance to start over from scratch in some ways. Portland public schools are even now forging new alliances with state academies, AP or no AP (AP is out of ETS in New Jersey right?). Plus now that some of us are phasing in programming as a standard math lab activity, it's hardly necessary to keep this older approach to college prep alive. Kids will be learning Python simply as a consequence of needing to learn math concepts -- in some schools (we're not mandating, just noting we already have that freedom under state law, in Alaska too). Related blog post: http://worldgame.blogspot.com/2008/04/national-standards.html Kirby On Sat, Apr 5, 2008 at 7:04 PM, Vern Ceder wrote: > The link as it came through on the list was broken - you need to add the > second line to finish it... > > > > http://www.washingtonpost.com/wp-dyn/content/story/2008/04/03/ST20080403 03977.html > > (Let's see if this one makes it through in one piece - if not reassemble > manually. ) > > Vern _______________________________________________ Edu-sig mailing list Edu-sig at python.org http://mail.python.org/mailman/listinfo/edu-sig From andre.roberge at gmail.com Tue Apr 8 22:08:38 2008 From: andre.roberge at gmail.com (Andre Roberge) Date: Tue, 8 Apr 2008 17:08:38 -0300 Subject: [Edu-sig] Using Python 3.0 for teaching Message-ID: <7528bcdd0804081308x35f702c4q6c8bf851dc4ddaa7@mail.gmail.com> There is an interesting paper about using Python 3.0 to teach programming: http://www.comp.leeds.ac.uk/nde/papers/teachpy3.html Andr? From kirby.urner at gmail.com Mon Apr 14 23:48:13 2008 From: kirby.urner at gmail.com (kirby urner) Date: Mon, 14 Apr 2008 14:48:13 -0700 Subject: [Edu-sig] Rambles from PDX/4D Message-ID: Programming in Python, aka Pythonic Math 8629, is a go for this spring, so I'm gearing up again, dunno how much I'll blog of this one, having done semi-exhaustive retrospectives a few times already.[1][2] Intersection with UK version of Math Wars at Pycon was fun, still writing little modules around Cuisenaires, some early source code, once you've got your feet wet with the rods, fractions, other age-appropriate materials, e.g. Peter Pan, Over the Hedge, Flushed Away... Narnia, or in our household, Spirited Away (a big hit).[3] Currently working on contrasting bare CGI versus the newer XMLhttpResponse approach, first intro'd by BigSoftie in ActiveX, since standardized to non-ActiveX browsers. Using I Ching again, in keeping with newsy themes (olympics etc. -- mostly about Unicode). None of this is new material, just wanting to contribute my share to the literature. Trucked the XO to my native Quaker habitat recently, where we have our measure of geeks in training, both XX and XY.[4] Some overlap twixt my SA: and these gnubees sometimes. Had a good meeting of PPUG.[5] A funny moment was when this slender newcomer wanted the Pycon swag Jason was being so generous with, but our default T-shirt sizes start at size L (with no upper limit?). An occupational hazard, and a bias we should work on. Standing workstations make sense, even if not on a tredmill. Or the idea for a leaden mouse might be good (heavy like, not saying made of element Pb, which could be a health hazard). I've been watching Pycon Youtubes, not just this year's. What I suggested on the Europython list is maybe focusing on getting speakers their audio tracks, as so often the cameras are unmanned and don't track, plus even if they do, slides come across better if added later, spliced with live video track.[6] Kirby 4D [1] http://saturdayacademy.org/ [2] http://worldgame.blogspot.com/2006/11/more-pythonic-mathematics.html [3] http://controlroom.blogspot.com/2008/03/disambiguation.html [4] http://worldgame.blogspot.com/2008/04/quaker-spectrum.html [5] http://controlroom.blogspot.com/2008/04/ppug-200848.html [6] http://mail.python.org/pipermail/europython/2008-April/006772.html From kirby.urner at gmail.com Sun Apr 20 16:53:16 2008 From: kirby.urner at gmail.com (kirby urner) Date: Sun, 20 Apr 2008 07:53:16 -0700 Subject: [Edu-sig] Rambles from PDX/4D In-Reply-To: References: Message-ID: On Mon, Apr 14, 2008 at 2:48 PM, kirby urner wrote: > Programming in Python, aka Pythonic Math 8629, is a go for > this spring, so I'm gearing up again, dunno how much I'll blog > of this one, having done semi-exhaustive retrospectives a few > times already.[1][2] I blogged about it a little, more comments here: http://mail.geneseo.edu/pipermail/math-thinking-l/2008-April/001247.html Kirby From jbloodworth at sc.rr.com Sun Apr 20 17:21:50 2008 From: jbloodworth at sc.rr.com (Jay Bloodworth) Date: Sun, 20 Apr 2008 11:21:50 -0400 Subject: [Edu-sig] Self Study for Kids Message-ID: <1208704910.3242.134.camel@localhost.localdomain> Anybody know any good self study resources for kids interested in learning programming, pythonic or otherwise? The kid(s) in question are 12-14. Jay From iman.darabi at gmail.com Sun Apr 20 18:36:44 2008 From: iman.darabi at gmail.com (Iman Darabi) Date: Sun, 20 Apr 2008 20:06:44 +0330 Subject: [Edu-sig] Self Study for Kids In-Reply-To: <1208704910.3242.134.camel@localhost.localdomain> References: <1208704910.3242.134.camel@localhost.localdomain> Message-ID: <87f58ae10804200936x33e8015bwdfd51345f2ed65c6@mail.gmail.com> take a look at it : http://www.computer-books.us/python_0003.php On Sun, Apr 20, 2008 at 6:51 PM, Jay Bloodworth wrote: > Anybody know any good self study resources for kids interested in > learning programming, pythonic or otherwise? The kid(s) in question are > 12-14. > > Jay > > _______________________________________________ > Edu-sig mailing list > Edu-sig at python.org > http://mail.python.org/mailman/listinfo/edu-sig > -- Nothing but perfection blog : http://darabi.wordpress.com/ web : http://iman.darabi.googlepages.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.python.org/pipermail/edu-sig/attachments/20080420/df8084d0/attachment.htm From jasonrbriggs at gmail.com Sun Apr 20 20:49:09 2008 From: jasonrbriggs at gmail.com (Jason R Briggs) Date: Sun, 20 Apr 2008 19:49:09 +0100 Subject: [Edu-sig] Self Study for Kids In-Reply-To: <1208704910.3242.134.camel@localhost.localdomain> References: <1208704910.3242.134.camel@localhost.localdomain> Message-ID: <480B9025.10009@gmail.com> Probably a bit young for 12-14 year olds, but it covers the basics: http://www.briggs.net.nz/log/writing/snake-wrangling-for-kids/ Jay Bloodworth wrote: > Anybody know any good self study resources for kids interested in > learning programming, pythonic or otherwise? The kid(s) in question are > 12-14. > > Jay > > _______________________________________________ > Edu-sig mailing list > Edu-sig at python.org > http://mail.python.org/mailman/listinfo/edu-sig > > From roberto03 at gmail.com Mon Apr 21 12:50:12 2008 From: roberto03 at gmail.com (roberto) Date: Mon, 21 Apr 2008 12:50:12 +0200 Subject: [Edu-sig] Self Study for Kids In-Reply-To: <87f58ae10804200936x33e8015bwdfd51345f2ed65c6@mail.gmail.com> References: <1208704910.3242.134.camel@localhost.localdomain> <87f58ae10804200936x33e8015bwdfd51345f2ed65c6@mail.gmail.com> Message-ID: <4bcde3e10804210350r1106dd13scaee364c68d348b8@mail.gmail.com> On 4/20/08, Iman Darabi wrote: > take a look at it : > http://www.computer-books.us/python_0003.php sorry, but this seems not to working at the moment ... > > > On Sun, Apr 20, 2008 at 6:51 PM, Jay Bloodworth > wrote: > > > Anybody know any good self study resources for kids interested in > > learning programming, pythonic or otherwise? The kid(s) in question are > > 12-14. > > > > Jay > > > > _______________________________________________ > > Edu-sig mailing list > > Edu-sig at python.org > > http://mail.python.org/mailman/listinfo/edu-sig > > > > > > -- > Nothing but perfection > blog : http://darabi.wordpress.com/ > web : http://iman.darabi.googlepages.com/ > _______________________________________________ > Edu-sig mailing list > Edu-sig at python.org > http://mail.python.org/mailman/listinfo/edu-sig > > -- roberto OS: GNU/Linux, Debian From iman.darabi at gmail.com Mon Apr 21 20:23:04 2008 From: iman.darabi at gmail.com (Iman Darabi) Date: Mon, 21 Apr 2008 21:53:04 +0330 Subject: [Edu-sig] Self Study for Kids In-Reply-To: <4bcde3e10804210350r1106dd13scaee364c68d348b8@mail.gmail.com> References: <1208704910.3242.134.camel@localhost.localdomain> <87f58ae10804200936x33e8015bwdfd51345f2ed65c6@mail.gmail.com> <4bcde3e10804210350r1106dd13scaee364c68d348b8@mail.gmail.com> Message-ID: <87f58ae10804211123x6dd72a7en642571694f5bf6cd@mail.gmail.com> On Mon, Apr 21, 2008 at 2:20 PM, roberto wrote: > On 4/20/08, Iman Darabi wrote: > > take a look at it : > > http://www.computer-books.us/python_0003.php > sorry, but this seems not to working at the moment ... so try this link ( tested and it's ok ) , as i remember this link is home page of the book too http://www.greenteapress.com/thinkpython/ > > > > On Sun, Apr 20, 2008 at 6:51 PM, Jay Bloodworth > > wrote: > > > > > Anybody know any good self study resources for kids interested in > > > learning programming, pythonic or otherwise? The kid(s) in question > are > > > 12-14. > > > > > > Jay > > > > > > _______________________________________________ > > > Edu-sig mailing list > > > Edu-sig at python.org > > > http://mail.python.org/mailman/listinfo/edu-sig > > > > > > > > > > > -- > > Nothing but perfection > > blog : http://darabi.wordpress.com/ > > web : http://iman.darabi.googlepages.com/ > > _______________________________________________ > > Edu-sig mailing list > > Edu-sig at python.org > > http://mail.python.org/mailman/listinfo/edu-sig > > > > > > > -- > roberto > OS: GNU/Linux, Debian > _______________________________________________ > Edu-sig mailing list > Edu-sig at python.org > http://mail.python.org/mailman/listinfo/edu-sig > -- Nothing but perfection blog : http://darabi.wordpress.com/ web : http://iman.darabi.googlepages.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.python.org/pipermail/edu-sig/attachments/20080421/b6c381c8/attachment.htm From kirby.urner at gmail.com Tue Apr 22 01:59:08 2008 From: kirby.urner at gmail.com (kirby urner) Date: Mon, 21 Apr 2008 16:59:08 -0700 Subject: [Edu-sig] Considering Idioms Message-ID: Dylan and I had some interesting chatter on the PPUG list (formerly PORPIG), regarding what I advanced as the David Goodger thesis (based on last year's OSCON tutorial), that it's more idiomatic to say "for e in thedict:" than "for e in thedict.keys():" The reasoning here (as I understood it) is thedict is an iterable and so has a __next__, meaning we don't need to flag it as anything special with the keys() modifier, i.e. stick with a more generic syntax to where the reader is just thinking "iterable" and not "dictionary" per se. Dylan points out that you might want to clue the reader that dictionaries are a special kind of iterable in having no specific sequence i.e. you can't get at its successive keys with integer subscripting, unlike with lists, tuples, and strings. Importantly, then, the concept of "iterable" is such that we may have no way of "jumping ahead" i.e. we can go next, next, next, but there's no way to subscript i.e. bypass the intermediate steps, to get to some distant element in the iteration. We have this in mathematics a lot: sequences with clear rules for getting the next one, but no closed form expression for getting the nth, short of computing all intermediate steps (cellular automata studies furnish any number of examples). Kirby ** http://mail.python.org/pipermail/portland/2008-April/000327.html From kirby.urner at gmail.com Tue Apr 22 02:12:04 2008 From: kirby.urner at gmail.com (kirby urner) Date: Mon, 21 Apr 2008 17:12:04 -0700 Subject: [Edu-sig] Considering Idioms In-Reply-To: References: Message-ID: On Mon, Apr 21, 2008 at 4:59 PM, kirby urner wrote: << SNIP >> > The reasoning here (as I understood it) is thedict is an > iterable and so has a __next__, meaning we don't need > to flag it as anything special with the keys() modifier, i.e. > stick with a more generic syntax to where the reader is > just thinking "iterable" and not "dictionary" per se. Note that in 2.x there's no __next__ method per se i.e. no under-under "rib" (special name). This changed with PEP 3114: http://www.python.org/dev/peps/pep-3114/ Kirby From asweigart at gmail.com Tue Apr 22 02:21:01 2008 From: asweigart at gmail.com (Albert Sweigart) Date: Mon, 21 Apr 2008 17:21:01 -0700 Subject: [Edu-sig] Self Study for Kids Message-ID: <716dd5b60804211721j5f805ed9w66d8d59fa5eaa989@mail.gmail.com> Jay, I am also writing a book on game programming in Python aimed at 10-12 year olds. The title is "Invent Your Own Computer Games with Python" and it is nearing completion. (All the source code is there, and only the last chapter needs writing, along with general editing.) A complete PDF of the final work should be ready within a couple weeks. http://pythonbook.coffeeghost.net/ Al Sweigart -------------- next part -------------- An HTML attachment was scrubbed... URL: From richskyline at gmail.com Tue Apr 22 02:45:15 2008 From: richskyline at gmail.com (Richard Guenther) Date: Mon, 21 Apr 2008 18:45:15 -0600 Subject: [Edu-sig] Self Study for Kids In-Reply-To: References: <1208704910.3242.134.camel@localhost.localdomain> <87f58ae10804200936x33e8015bwdfd51345f2ed65c6@mail.gmail.com> <4bcde3e10804210350r1106dd13scaee364c68d348b8@mail.gmail.com> <87f58ae10804211123x6dd72a7en642571694f5bf6cd@mail.gmail.com> Message-ID: 2008/4/21 Iman Darabi : > > > On Mon, Apr 21, 2008 at 2:20 PM, roberto wrote: > > > On 4/20/08, Iman Darabi wrote: > > > take a look at it : > > > http://www.computer-books.us/python_0003.php > > sorry, but this seems not to working at the moment ... > > so try this link ( tested and it's ok ) , as i remember this link is home > page of the book too > http://www.greenteapress.com/thinkpython/ > > What you've linked to is the new edition of the "How to Think Like A Computer Scientist" Python book by Allen Downey--a book that I'll be using in an introductory programming class. Jeffry Elkner is also working on a "different" new version of that book: http://openbookproject.net/thinkCSpy/index.xhtml It's interesting to compare the two new versions. Richard -- coldfrontramblings.blogspot.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From aharrin at luc.edu Fri Apr 25 04:29:12 2008 From: aharrin at luc.edu (Andrew Harrington) Date: Thu, 24 Apr 2008 21:29:12 -0500 Subject: [Edu-sig] Self Study for Kids In-Reply-To: <1208704910.3242.134.camel@localhost.localdomain> References: <1208704910.3242.134.camel@localhost.localdomain> Message-ID: Jay, You can try my Hands-on Python Tutorial. http://cs.luc.edu/anh/python/hands-on It would work for high school students and possibly middle school, too. Not the kid-laugh lines of Snake-Wrangling. The tutorial setup is good for self-study. Andy On Sun, Apr 20, 2008 at 10:21 AM, Jay Bloodworth wrote: > Anybody know any good self study resources for kids interested in > learning programming, pythonic or otherwise? The kid(s) in question are > 12-14. > > Jay > > -- Andrew N. Harrington Director of Academic Programs Computer Science Department Loyola University Chicago 512B Lewis Towers (office) Snail mail to Lewis Towers 416 820 North Michigan Avenue Chicago, Illinois 60611 http://www.cs.luc.edu/~anh Phone: 312-915-7982 Fax: 312-915-7998 gdp at cs.luc.edu for graduate administration upd at cs.luc.edu for undergrad administration aharrin at luc.edu as professor -------------- next part -------------- An HTML attachment was scrubbed... URL: From csev at umich.edu Fri Apr 25 14:49:14 2008 From: csev at umich.edu (csev) Date: Fri, 25 Apr 2008 08:49:14 -0400 Subject: [Edu-sig] Question about Python - Social Networking Software Message-ID: <9AE86D74-0FD0-4654-8A46-23890A97FFD9@umich.edu> I am looking for some social networking software for a course I am teaching next winter. I would love for it to be Python. In PHP - something like Elgg would be great. It needs a Wiki, Blog, RSS feeds, etc etc. Should I just use DJango with a few modules? I worry that DJango is too much of a Mambo-clone - I want something that is user-centered (student centered) - not organization centered. Something with good access controls - with the ability to have closed groups - would be a nice feature. Thanks. Charles Severance University of Michigan From krstic at solarsail.hcs.harvard.edu Fri Apr 25 15:26:58 2008 From: krstic at solarsail.hcs.harvard.edu (=?UTF-8?Q?Ivan_Krsti=C4=87?=) Date: Fri, 25 Apr 2008 09:26:58 -0400 Subject: [Edu-sig] Question about Python - Social Networking Software In-Reply-To: <9AE86D74-0FD0-4654-8A46-23890A97FFD9@umich.edu> References: <9AE86D74-0FD0-4654-8A46-23890A97FFD9@umich.edu> Message-ID: <389C0BAA-4521-449C-A952-C403F9EDF31A@solarsail.hcs.harvard.edu> On Apr 25, 2008, at 8:49 AM, csev wrote: > Should I just use DJango with a few modules? I worry that DJango is > too much of a Mambo-clone Mambo is a content management system. Django is a framework for writing web applications with particularly nice support for writing content management systems. You're confusing the two; you can't just "use Django". I recommend looking at something like Plone (). -- Ivan Krsti? | http://radian.org From lac at openend.se Sat Apr 26 06:39:44 2008 From: lac at openend.se (Laura Creighton) Date: Sat, 26 Apr 2008 06:39:44 +0200 Subject: [Edu-sig] Question about Python - Social Networking Software In-Reply-To: Message from =?UTF-8?Q?Ivan_Krsti=C4=87?= of "Fri, 25 Apr 2008 09:26:58 EDT." <389C0BAA-4521-449C-A952-C403F9EDF31A@solarsail.hcs.harvard.edu> References: <9AE86D74-0FD0-4654-8A46-23890A97FFD9@umich.edu> <389C0BAA-4521-449C-A952-C403F9EDF31A@solarsail.hcs.harvard.edu> Message-ID: <200804260439.m3Q4dinh009696@theraft.openend.se> In a message of Fri, 25 Apr 2008 09:26:58 EDT, =?UTF-8?Q?Ivan_Krsti=C4=87?= writ es: >On Apr 25, 2008, at 8:49 AM, csev wrote: >> Should I just use DJango with a few modules? I worry that DJango is >> too much of a Mambo-clone > >Mambo is a content management system. Django is a framework for >writing web applications with particularly nice support for writing >content management systems. You're confusing the two; you can't just >"use Django". I recommend looking at something like Plone (org/ > >). > >-- >Ivan Krsti?? | http://radian.org But Plone, like all content managment systems which use the 'publish/approve' method are organisation-centred. So you might be happier just using a wiki such as moinmoin. http://moinmo.in/ Laura Creighton From kirby.urner at gmail.com Sun Apr 27 02:30:50 2008 From: kirby.urner at gmail.com (kirby urner) Date: Sat, 26 Apr 2008 17:30:50 -0700 Subject: [Edu-sig] SA 8629 day 2 Message-ID: Plug for VPython in today's write-up (a YouTube): http://controlroom.blogspot.com/2008/04/sa-classnotes-2008426.html Kirby From roberto03 at gmail.com Sun Apr 27 11:36:18 2008 From: roberto03 at gmail.com (roberto) Date: Sun, 27 Apr 2008 11:36:18 +0200 Subject: [Edu-sig] Self Study for Kids In-Reply-To: <716dd5b60804211721j5f805ed9w66d8d59fa5eaa989@mail.gmail.com> References: <716dd5b60804211721j5f805ed9w66d8d59fa5eaa989@mail.gmail.com> Message-ID: <4bcde3e10804270236m3aa8055ema43cdbb21c5514fe@mail.gmail.com> 2008/4/22 Albert Sweigart : > Jay, > > I am also writing a book on game programming in Python aimed at 10-12 year > olds. The title is "Invent Your Own Computer Games with Python" and it is > nearing completion. (All the source code is there, and only the last chapter > needs writing, along with general editing.) A complete PDF of the final work > should be ready within a couple weeks. > > http://pythonbook.coffeeghost.net/ please, let us know when the final version is ready thank you > > Al Sweigart > > _______________________________________________ > Edu-sig mailing list > Edu-sig at python.org > http://mail.python.org/mailman/listinfo/edu-sig > > -- roberto OS: GNU/Linux, Debian From kirby.urner at gmail.com Sun Apr 27 21:23:55 2008 From: kirby.urner at gmail.com (kirby urner) Date: Sun, 27 Apr 2008 12:23:55 -0700 Subject: [Edu-sig] more thoughts about Python pedagogy (pyPed) Message-ID: So to reintroduce myself to some of you newer subscribers, I was a high school math teacher in a Dominican run school in Jersey City, before entering a career of mostly NGO work, as a programmer on the front lines (xBase). Python started as a hobby interest, connected with geometry studies, only became a part of my income stream toolkit much later in the game (many stories). I live in Portland, Oregon and am a veteran of the OSCON, PyCon and EuroPython speaker circuit, with a lot of that stuff archived and easily accessible if you want to email me for links. My current practice is to follow Saxon, one of the popular math text book authors, in using a spiraling approach, meaning we cover data structures, functions, and classes the first day, but not exhaustively in any "silo" (they all go very deep as we know from experience). So like strings and lists, dabble in the shell, def a couple simple functions like from algebra class (these kids are all taking traditional math sequence), then do my Biotum, one of the simplest types possible that can still eat and divide (using copy module). Then on like a second pass, we'd add dictionary to data structures, default args to functions, more methods to a simple class. On a third pass, sets as data structures (a bridge to discussing concept of "immutability" thence on to tuples as a kind of list that will work as a dictionary key -- starting to tie it all together here), start with the *kw, **kwarg stuff inside the function mouth f( ), and finally bridge to inheritance (Monkey and Dog as subclasses of Mammal (object), the subclasses distinct as to __repr__ only -- __init__ at Mammal level only, simple assignment of a moniker i.e. self.name = name). So that's the Saxon idea of a spiral: data structures; functions; classes each time, but also a little deeper each time. The goal is for concepts to gain traction by being immediately *used* in a next context (something Wayne and I were yakking about on Math Forum recently). We introduce vectors only to use them in a next lesson, as constituents of polyhedra. Or I'll start with polyhedra as my primitive objects and get to vectors only secondarily, as constituents of an Edge class. I believe in teacher discretion in these matters, as a best judge of hers or his own students and teaching abilities. I keep blogs, still use xBase for a living, mostly in hospital work (having SQL embedded right in the native syntax is like bread and butter for me, not saying Python isn't good at it), have hung out on edu-sig here since its inception, lots of fun dialogs, got us a PhD thesis focused on us 'n everything (collective blush) **. I think it'd be unsurprising that Python has a dynamic core list focused on education, given all the focus and interest on improving curricula these days. I definitely think the open source languages, combined with low cost hardware, is in the process of revolutionizing the classroom once again, to the lasting improvement of the student experience, teacher as well. Kirby 4dsolutions.net ** PROMOTING COMPUTER LITERACY THROUGH PROGRAMMING PYTHON by John Alexander Miller A dissertation submitted in partial fulfillment of the requirements for the degree of Doctor of Philosophy (Education) in The University of Michigan 2004 Doctoral Committee: Professor Frederick Goodman, Chair Emeritus Professor Carl Berger Professor Jay Lemke Professor John Swales http://www.python.org/files/miller-dissertation.pdf