Hi everyone, I would really like some advice based on practical experience teaching beginners.
Next year, I will be teaching an introductory course in programming using Python. The course is going to be taught asynchronously via distance education. I will be recording short videos that students will be able to view at their own pace. I want the student to be able to reproduce everything they see in the video on their own computer (minor cosmetic differences for tools). Students, as young as 14, will have to use their own computer, so the solution chosen has to be easily available on all major platforms (Windows, OSX, Linux). I aim to use only free ($0) software as much as possible. My own preference, when programming, is to use SublimeText (fast and pleasant to use, but not free although it can be used that way for an "extended unlimited demo) and have a DOS console open. However, the console experience is not the best for beginners and it would be different on different platforms. I am looking at having students installing at most three things initially: 1. A 3.4+ Python version; let's assume it is the one from python.org 2. An editor/IDE. 3. Pygame (This might be problematic under OSX as I understand it.) I will NOT be in a position to help students individually with their setup, other than in a very superficial way. (Aside: the students will first start by using Reeborg's World ( http://reeborg.ca/world.html, so that the initial experience will definitely be the same for all. By the time they get to use Python on their own computer, they will already know the very basics about editing, running and saving programs, although in a very different environment.) Here are the choices as I see them: 1. Use IDLE. Free, part of the standard distribution. I never used it very much myself and I keep reading about how tricky it can be to set up properly for beginners - mostly, I gathered, due to path problems on Windows. There is a proposal to make it better ( https://github.com/asweigart/idle-reimagined/wiki) but it is doubtful it will be realized soon enough (or at all) to make it worthwhile waiting for it. 2. Use PyCharm - community edition. Very powerful IDE, a bit overwhelming for beginners but has embedded console and debugger which may be useful as a teaching tool. 3. Use Komodo Edit. I know that the IDE includes a Python console, but it is not clear to me that the free version does. I used the full IDE many (5+?) years ago and liked it at the time. 4. Use Wing IDE 101 (free version). Supposedly designed to teach beginners. I tried Wing many years ago (at the same time as Komodo), including on a Mac where it ran under X11 and my experience was not very satisfactory. 5. Use Spyder. (https://code.google.com/p/spyderlib/) Very complete IDE that includes a really nice (python) help window. I did a few tests with it and really liked what I saw. However, in addition to the standard Python distribution, it requires PyQT or Pyside to be installed (I didn't try that). Alternatively, it is included with the Anaconda Python distribution (which is how I got to try it). However, I could not get Pygame working with the Anaconda Python distribution - I'm sure it is possible, but it would likely not be a simple solution for beginners learning remotely. Right now, I am thinking of using PyCharm together with the Python standard distribution. However, if you have some experience teaching Python (especially at a distance) with complete beginners using a variety of platforms (Windows + Macs especially), I would really, really like to hear your opinion. Cheers, André
_______________________________________________ Edu-sig mailing list Edu-sig@python.org https://mail.python.org/mailman/listinfo/edu-sig