Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > Python > Introducing Kids to Programming: 2 or 3?

Reply
Thread Tools

Introducing Kids to Programming: 2 or 3?

 
 
Marco Gallotta
Guest
Posts: n/a
 
      09-27-2010
Hi there

I'm sure you get a lot of "2 or 3" questions, but here's another.
Umonya [1] uses Python to introduce school kids to programming. The
initiative is only 15 months old and up till now we've been using
existing notes and exercises and thus Python 2. But we're at the stage
where we can either stick with 2 for the next few years, or go to 3
now.

We received a grant from Google to reach 1,000 kids in South Africa
with our course in 2011. People have also shown interest in running
the course in Croatia, Poland and Egypt. We're also eyeing developing
African countries in the long-term. As such, we're taking the time now
to write our very own specialised course notes and exercises, and we
this is why we need to decide *now* which path to take: 2 or 3? As we
will be translating the notes we'll probably stick with out choice for
the next few years.

Since these are kids, we feel the nice changes in 3 such as removing
integer division will help in teaching. It will also remove confusion
when they go to download Python and grab the latest version. Since
they're just starting, chances are almost none will be hit by the
limited library support for at least a year or two. They will,
however, be hit by the confusion of seeing Python 2 code all over the
web.

We're tending towards 3, but I am a little cautious myself.

Marco

[1] http://umonya.co.za

--
Marco Gallotta
MSc Student
Department of Computer Science, University of Cape Town
people.cs.uct.ac.za/~mgallott | marco-za.blogspot.com
marco AT gallotta DOT co DOT za | 073 170 4444 | 021 552 2731
 
Reply With Quote
 
 
 
 
Andreas Waldenburger
Guest
Posts: n/a
 
      09-27-2010
On Mon, 27 Sep 2010 17:48:06 +0200 Marco Gallotta
<(E-Mail Removed)> wrote:

> Since these are kids, we feel the nice changes in 3 such as removing
> integer division will help in teaching. It will also remove confusion
> when they go to download Python and grab the latest version. Since
> they're just starting, chances are almost none will be hit by the
> limited library support for at least a year or two.


That's your answer right there.


> They will, however, be hit by the confusion of seeing Python 2 code
> all over the web.


Good point. Here is may suggestion: Make the kids aware of the 2/3
issue as early as possible, but don't go into detail. Maybe start with
the obligatory "Hello world" program, and a few other simple things.
Then, when you get to the "how do help myself on the net" part of the
course (you're including that, right?), you make strong distinction
between Py2 and Py3 and tell them to make absolutely certain that it's
Python 3 code they're looking at. Maybe give the "print()" syntax as a
hint, but have them rely on more explicit descriptions that come with
the code. Later on (once they know more programming constructs to
appreciate the differences), include another lecture, specifically on
the difference between Python 2 and Python 3.

Disclaimer: I'm not an educator. Maybe this is horrible advice. Someone
with a better understanding of kids' and learner's minds please debunk
any nonsense I may have spouted here. I just like to go by the general
rule that, unlike adults, most kids aren't idiots.

/W

--
INVALID? DE!

 
Reply With Quote
 
 
 
 
Aahz
Guest
Posts: n/a
 
      10-26-2010
[posted & e-mailed]

[chiming in late]

In article <(E-Mail Removed)>,
Marco Gallotta <(E-Mail Removed)> wrote:
>
>I'm sure you get a lot of "2 or 3" questions, but here's another.
>Umonya [1] uses Python to introduce school kids to programming. The
>initiative is only 15 months old and up till now we've been using
>existing notes and exercises and thus Python 2. But we're at the stage
>where we can either stick with 2 for the next few years, or go to 3
>now.
>
>We received a grant from Google to reach 1,000 kids in South Africa
>with our course in 2011. People have also shown interest in running
>the course in Croatia, Poland and Egypt. We're also eyeing developing
>African countries in the long-term. As such, we're taking the time now
>to write our very own specialised course notes and exercises, and we
>this is why we need to decide *now* which path to take: 2 or 3? As we
>will be translating the notes we'll probably stick with out choice for
>the next few years.


One reason not otherwise mentioned is that overall Unicode support is
better in Python 3, and given your international audience, that's a
strong point in favor of Python 3.
--
Aahz ((E-Mail Removed)) <*> http://www.pythoncraft.com/

"If you think it's expensive to hire a professional to do the job, wait
until you hire an amateur." --Red Adair
 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Introducing Dot Net Matters Jason Ferguson ASP .Net 0 11-20-2005 08:31 PM
Introducing: MCNGP #45 FrisbeeŽ MCSE 59 08-02-2005 07:39 PM
Introducing wireless network =?Utf-8?B?YzEyODc=?= Wireless Networking 3 02-25-2005 09:55 PM
ANN: Introducing MANIK - a 32 bit Soft-Core RISC Processor Sandeep Dutta VHDL 16 12-14-2004 06:23 PM
Introducing CookSwing: XML to GUI toolkit asdf Java 0 08-18-2004 11:56 AM



Advertisments