Linux in the TDSB
Taavi Burns
jaaaarel-Re5JQEeQqe8AvxtiuMwx3w at public.gmane.org
Thu Oct 7 18:13:28 UTC 2004
On Tue, 05 Oct 2004 19:15:05 -0400, Anton Markov <anton-F0u+EriZ6ihBDgjK7y7TUQ at public.gmane.org> wrote:
> Yes, python would work very well. The advantages would be obvious: it's
> cross-platform, and it's a real, live language. The key would be to
I was waiting for someone to mention Python. :) It evolved out of ABC, which
was a teaching language, so there's good historical reason to use Python in
an educational setting.
> integrate it smoothly into the curriculum. The three things we study at
> our school is:
>
> 1) Basic conditional statements, loops, function calls.
> This is done in Turing through "fun" activities like animating circles :(
>
> I would recommend a simple test editor with a "run" and "step through"
> button. The language used would be python, but stripped down so that
> when the user types 'print "Hello World"' (or whatever it is in Python;
> I don't know the language :( ), it outputs that text.
That's exactly the syntax. :) You don't have to strip anything down, either.
>From your shell, type "python". You're then left at a Python prompt, from which
you can immediately type 'print "Hello World"', and it will.
> Adding some wrapper functions to standard GTK calls for drawing circles,
> lines, squares, etc. and outputting to a GTK windows would be enought to
> surpass the basic Turing functionality.
The wxWindows cross-platform widget set has the wxPython bindings. That
will give you native look-and-feel wherever it runs.
> 2) Event-oriented programming.
> Currently VB is used for this.
>
> Use an IDE such as Anjuta or something similar that integrates Glade
> with an editor. Continuing to use Python would be advantageous, because
> the syntax does not change.
>
> 3) Object-oriented and modular programming (perhaps network support, etc.)
> This is done in Java.
>
> I think this should be left alone, because many Universities use Java in
> the first-year courses from what I hear.
>
> Of course it's never too early to teach C++, as long as the kids are
> bright enough to handle it :)
I might disagree. I had a prof who claimed that C++ was like a VERY SHARP
Samauri blade: when wielded expertly, it was an exquisite tool; when tossed
around, one tends to cut off arms and legs.
> So here's the basic question: has there been any progress already done
> in this area? If not, would someone be interested in coding up at least
> the first idea on the above list? It shouldn't be too difficult, and
> would even serve and a Windows replacement for Turing. Perhaps a
> "Written in Python for Python" idea would be cool; at the end of the
> year have the students examine the sourcecode for the software they've
> used all year.
BTW, Python is written in plain old C. Extending the Python language with
C functions is relatively simple. I managed to do it for the very
first time while
on an airplane with my PowerBook. The documentation was all already
included, and the procedure relatively straightforward.
As a bonus, there is at least one FREE textbook you can use for the class:
http://www.greenteapress.com/thinkpython/
There are many other good books (for $$) on the topic as well, in addition
to the excellent resources on the Python website:
http://www.python.org
--
taa
/*eof*/
--
The Toronto Linux Users Group. Meetings: http://tlug.ss.org
TLUG requests: Linux topics, No HTML, wrap text below 80 columns
How to UNSUBSCRIBE: http://tlug.ss.org/subscribe.shtml
More information about the Legacy
mailing list