3
$\begingroup$

I would like to start volunteering with kids and young teengers in my community by introducing them to programming. I thought teaching them the basics of python would be a good start. I have some experience with teaching in general (but not with teaching kids about programming).

Are there any resources that could help me or at least inspire me to make a good curriculum that goes over many concepts with turtle?

Thank you!

$\endgroup$
1
  • $\begingroup$ I'm surprised that this doesn't have an answer yet. I'll see what I can dig up. $\endgroup$ – Ben I. Aug 3 '20 at 19:32
2
$\begingroup$

I have found that Python is not the best tool for teaching elementary and middle school students an intro to programming. Turtle is nice, but you run out of things to do pretty quickly. If you move on from Turtle to console based coding, many students find it less engaging.

Scratch and similar visual languages are much more engaging for younger learners. You will be surprised how full featured they are. There is a lot of great algorithmic teaching that you can do with these.

If you really want a traditional text-based language, you might check out Greenfoot (for Java). But again, younger learners get lost in the symbols pretty quickly, so it would not be my first recommendation. Scratch can be much more intuitive for them.

$\endgroup$
2
$\begingroup$

I think I've recommended code.org before, but here I am recommending it again! I particularly like tools like AppLab (Link to the homepage of Code.org's AppLab) that allows students to flip between block-based and text-based (JavaScript) programming.

If you're interested in diving into hardware with them (which I would recommend because kids love to make stuff they can play with) Makecode (Link to MakeCode turtle projects page) allows you to flip between blocks and Javascript or Python. You don't have to buy the hardware to get started because there's a simulator. Makecode Arcade (Link to homepage of MakeCode Arcade) also let's you flip languages to build games.

New contributor
Randi W is a new contributor to this site. Take care in asking for clarification, commenting, and answering. Check out our Code of Conduct.
$\endgroup$
2
$\begingroup$

LibreLogo, available as default plugin of Writer LibreOffice is a good choice. I teach it to primary teacher students but I also made labs with 7-10 years old kids. Unfortunately, the manual I wrote is in Italian (Piccolo manuale di LibreLogo - Creative Commons License 2.5) but the coding examples are in English Logo. This text was written with the Bruner spiral curriculum in mind, i.e. you can find examples suited for primary school as well as secondary school students. I'm writing an English version (Building knowledge with turtle geometry) where I'm using both LibreLogo and Python. Will distribute it in the same way as soon as ready.

New contributor
Andreas is a new contributor to this site. Take care in asking for clarification, commenting, and answering. Check out our Code of Conduct.
$\endgroup$
1
$\begingroup$

I concur with Bryan R that Turtle might not be a great choice for an in-depth introduction. A quick google search for "python turtle lesson plans" reveals that most plans are for one to three lessons, after which, you have pretty much exhausted what Turtle has to offer.

There are various paid resources for Python Turtle at teacherspayteachers.

If you are open to a slightly different, more graphical, version of Turtle (called "Tina"), there is a whole book of lesson plans available at nclab.

$\endgroup$
1
$\begingroup$

If these kids are true beginners Python is a bit much. Try Scratch or Alice. If you really want a line-code language go for Small Basic. All of these have excellent resources available on their website. Thunkable and App Inventor can also be a good start if you want to try something different.

$\endgroup$
1
$\begingroup$

I disagree with other commenters who say Turtle is not the best intro to programming. I've explained a planned curriculum in another answer, https://cseducators.stackexchange.com/a/6651/9632

The great thing about turtle is that it can be used to teach modularity through procedures. Teach to extract the repeating pattern. Teach to name things (and yes, sensible naming of things is a problem for beginners). Teach typing familiarity with full names turtle.forward(50), rather some simplified. Teach procedure parameters and how they pass through functions. Teach procedure as an argument to procedure. Teach Descartes coords and coords manipulation. Teach events.

Each of these is hard topic, and turtle can provide lots of visual feedback to simplify understanding. Parametric graphics/animation is a good start.

$\endgroup$
1
  • $\begingroup$ I'm glad to be wrong about this one! :) $\endgroup$ – Ben I. Dec 4 '20 at 18:06

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.