Skip to content

futurice/code-club

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 

Repository files navigation

code-club

8 lesson introduction to programming with python or JS.

This document describes a fictional 8 lesson structure for teaching basics of programming to upper elementary school students.

Topics of the lessons

  • 1 - Introduction, turtle, syntax - luvut ja laskutoimitukset, booleanit?
  • 2 - Simple functions, drawing - geometria, koordinaatisto(7)
  • 3 - Functions with parameters, variables - funktiot(8)
  • 4 - Moving objects, control sequences, boolean logic - yhtälö&epäyhtälö(9)
  • 5 - Iteration, randomization
  • 6 - Controls and gamification
  • 7 - tbd
  • 8 - tbd

Tools:

Example of single lesson structure

  • Introduction to theory, examples
  • coding and more coding exercises individually
  • going through exercises?
  • Homework and/or more links for more work (can be also used as material if students run out of exercises during lesson)
  • Show something cool in the internets that uses some concepts taught here

1. Introduction

Key concepts:

  • Learning the tools
  • Some grasp of syntax
  • Simple drawing of lines and turns

Example of excercises

  • Draw a box
  • Draw the first letter of your name, or your whole name

Step by step TODO

  • Esittäytyminen, who is who, miksi tehdään näin (tehdään kaikille kouluille, testataan tässä)
  • työkalu, opeta codeclub, eri ikkunat, anna oppilaiden räpläillä parametreja
  • käy läpi mitä komennot tekee oppilaiden kanssa

2. Simple functions

Key concepts:

  • Drawing shapes with functions
  • How to define a function?
  • What is function?

Example of excercises

  • Draw a robot or figure with shapes
  • Write a function for drawing square, pentagon, hexagon etc

3. Parameters and variables

Key concepts:

  • Drawing shapes with PARAMETRIZED functions
  • What is a variable?

Example of excercises

  • How to parametrize square, pentagon, hexagon etc.
  • Making calculations with variables, simple calculator

4. Booleans and control

Key concepts:

  • Simple logic, what is true and what is false?
  • this could need a loop based runtime, rather than turtle-kind-of-slow-drawing?

Example of exercises:

  • Move a turtle to right, while dodging the obstacles
  • Make turtle move and always change direction when it hits certain x/y values
  • Have array of numbers [0, 3, 2, 5, 8, 10, 2, 1], draw an array of boxes with color responding to the numbers (for example blue for <5, red for >=5) - might need iteration?

5. Iteration

Key concepts:

  • Drawing lots of stuff with big iterations
  • What happens if we add randomization to iterations?
  • Can be done with turtle or loop gfx
  • random size, movement, color etc

Example of exercises

  • Drawing lots of stuff
  • Going through array
  • How big number do you get if you add 100 random numbers together?
  • Drawing looping graphics, like a wall of squares

6. Controls

Key concepts:

  • Runtime control of something
  • Games as a topic?

Example of exercises

  • Drawing lots of stuff

About

8 lesson introduction to programming with python or JS

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published