CP4E VideoPython learning to teatch / teaching to learn ..[xpost: was {'cpl',"don't laugh"}]
![](https://secure.gravatar.com/avatar/116b2302735c5490ff30531d24838510.jpg?s=120&d=mm&r=g)
Hello everyone At Guido's suggestion, I am forwarding this rather impassioned reply-post I made to a recent thread on comp.lang.python. I have also just now subscribed to Edu-sig@python.org I have been following CP4E at a distance since I first heard about it and look forwards to sharing skills, ideas and inspiration together.. - Jason ________________________________________________________________ Jason CUNLIFFE = NOMADICS.(Interactive Art and Technology).Design Director ............................................................................ .................................................... Ken Mossman <K.Mossman@adb.com.ph> wrote in message news:8oi3s4$8km$1@nobel2.pacific.net.sg...
I have some JUNIOR staff and they are asking if there any CBT or multi-media courses for Python
They are NEWBIES !!
Hello. This is long post because you touched a nerve here... I am not only laughing, but crying too - at you folks for not appreciating what a good question this really is! In fact I am wondering if in part this does not get at the heart of CP4E [computer programming for everyone]..or what is missing in that regard.. Personally I would love to spend a couple of hours sitting next to an experienced Python programmer who could show for example the process of putting to together a program, testing it, shaping, how they react to error messages, how they sculpt the code, how they might look at the problem a couple of ways, how they use the tools, how many windows open, what they look at.. the real-world rhythm of a few hours in the life of a python program.. even better if this was intelligently structured and re-playable with examples. It would be nice to have a human being talk and type me through some code. Yes there is no substitute for hands-on learning doing. But there is no substitute for great teachers either! And since we don t have the joys of python class in school or at our corner adult-education center, we go to the web and read and download and hack explore till hopefully it clicks. Some experienced folks can transfer their previous learning fast, but for others who may have no experience or com from another background, the first steps are very important.. But consider for example what happens when you open a high powered version 9 piece of multimedia or 3d.modelling.animation software.. How many of your here would last 15 minutes before a deep and overwhelming sense of drowning mingled with your wide-eyed ambition and fascination. But try to get something done... Ok so you get your hands on 1 hour video which shows you the basic features, some examples and give you a reasonable grasp of what it the rhythm of working and how many times you have click and open, where some shortcuts are etc.. Lord I would love a Python video from the masters at work and play. In any field there are rare few people who _really_ understand it, and even rarer are the ones who can teach it. Python seems easy, well documented, has a great community etc.. and it does. But fundamentally all the source code in the world does not help one understand the process of programming. It does not show a newbie what to do with all those modules and definitions after your put them under your pillow! [http://www.python.org/doc/current/lib/lib.html] Would someone just explain what all this stuff is and what are the 20 most important things needed to know to get going..and then put the rest into some context so one understands what to look forwards to. I will give you a very simple few example of the sorts of things which drove me nuts when I first tried to run python on win32 1 - PYTHONPATH... where is this thing and how do I set it [in DOS ?, in Python under some menu, by editing autostart.bat, in some hideous registry sub.sub.sub.location.attribute 2 - The manual says just make this cute 'helloworld.py' example and save it. So you do, but you don't save/drop it into the main python directory [that would be dumb right?] .. no like a good kid you make a nice folder four yourself and put your first examples there. 3 - Now when you do this and go 'import helloworld' you immediately get an informative precise error reply written in Python[Babylonian]! What's with that? For god sakes the newbie default for python should be a: make a folder called 'newbies' and tell newbies to save their scripts there so they WILL run first time b: add an auto-include folder paths python routine which means any folder added to the default installation will be seen and run ok. 4 - You get enthusiastic and a little braver and download some cool package. unzip and put it into you python directory or maybe even somewhere else [god help you poor soul]. Try to import that more errors..arggh. Eventually you find somewhere after scouring the docs and newsgroups a couple of VITAL commands: import sys, os sys.path.append('c:\program files\python\coolnewpackage\') os.chdir('c:\program files\python\coolnewpackage\') os.listdir(os.getcwd()) - And after this there is the problem of packages and how modules behave with namespace voodoo like the difference between import * from somewhere import something from somewhere import * - how to get them work properly - how to deal with the typical top 20 error messages python throws at you in zealous yet Zen-like bliss - What is the relationship of import, os.getcwd(), os.chdir(), '__dir__', '__builtins__', '__doc__', '__name__' to the mysteriously named, ubiquitous, but frequently blank files named __init__.py ??? Can you explain that one to you mother? All the super tools in the world do not help if one does not know how to use them or have a grasp of what they are capable of. IDLE and PythonWin get better all the time, and now we are about to see lots more cool Python on Windows via ActiveState etc. But this only ups the ante for what a great idea it is to make some Python training Videos/DVD/CBT. Go to Barnes and Noble for example, there are precious few python books visible and they are scattered around in odd corners. This is sad but not surprising since the Python booklist has grown well over the past year. I fear the situation may not change much in the future unless there is widespread adoption of Python ++ big marketing push to make it happen like WROX, MS, QuickStart, EASYthisEasyTHAT. Even if a newbie cannot afford the stack of $40+ dollar books VB and others tout, at least they can hang out their for an afternoon and browse and read and scan the range of uses, abuses, approaches and devotions of all those authors. Python is slim but elegantly represented. Yes the online docs are admirable, but believe me there are many beginners who need all the help they can to get going. What are you going to recommend to the nearest 12-year old who is itching to learn some programming? RealBASIC, Python, VB, JavaScript, C, C++, Dflat, Rebol, HTML, DHTML, XML, GML, Lingo, LegoMindstorms... ??? My answer is: 1. Start with Macromedia Flash5 and maybe LegoMindstorms for Xmas 2. And then learn Python... [but what am I going to give them for help?] 3. Then Blender v2.x [gaming version with python scripting http://www.blender.nl] Flash it turns out is a brilliant intro to object-oriented programming and a ton of instant fun for all ages also. The new Flash5 has a real language in it now [ActionScript = Java/ECMAScript syntax] behind a cool multi-dimensional interface and frees humans from most of all the ghastly invisible stuff which object-oriented programming was supposed to.. TEST A: - try making an interface in Flash and then in Tkinter or wxPython or some such..yeooow!@#. the difference is newbie heaven and hell TEST B: - or Next time anyone you know has to make PowerPoint slides, crack open a version of Flash and try that instead. Immediately it makes one think in terms of sequence, rhythm, flow, aesthetics, reusable components.. perfect for presenting ideas and teaching. C'mon - The question I ask you is what would make a good contents for a video, and who here would like to work with me [as camera wielding newbie] to develop some great CBT/Training Videos for Python ? CP4E indeed. Before re-inventing yet another language {RIYAL}, how about first learning how to teach this one? Python is cool, it has some idiosyncrasies. I love it and hope it continues to thrive. regards - Jason ________________________________________________________________ Jason CUNLIFFE = NOMADICS.(Interactive Art and Technology).Design Director
![](https://secure.gravatar.com/avatar/b08df688f454fc153d88f01638c1322b.jpg?s=120&d=mm&r=g)
Hello Jason and EDU-SIG: There are a series of python videos in development through Yorktown High School. Most everything is in the works: director, production equipment, personnel, etc... I am also sending this to the person who is organizing the project, Jeffrey Elkner. Jason Straw Zope Master and Python Programmer Yorktown High School Linux Users' Group Jason Cunliffe wrote:
Hello everyone
At Guido's suggestion, I am forwarding this rather impassioned reply-post I made to a recent thread on comp.lang.python. I have also just now subscribed to Edu-sig@python.org I have been following CP4E at a distance since I first heard about it and look forwards to sharing skills, ideas and inspiration together.. - Jason ________________________________________________________________ Jason CUNLIFFE = NOMADICS.(Interactive Art and Technology).Design Director
............................................................................ .................................................... Ken Mossman <K.Mossman@adb.com.ph> wrote in message news:8oi3s4$8km$1@nobel2.pacific.net.sg...
I have some JUNIOR staff and they are asking if there any CBT or multi-media courses for Python
They are NEWBIES !!
Hello. This is long post because you touched a nerve here...
I am not only laughing, but crying too - at you folks for not appreciating what a good question this really is!
In fact I am wondering if in part this does not get at the heart of CP4E [computer programming for everyone]..or what is missing in that regard..
Personally I would love to spend a couple of hours sitting next to an experienced Python programmer who could show for example the process of putting to together a program, testing it, shaping, how they react to error messages, how they sculpt the code, how they might look at the problem a couple of ways, how they use the tools, how many windows open, what they look at.. the real-world rhythm of a few hours in the life of a python program.. even better if this was intelligently structured and re-playable with examples. It would be nice to have a human being talk and type me through some code.
Yes there is no substitute for hands-on learning doing. But there is no substitute for great teachers either! And since we don t have the joys of python class in school or at our corner adult-education center, we go to the web and read and download and hack explore till hopefully it clicks. Some experienced folks can transfer their previous learning fast, but for others who may have no experience or com from another background, the first steps are very important..
But consider for example what happens when you open a high powered version 9 piece of multimedia or 3d.modelling.animation software.. How many of your here would last 15 minutes before a deep and overwhelming sense of drowning mingled with your wide-eyed ambition and fascination. But try to get something done...
Ok so you get your hands on 1 hour video which shows you the basic features, some examples and give you a reasonable grasp of what it the rhythm of working and how many times you have click and open, where some shortcuts are etc..
Lord I would love a Python video from the masters at work and play. In any field there are rare few people who _really_ understand it, and even rarer are the ones who can teach it. Python seems easy, well documented, has a great community etc.. and it does.
But fundamentally all the source code in the world does not help one understand the process of programming. It does not show a newbie what to do with all those modules and definitions after your put them under your pillow! [http://www.python.org/doc/current/lib/lib.html] Would someone just explain what all this stuff is and what are the 20 most important things needed to know to get going..and then put the rest into some context so one understands what to look forwards to.
I will give you a very simple few example of the sorts of things which drove me nuts when I first tried to run python on win32
1 - PYTHONPATH... where is this thing and how do I set it [in DOS ?, in Python under some menu, by editing autostart.bat, in some hideous registry sub.sub.sub.location.attribute
2 - The manual says just make this cute 'helloworld.py' example and save it. So you do, but you don't save/drop it into the main python directory [that would be dumb right?] .. no like a good kid you make a nice folder four yourself and put your first examples there.
3 - Now when you do this and go 'import helloworld' you immediately get an informative precise error reply written in Python[Babylonian]! What's with that?
For god sakes the newbie default for python should be
a: make a folder called 'newbies' and tell newbies to save their scripts there so they WILL run first time b: add an auto-include folder paths python routine which means any folder added to the default installation will be seen and run ok.
4 - You get enthusiastic and a little braver and download some cool package. unzip and put it into you python directory or maybe even somewhere else [god help you poor soul]. Try to import that more errors..arggh. Eventually you find somewhere after scouring the docs and newsgroups a couple of VITAL commands:
import sys, os sys.path.append('c:\program files\python\coolnewpackage\') os.chdir('c:\program files\python\coolnewpackage\') os.listdir(os.getcwd())
- And after this there is the problem of packages and how modules behave with namespace voodoo like the difference between import * from somewhere import something from somewhere import *
- how to get them work properly - how to deal with the typical top 20 error messages python throws at you in zealous yet Zen-like bliss
- What is the relationship of import, os.getcwd(), os.chdir(), '__dir__', '__builtins__', '__doc__', '__name__' to the mysteriously named, ubiquitous, but frequently blank files named __init__.py ???
Can you explain that one to you mother?
All the super tools in the world do not help if one does not know how to use them or have a grasp of what they are capable of. IDLE and PythonWin get better all the time, and now we are about to see lots more cool Python on Windows via ActiveState etc. But this only ups the ante for what a great idea it is to make some Python training Videos/DVD/CBT.
Go to Barnes and Noble for example, there are precious few python books visible and they are scattered around in odd corners. This is sad but not surprising since the Python booklist has grown well over the past year. I fear the situation may not change much in the future unless there is widespread adoption of Python ++ big marketing push to make it happen like WROX, MS, QuickStart, EASYthisEasyTHAT. Even if a newbie cannot afford the stack of $40+ dollar books VB and others tout, at least they can hang out their for an afternoon and browse and read and scan the range of uses, abuses, approaches and devotions of all those authors. Python is slim but elegantly represented.
Yes the online docs are admirable, but believe me there are many beginners who need all the help they can to get going. What are you going to recommend to the nearest 12-year old who is itching to learn some programming? RealBASIC, Python, VB, JavaScript, C, C++, Dflat, Rebol, HTML, DHTML, XML, GML, Lingo, LegoMindstorms... ???
My answer is: 1. Start with Macromedia Flash5 and maybe LegoMindstorms for Xmas 2. And then learn Python... [but what am I going to give them for help?] 3. Then Blender v2.x [gaming version with python scripting http://www.blender.nl]
Flash it turns out is a brilliant intro to object-oriented programming and a ton of instant fun for all ages also. The new Flash5 has a real language in it now [ActionScript = Java/ECMAScript syntax] behind a cool multi-dimensional interface and frees humans from most of all the ghastly invisible stuff which object-oriented programming was supposed to.. TEST A: - try making an interface in Flash and then in Tkinter or wxPython or some such..yeooow!@#. the difference is newbie heaven and hell TEST B: - or Next time anyone you know has to make PowerPoint slides, crack open a version of Flash and try that instead. Immediately it makes one think in terms of sequence, rhythm, flow, aesthetics, reusable components.. perfect for presenting ideas and teaching.
C'mon - The question I ask you is what would make a good contents for a video, and who here would like to work with me [as camera wielding newbie] to develop some great CBT/Training Videos for Python ?
CP4E indeed. Before re-inventing yet another language {RIYAL}, how about first learning how to teach this one? Python is cool, it has some idiosyncrasies. I love it and hope it continues to thrive. regards - Jason
________________________________________________________________ Jason CUNLIFFE = NOMADICS.(Interactive Art and Technology).Design Director
_______________________________________________ Edu-sig mailing list Edu-sig@python.org http://www.python.org/mailman/listinfo/edu-sig
![](https://secure.gravatar.com/avatar/94b4fff8f879a44af1f18fc5340309d3.jpg?s=120&d=mm&r=g)
Hi Jason -- I have no problem with your impassioned plea for better teaching materials, including multimedia. No laughing matter. Lots of people working on it no doubt. Also thanks for your rave review of Flash5, which I haven't had the time to look into. Sometimes I think what bogs people down is foresaking any knowledge domain and trying to learn the "programming language" as the generic "thing to know". More useful, I think, is to bring in a knowledge domain (some topic in mathematics, a graphical challenge, some real problem needing a solution), and then learn the language in tandem with that knowledge. Because when do you really "know" Python or Java? When you've mastered every module or package that comes with it. I've yet to meet a programmer who has. And yet the newbie might get the impression this is the goal, and immediately get lost. Sometimes a good teacher is just someone who knows how to parse a large domain into doable, masterable steps, whereas the drowning student is the one who has plenty of intelligence and talent, but thinks learning it ALL (whatever ALL means) is what's necessary -- as if others have done that (really, they haven't). Kirby
![](https://secure.gravatar.com/avatar/116b2302735c5490ff30531d24838510.jpg?s=120&d=mm&r=g)
Hi Kirby Thanks for excellent points... Actually you are one of the people I would want to interview + I love your Mathematics packing Python-POV page. http://www.inetarena.com/~pdx4d/ocn/numeracy0.html It is precisely to have a bio-diversity of 'experts' saying things like:
Because when do you really "know" Python or Java? When you've mastered every module or package that comes with it. I've yet to meet a programmer who has. And yet the newbie might get the impression this is the goal, and immediately get lost.
Sometimes a good teacher is just someone who knows how to parse a large domain into doable, masterable steps..
That is the problem with all the massive programming books and the full features of advanced software.. Experts know how to navigate pragmatically among the tools and techniques at their disposal and how to learn about new ones.. I guess the cliché subtitle could be 'Learning to Learn Programming with Python' ! LLPP-ly yours - Jason ________________________________________________________________ Jason CUNLIFFE = NOMADICS.(Interactive Art and Technology).Design Director ----- Original Message ----- From: Kirby Urner <pdx4d@teleport.com> To: <Edu-sig@python.org> Sent: Thursday, August 31, 2000 5:33 PM Subject: Re: [Edu-sig] CP4E VideoPython learning to teatch / teaching to learn ..[xpost: was {'cpl',"don't laugh"}]
Hi Jason --
I have no problem with your impassioned plea for better teaching materials, including multimedia. No laughing matter. Lots of people working on it no doubt.
Also thanks for your rave review of Flash5, which I haven't had the time to look into.
Sometimes I think what bogs people down is foresaking any knowledge domain and trying to learn the "programming language" as the generic "thing to know".
More useful, I think, is to bring in a knowledge domain (some topic in mathematics, a graphical challenge, some real problem needing a solution), and then learn the language in tandem with that knowledge.
Because when do you really "know" Python or Java? When you've mastered every module or package that comes with it. I've yet to meet a programmer who has. And yet the newbie might get the impression this is the goal, and immediately get lost.
Sometimes a good teacher is just someone who knows how to parse a large domain into doable, masterable steps, whereas the drowning student is the one who has plenty of intelligence and talent, but thinks learning it ALL (whatever ALL means) is what's necessary -- as if others have done that (really, they haven't).
Kirby
_______________________________________________ Edu-sig mailing list Edu-sig@python.org http://www.python.org/mailman/listinfo/edu-sig
![](https://secure.gravatar.com/avatar/c9af522fc39d5de90f21119543c2b9ab.jpg?s=120&d=mm&r=g)
Hi Jason, You might be pleasantly surprised running Python under Linux instead of Windows. All that registry and autoexec stuff goes away. I've never used Python under Windows, but I bet some of your frustrations were Windows based, not necessarily Python based. I used to use Activestate Perl under Windows, and it was really quirky. Perl under Linux does exactly what it's supposed to (or at least as predictably as a "pathetically eclectic rubbish lister" can be). You mentioned the following:
Personally I would love to spend a couple of hours sitting next to an experienced Python programmer who could show for example the process of putting to together a program, testing it, shaping, how they react to error messages, how they sculpt the code, how they might look at the problem a couple of ways, how they use the tools, how many windows open, what they look at.. the real-world rhythm of a few hours in the life of a python program.. even better if this was intelligently structured and re-playable with examples. It would be nice to have a human being talk and type me through some code.
Are you sure you don't already know that stuff? My experience tells me that the "how tos" you mention above are language independent (assuming the language is oop and topdown capable like Python, Perl, Java, C++ (no MFC please), Delphi and the like). Once you've cleared the basic language-independent programming methodology hurdle (which you sound like you've already done), the next step is the language-specific "riffs" that make coding in your language more efficient, readable and easy. This is what you were discussing with import, os.getcwd(), os.chdir(), '__dir__','__builtins__', '__doc__', '__name__' to the mysteriously named, ubiquitous,>but frequently blank files named __init__.py. Jason, I think you should write a tutorial on all that stuff. You seem to have the curiosity and love of programming to do it. Maybe I can help you. Steve Steve Litt Webmaster, Troubleshooters.Com http://www.troubleshooters.com slitt@troubleshooters.com At 01:04 PM 8/31/00 -0400, Jason Cunliffe wrote:
Hello everyone
At Guido's suggestion, I am forwarding this rather impassioned reply-post I made to a recent thread on comp.lang.python. I have also just now subscribed to Edu-sig@python.org I have been following CP4E at a distance since I first heard about it and look forwards to sharing skills, ideas and inspiration together.. - Jason ________________________________________________________________ Jason CUNLIFFE = NOMADICS.(Interactive Art and Technology).Design Director
............................................................................ .................................................... Ken Mossman <K.Mossman@adb.com.ph> wrote in message news:8oi3s4$8km$1@nobel2.pacific.net.sg...
I have some JUNIOR staff and they are asking if there any CBT or multi-media courses for Python
They are NEWBIES !!
Hello. This is long post because you touched a nerve here...
I am not only laughing, but crying too - at you folks for not appreciating what a good question this really is!
In fact I am wondering if in part this does not get at the heart of CP4E [computer programming for everyone]..or what is missing in that regard..
Personally I would love to spend a couple of hours sitting next to an experienced Python programmer who could show for example the process of putting to together a program, testing it, shaping, how they react to error messages, how they sculpt the code, how they might look at the problem a couple of ways, how they use the tools, how many windows open, what they look at.. the real-world rhythm of a few hours in the life of a python program.. even better if this was intelligently structured and re-playable with examples. It would be nice to have a human being talk and type me through some code.
Yes there is no substitute for hands-on learning doing. But there is no substitute for great teachers either! And since we don t have the joys of python class in school or at our corner adult-education center, we go to the web and read and download and hack explore till hopefully it clicks. Some experienced folks can transfer their previous learning fast, but for others who may have no experience or com from another background, the first steps are very important..
But consider for example what happens when you open a high powered version 9 piece of multimedia or 3d.modelling.animation software.. How many of your here would last 15 minutes before a deep and overwhelming sense of drowning mingled with your wide-eyed ambition and fascination. But try to get something done...
Ok so you get your hands on 1 hour video which shows you the basic features, some examples and give you a reasonable grasp of what it the rhythm of working and how many times you have click and open, where some shortcuts are etc..
Lord I would love a Python video from the masters at work and play. In any field there are rare few people who _really_ understand it, and even rarer are the ones who can teach it. Python seems easy, well documented, has a great community etc.. and it does.
But fundamentally all the source code in the world does not help one understand the process of programming. It does not show a newbie what to do with all those modules and definitions after your put them under your pillow! [http://www.python.org/doc/current/lib/lib.html] Would someone just explain what all this stuff is and what are the 20 most important things needed to know to get going..and then put the rest into some context so one understands what to look forwards to.
I will give you a very simple few example of the sorts of things which drove me nuts when I first tried to run python on win32
1 - PYTHONPATH... where is this thing and how do I set it [in DOS ?, in Python under some menu, by editing autostart.bat, in some hideous registry sub.sub.sub.location.attribute
2 - The manual says just make this cute 'helloworld.py' example and save it. So you do, but you don't save/drop it into the main python directory [that would be dumb right?] .. no like a good kid you make a nice folder four yourself and put your first examples there.
3 - Now when you do this and go 'import helloworld' you immediately get an informative precise error reply written in Python[Babylonian]! What's with that?
For god sakes the newbie default for python should be
a: make a folder called 'newbies' and tell newbies to save their scripts there so they WILL run first time b: add an auto-include folder paths python routine which means any folder added to the default installation will be seen and run ok.
4 - You get enthusiastic and a little braver and download some cool package. unzip and put it into you python directory or maybe even somewhere else [god help you poor soul]. Try to import that more errors..arggh. Eventually you find somewhere after scouring the docs and newsgroups a couple of VITAL commands:
import sys, os sys.path.append('c:\program files\python\coolnewpackage\') os.chdir('c:\program files\python\coolnewpackage\') os.listdir(os.getcwd())
- And after this there is the problem of packages and how modules behave with namespace voodoo like the difference between import * from somewhere import something from somewhere import *
- how to get them work properly - how to deal with the typical top 20 error messages python throws at you in zealous yet Zen-like bliss
- What is the relationship of import, os.getcwd(), os.chdir(), '__dir__', '__builtins__', '__doc__', '__name__' to the mysteriously named, ubiquitous, but frequently blank files named __init__.py ???
Can you explain that one to you mother?
All the super tools in the world do not help if one does not know how to use them or have a grasp of what they are capable of. IDLE and PythonWin get better all the time, and now we are about to see lots more cool Python on Windows via ActiveState etc. But this only ups the ante for what a great idea it is to make some Python training Videos/DVD/CBT.
Go to Barnes and Noble for example, there are precious few python books visible and they are scattered around in odd corners. This is sad but not surprising since the Python booklist has grown well over the past year. I fear the situation may not change much in the future unless there is widespread adoption of Python ++ big marketing push to make it happen like WROX, MS, QuickStart, EASYthisEasyTHAT. Even if a newbie cannot afford the stack of $40+ dollar books VB and others tout, at least they can hang out their for an afternoon and browse and read and scan the range of uses, abuses, approaches and devotions of all those authors. Python is slim but elegantly represented.
Yes the online docs are admirable, but believe me there are many beginners who need all the help they can to get going. What are you going to recommend to the nearest 12-year old who is itching to learn some programming? RealBASIC, Python, VB, JavaScript, C, C++, Dflat, Rebol, HTML, DHTML, XML, GML, Lingo, LegoMindstorms... ???
My answer is: 1. Start with Macromedia Flash5 and maybe LegoMindstorms for Xmas 2. And then learn Python... [but what am I going to give them for help?] 3. Then Blender v2.x [gaming version with python scripting http://www.blender.nl]
Flash it turns out is a brilliant intro to object-oriented programming and a ton of instant fun for all ages also. The new Flash5 has a real language in it now [ActionScript = Java/ECMAScript syntax] behind a cool multi-dimensional interface and frees humans from most of all the ghastly invisible stuff which object-oriented programming was supposed to.. TEST A: - try making an interface in Flash and then in Tkinter or wxPython or some such..yeooow!@#. the difference is newbie heaven and hell TEST B: - or Next time anyone you know has to make PowerPoint slides, crack open a version of Flash and try that instead. Immediately it makes one think in terms of sequence, rhythm, flow, aesthetics, reusable components.. perfect for presenting ideas and teaching.
C'mon - The question I ask you is what would make a good contents for a video, and who here would like to work with me [as camera wielding newbie] to develop some great CBT/Training Videos for Python ?
CP4E indeed. Before re-inventing yet another language {RIYAL}, how about first learning how to teach this one? Python is cool, it has some idiosyncrasies. I love it and hope it continues to thrive. regards - Jason
________________________________________________________________ Jason CUNLIFFE = NOMADICS.(Interactive Art and Technology).Design Director
_______________________________________________ Edu-sig mailing list Edu-sig@python.org http://www.python.org/mailman/listinfo/edu-sig
![](https://secure.gravatar.com/avatar/116b2302735c5490ff30531d24838510.jpg?s=120&d=mm&r=g)
Hi Steve Thanks for your kind reply.. ----- Original Message ----- From: Steve Litt <slitt@troubleshooters.com> To: <edu-sig@python.org> Sent: Friday, September 15, 2000 11:36 AM Subject: Re: [Edu-sig] CP4E VideoPython learning to teatch / teaching to learn ..[xpost: was {'cpl',"don't laugh"}]
You might be pleasantly surprised running Python under Linux instead of Windows. All that registry and autoexec stuff goes away. I've never used Python under Windows, but I bet some of your frustrations were Windows based, not necessarily Python based. I used to use Activestate Perl under Windows, and it was really quirky. Perl under Linux does exactly what it's supposed to (or at least as predictably as a "pathetically eclectic rubbish lister" can be).
You mentioned the following:
Personally I would love to spend a couple of hours sitting next to an experienced Python programmer who could show for example the process of putting to together a program, testing it, shaping, how they react to error messages, how they sculpt the code, how they might look at the problem a couple of ways, how they use the tools, how many windows open, what they look at.. the real-world rhythm of a few hours in the life of a python
even better if this was intelligently structured and re-playable with examples. It would be nice to have a human being talk and type me through some code.
Are you sure you don't already know that stuff? My experience tells me
Yes I agree some problems no doubt are Windows related. But that is my reality and others too. I do a lot of graphics and multimedia work, use a lot of applications which are not unfortunately available yet on Linux, and though I am very interested in the OS, I am even more interested in the applications and my files. I like Python very much because it is so portable. I really want to put it to that test and become adept with it on any platform. Boa and wxPython for example. Zope and Python External Methods for another.. <start Linux on laptops rant> About 3 months ago I did take a few days out, my older 233mhz Acer Laptop, cleaned off some space, and installed first Corel then Mandrake 6.5 Linux on it. Worked pretty nice, but I did not have enough disk space :-() and I could not get any modem of Ethernet to work yet with it. rats.. It did motivate me to add some RAM which was the best $100 I spent in a long time. wow what a difference. When I have time I plan to catch up on latest Linux laptop voodoo tips and try again..but I know in reality I have to schedule for several lucid sequential days of backups, re-organizing and logging in online to find just-the-right-info(tm). Plus maybe a new modem / Ethernet card with compatible drivers...arghh. It will be worth it when its all over. I will be wiser.. Maybe I will make this a dedicated Linux Python laptop. Meanwhile a new project this year budgeted me to buy a lovely Sony VAIO F450 which came with Win98se installed right now. Beautiful screen and digitalvideo i/o [iLink= Firewire]. get right to work. Fabulous. There _is_ enough hard disk space to install Linux on the other D: partition but that kills the essential D:drive swap disk you need for any video capture.. a possible solution is invest in a fabulous VST firewire drive. [no budget left for that this year] http://www.vsttech.com/vst/products.nsf/firewirepl?OpenView&Start=1&Count=30 &Expand=1#1 Dream#1 I _wish_ it had an 40Gb internal hard drive plus all the appropriate sounds, graphics, DVD, PCMCIA, iLink and printer drivers. Then I could run VMWARE and have everything virtual below that, Linux, Win32 etc.. But I am in the middle of a project and cannot afford the 2+ weeks it might take to reformat and reinstall a lot of stuff to see IF I can get Linux working satisfactorily on this pretty box. I doubt it will support the graphics properly yet. http://www.vmware.com/ I know it will run, because there is company selling Linux ready installed on these SONY models and I checked out the Linux Laptop pages and newsgroups.. Very close to get it happening but this stuff still takes a lot of time and risk of downtime and reinstalling apps etc.. Dream #2 Put a smooothly running Linux on an external drive connected via SCSI or PCMCIA and be able to use that drive as a free traveling instant Linux in your pocket solution. I am some of the way along towards realizing this dream. I invested in a Bullet Drive Express [$130] + 10Gbdrive http://bondiboard.macpublishing.net/pages/december.98/Reviews.4581.html http://www.igo.com/cgi-bin/ncommerce3/ProductDisplay?prmenbr=1&prrfnbr=19920 &cgrfnbr=63&crpcgnbr=&top_crccgnbr=&bot_crccgnbr= I need a few calm days to get this one properly organized - it is sitting here staring at me right now. Let's see - backup everything on CDROM and/or ORB removable drives - format nonsense - boot partitions.. - figure out how to get it to see: the_list_of_stuff_you_need = [ the CDROM, the DSL, the Ethernet, the graphics display, the touch-pad, the mouse, the standby[ouch] and power management buttons] - then the config install fun begins - : Zope, Python, Python packages, PIL, Blender, FreeGIS, Gimp, POVray, ...[Flash plugins], Email apps.. daemons and PDF viewers etc.. - Yay: now get programming!! Dream#3 shop around and get a cheap new/old generic desktop PC which will not have all these early adopter laptop Linux headaches and just do it from scratch. Dream#4 [to be continued] I like all computing platforms for what they do well, and love to critique them for what they do not. Let's see.. my personal experiences so far have led from: RadioShack Model100[the original laptop 8linesmonochrome300baud], through several charming Amigas to Macintoshes to Sun Sparcs to Silicon Graphics Indigo back to more Macs, and later to Win3.1, Amiga runnning a Mac emulator [outrageous!], WinNT, Win95, Win98, now Linux a little..BeOS, soon a lot more. [have you seen the new Mac emulators http://www.emulators.com/softmac.htm] </end Linux on laptops rant> program.. that
the "how tos" you mention above are language independent (assuming the language is oop and topdown capable like Python, Perl, Java, C++ (no MFC please), Delphi and the like).
Yes you are partly right here.Hopefully the how-to's in many instances are independent as they should be. Python is clean and interactive enough to allow rapid demonstration and exploration. But as part of the big experiment where I am part observer, part guineapig, part instigator, I do feel that Python is very good language for learning computer programming hands-on. Learning through python, rather than learning python, if you see what I mean. Of course I want to learn python. But I am interested to learn it in a way which goes beyond that. This is the same argument I make for why a 12 year-old could get a great intro to programming using Flash5 or LegoMindstorms. I feel the same way about music software too. For a fascinating example of object-oriented programming download a copy of Tim Thompson's KeyKit: http://nosuch.com/keykit/ Getting one's head around abstract structures is easier for many if there are tangible metaphors like sound or image which provide rapid feedback. So many computer programming tasks or examples are based on real-world problem solving, but in my opinion are not so good for beginners, piping files around, making listboxes and yet another boring little application is ok, but not very inspiring. I suspect music and graphics for many are more motivating and encourage both abstraction and real-world problem solving. This was part of the insightful premise of LOGO after all. hmm..Let's see I am looking for metaphor.. ok You can learn a lot about music sitting with a good piano teacher. you will learn some piano, but the right teacher will use the piano to teach music structure, composition, improvisation, style, etc. As I understand it this is what underlies the CP4E idea and others.
Once you've cleared the basic language-independent programming methodology hurdle (which you sound like you've already done), the next step is the language-specific "riffs" that make coding in your language more efficient, readable and easy. This is what you were discussing with import, os.getcwd(), os.chdir(), '__dir__','__builtins__', '__doc__', '__name__' to the mysteriously named, ubiquitous,>but frequently blank files named __init__.py.
Right. riffs is a good way to put it..
Jason, I think you should write a tutorial on all that stuff. You seem to have the curiosity and love of programming to do it. Maybe I can help you.
Steve
Thanks for the encouragement. I would love to take you up on the offer. Where are you based and how do you think you can help? best wishes - Jason ________________________________________________________________ Jason CUNLIFFE = NOMADICS.(Interactive Art and Technology).Design Director
![](https://secure.gravatar.com/avatar/94b4fff8f879a44af1f18fc5340309d3.jpg?s=120&d=mm&r=g)
This is the same argument I make for why a 12 year-old could get a great intro to programming using Flash5 or LegoMindstorms.
Certainly these could be good learning environments. Python is one namespace among many, in which to absorb a lot of useful abstractions and key concepts. I haven't used LegoMindstorms yet, but I bet there'd be a way to do an API accessible from Python, such that whatever you'd done in that environment could be invoked from within your Python code. Kirby
![](https://secure.gravatar.com/avatar/c9af522fc39d5de90f21119543c2b9ab.jpg?s=120&d=mm&r=g)
At 02:02 PM 9/15/00 -0400, you wrote:
Hi Steve
Jason, I think you should write a tutorial on all that stuff. You seem to have the curiosity and love of programming to do it. Maybe I can help you.
Steve
Thanks for the encouragement. I would love to take you up on the offer. Where are you based and how do you think you can help? best wishes - Jason
Hi Jason, I'm just outside of Orlando Florida. I'm webmaster/content lead of Troubleshooters.Com, and as such, create tutorials constantly. I've also written some chapters in Red Hat Linux Unleashed, and am the main author of Samba Unleashed. The first way I can help is by making sure your tutorial gets seen by many people. Troubleshooters.Com gets about 900 distinct IP visitors per day. The second way I can help is by doing the parts of the tutorial you don't want to. The third way is by getting others involved. I have quite a few Python friends, including one who is writing an outline processor in Python (he can certainly help with the advanced part of the tutorial). Also, I can ask you various questions to prompt you to explore various Python "riffs", and you can ask questions to get me to do the same. I already have a very intro Python tutorial on the 'net at http://www.troubleshooters.com/codecorn/python/pptut.htm. When you see it, you'll notice it's a good foundation but completely ignores the wealth of tools that ship with Python. It's that lack of coverage of the tools in my existing tutorial that first called my attention to your post. Steve
![](https://secure.gravatar.com/avatar/116b2302735c5490ff30531d24838510.jpg?s=120&d=mm&r=g)
Hi Steve
The first way I can help is by making sure your tutorial gets seen by many people. Troubleshooters.Com gets about 900 distinct IP visitors per day. The second way I can help is by doing the parts of the tutorial you don't want to. The third way is by getting others involved. I have quite a few Python friends, including one who is writing an outline processor in Python (he can certainly help with the advanced part of the tutorial). Also, I can ask you various questions to prompt you to explore various Python "riffs", and you can ask questions to get me to do the same.
This are very kind and pragmatic suggestions. Scary too, as it put me on the line - but in a good way. I have never done anything like this, have very limited Python skills -- hmm...in fact good reasons for trying! But I should do some homework, first look again at existing Python tutorials and more, yours included of course. I will definitely need help, but that might provide a good foundation to evoke the spirit of tutorial.. The question prompts would be a good idea. and a Q&A dialogue is a good way to get the ball rolling.
I already have a very intro Python tutorial on the 'net at http://www.troubleshooters.com/codecorn/python/pptut.htm. When you see it, you'll notice it's a good foundation but completely ignores the wealth of tools that ship with Python. It's that lack of coverage of the tools in my existing tutorial that first called my attention to your post.
aha.. its a good start. I have been wondering how one can have python tutorial work on-line in web page for someone who does not even have python installed. In other words Python interpreter in a browser window. Big scale this might be hard to do with rigor, but small scale, within the confines of tutorials it would be great if one could have example code, hit <enter> adn get a live response or error back. It should be possible using Zope or JPython or something to pass input to Python and then catch the output and return that. Problem would be to allow people to make their own revisions adn see the effects, how to handle indenting etc.. hmm.Not sure maybe this is crazy.. Any ideas? best wishes - Jason
![](https://secure.gravatar.com/avatar/c9af522fc39d5de90f21119543c2b9ab.jpg?s=120&d=mm&r=g)
Hi Jason, At 01:56 AM 9/17/00 -0400, Jason Cunliffe wrote:
Hi Steve
The first way I can help is by making sure your tutorial gets seen by many people. Troubleshooters.Com gets about 900 distinct IP visitors per day. The second way I can help is by doing the parts of the tutorial you don't want to. The third way is by getting others involved. I have quite a few Python friends, including one who is writing an outline processor in Python (he can certainly help with the advanced part of the tutorial). Also, I can ask you various questions to prompt you to explore various Python "riffs", and you can ask questions to get me to do the same.
This are very kind and pragmatic suggestions. Scary too, as it put me on the line - but in a good way. I have never done anything like this, have very limited Python skills -- hmm...in fact good reasons for trying!
I have a technique called "Rapid Learning" that anyone (any adult of normal intelligence) can follow to quickly learn technology. It's basically experimentation based -- it's not rocket science and we all use it. Anyway, it's ideally suited to todays newbie who wants to be tomorrows ninja (and write an authoritative tutorial). I'll discuss it with you offline.
But I should do some homework, first look again at existing Python tutorials and more, yours included of course. I will definitely need help, but that might provide a good foundation to evoke the spirit of tutorial.. The question prompts would be a good idea. and a Q&A dialogue is a good way to get the ball rolling.
I already have a very intro Python tutorial on the 'net at http://www.troubleshooters.com/codecorn/python/pptut.htm. When you see it, you'll notice it's a good foundation but completely ignores the wealth of tools that ship with Python. It's that lack of coverage of the tools in my existing tutorial that first called my attention to your post.
aha.. its a good start.
I have been wondering how one can have python tutorial work on-line in web page for someone who does not even have python installed. In other words Python interpreter in a browser window.
I think that's overkill, especially because the host would get hit with bigtime bandwidth charges (at least compared to a static page). The first section of the tutorial simply explains where to get Python, and how to install it, including .rpm, .deb, and ./configure,make,make install. Also, remember that anyone with any modern Linux distro has it right on their install CD. Always remember that the reader can cut and paste code from web pages right into his editor.
Big scale this might be hard to do with rigor, but small scale, within the confines of tutorials it would be great if one could have example code, hit <enter> adn get a live response or error back. It should be possible using Zope or JPython or something to pass input to Python and then catch the output and return that. Problem would be to allow people to make their own revisions adn see the effects, how to handle indenting etc.. hmm.Not sure maybe this is crazy.. Any ideas?
Like I said, IMHO (and I've been wrong before), the effort spent in the web interface would be much better spent adding content to a static tutorial. I'd envision the tutorial as starting with Python basics (much of which I've already covered), and then have tutorials to cover each major package. Then the question becomes, do we make a subtutorial per package, or do we think of some kewl programs that illustrate packages. And remember, I can probably get some more expertise into this tutorial project. This is beginning to sound like fun. Steve
participants (4)
-
Jason Cunliffe
-
Jason Straw
-
Kirby Urner
-
Steve Litt