[Edu-sig] Recommendation for editor+console or IDE for teaching beginners

Andre Roberge andre.roberge at gmail.com
Wed Dec 10 15:33:31 CET 2014


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é
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/edu-sig/attachments/20141210/e186d120/attachment.html>


More information about the Edu-sig mailing list