CODE KALEIDOSCOPE

Creative Code. Colourful Thinking.

Final Project

Your creative milestone
Final Project of 8

Creative Coding Showcase

Plan, code, test and improve an original Turtle artwork using framed freedom.

You have built the skills. Now combine them into a design that feels unmistakably yours.

Do Now — 5 mins Theory — 10 mins I Do — 5 mins We Do — 10 mins You Do — 25 mins Plenary — 10 mins

Project Journey

Use these stages to plan, create, test and improve your final creative coding outcome.

  1. Plan
  2. Build
  3. Test
  4. Improve
  5. Evaluate

Learning Aim

To create and improve an original Turtle artwork using programming concepts from the lessons.

Defined End Point

By the end of this project, you will be able to plan, build, test and evaluate an original creative coding outcome using ideas from across the unit.

Key Vocabulary

variables loops functions debugging

Do Now

Design Critique

  1. Which programming concepts can you identify?
  2. What do you like about the design?
  3. What would you change?
  4. Which pathway will you choose: Bronze, Silver or Gold? Why?

Stretch: Sketch one improvement you could make.

Retrieval Practice

  • Which variable could control the size of your artwork?
  • How can selection make a program choose between outcomes?
  • Why are loops useful when creating repeated patterns?
  • How does debugging help improve a final design?

Theory

Plan before coding so your project has a clear direction.

What am I creating?

What shapes will I use?

What colours will I use?

How many repeats or segments will I use?

What variables will I need?

What will I change first?

How will I improve my design?

What problem did I debug?

I Do

Choose the pathway that gives you the right amount of support. You can move pathway later if you need to.

Bronze

Start from a template and change colours, shape size, number of repeats, pen thickness and shape choices.

View starter code
from turtle import *

shape_size = 60
repeats = 12
turn_angle = 30
pen_colour = "#00DCC8"
pen_thickness = 3

speed(0)
bgcolor("black")
pencolor(pen_colour)
pensize(pen_thickness)

for i in range(repeats):
    circle(shape_size)
    right(turn_angle)

done()
Download Bronze Starter
Silver

Combine ideas from previous lessons to create a flower, starburst, mandala or geometric pattern.

View starter code
from turtle import *

repeats = 18
shape_size = 70
turn_angle = 360 / repeats
pen_colour = "magenta"
pen_thickness = 3

speed(0)
bgcolor("black")
pencolor(pen_colour)
pensize(pen_thickness)

def draw_shape():
    circle(shape_size)
    right(60)
    circle(shape_size / 2)

for i in range(repeats):
    draw_shape()
    right(turn_angle)

done()
Download Silver Starter
Gold

Create your own design using variables, loops, functions and user input if appropriate.

View starter code
from turtle import *
from random import choice, randint

repeats = 24
shape_size = 80
colours = ["#00DCC8", "#FF5AA0", "#8C46FF", "#EEFF00"]

speed(0)
bgcolor("black")

def draw_starburst(size):
    pencolor(choice(colours))
    pensize(randint(2, 5))
    forward(size)
    right(140)
    forward(size / 2)
    backward(size / 2)
    left(140)
    backward(size)

for i in range(repeats):
    draw_starburst(shape_size)
    right(360 / repeats)

done()
Download Gold Starter

We Do

Use these small examples when you need a starting point. Type them into Mu Editor and adapt them.

Colour and size

pencolor("blue")
pensize(3)
circle(50)

Square loop

for i in range(4):
    forward(100)
    right(90)

Mandala loop

for i in range(12):
    circle(50)
    right(30)

You Do

Make one change at a time, run the program, then decide what to improve next.

Starter template for supported projects. Type it into Mu Editor, then adapt it.

from turtle import *

shape_size = 50
repeats = 12
turn_angle = 30

pencolor("cyan")
pensize(3)
speed(0)

for i in range(repeats):
    circle(shape_size)
    right(turn_angle)

done()

Typing the code yourself helps build Python fluency and debugging skills.

Workbook Activity

Share your final artwork and explain one programming choice you made.

WAGOLL

Example code and output.

Compare the example code with the finished Starburst artwork.

Example code

from turtle import *
from random import choice, randint

repeats = 24
shape_size = 80
colours = ["#00DCC8", "#FF5AA0", "#8C46FF", "#EEFF00"]

speed(0)
bgcolor("black")

def draw_starburst(size):
    pencolor(choice(colours))
    pensize(randint(2, 5))
    forward(size)
    right(140)
    forward(size / 2)
    backward(size / 2)
    left(140)
    backward(size)

for i in range(repeats):
    draw_starburst(shape_size)
    right(360 / repeats)

done()

Starburst WAGOLL

This WAGOLL combines the key skills from the Creative Coding unit. It uses variables, data types, loops, selection and random values to create a neon starburst design. Use the comments to identify parts of the code you can modify to make the design your own.

Click image to enlarge.

Skills Used

Variables Integer data types String data types Random values Selection / IF statements Loops Debugging and testing Creative design

Plenary

Evaluate the finished project and explain the programming decisions behind it.

Extension task

Add a function or user input so someone else can change part of your artwork.

Plenary question

  • Which variables controlled your design?
  • Where did you use repetition?
  • What problem did you debug?
  • What would you improve next?
Lesson Hub ←  Previous Open Code Kaleidoscope Workspace