Skip main navigation

£199.99 £139.99 for one year of Unlimited learning. Offer ends on 28 February 2023 at 23:59 (UTC). T&Cs apply

Find out more


A description of use, modify, create.

When you were a child, did you learn to read or write first? Like most people, you probably learnt to read first. So why do we get our learners to write code before they can read it? When you look at programming pedagogy in this way it becomes obvious that we should be showing our learners plenty of examples of working programs before letting them loose on coding for themselves. This is where Use-Modify-Create comes into play.

In 2011, Lee et al. wrote a short paper where they introduced a three-stage concept that helped to reduce anxiety in coding while supporting growth. A diagram that demonstrates this approach can be seen below:

On the left is a small square titled "Not mine", while on the right is a larger square titled "Mine". Inside the left box, an arrow 'Use' points towards another arrow labelled 'Modify', which crosses between the boxes. This arrow points towards an arrow labelled 'Create', which is entirely within the "Mine" square. The 'Create' arrow points to a circle of arrows labelled 'Test', 'Analyse' and 'Refine'.

Below you can look at the three stages in more detail.


At the “use” stage, learners are given a program or model to explore. They are simply consumers. They are given the opportunity to spend some time looking at another person’s program to figure out what is happening and how it works. They are usually given questions or prompts to aid their investigation.


As your learners become more comfortable with the program, they are encouraged to start changing it. If the game was produced in Scratch, the first thing that a learner would typically do is change the trivial aspects of the solution by modifying the sprite colour or costumes and the initial variable values. They will then move to changing simple behaviours to more complex ones as their confidence in the program grows.


As learners take on increasing levels of challenge, they become more comfortable with writing their own programs. Just as with the “use” stage, it is important that the projects chosen here are at an appropriate level of challenge. Removing scaffolding too fast can increase anxiety, and conversely, giving your learners something too simple can lead to reduced engagement.

The create stage is where learners move fully into the “mine” phase of the process. They will work on programming challenges that use the skills that have been nurtured during the “use” and “modify” stages to complete their own projects.

When the learners create their own projects they should be encouraged to test, analyse, and refine their programs frequently.

Some words of advice

It is key to remember here that Use-Modify-Create is an iterative process. This means that you should continue to revisit phases with increasing levels of challenge. It is important to ensure that the project you choose is pitched at an appropriate level. Programming projects should increase in complexity over time.

The writers of the 2011 paper specify that the three stages shouldn’t be used “too literally”. You might spend a lot of time iterating through the “use” and “modify” stages before ever reaching “create” because you might feel that your learners aren’t ready for this stage. This is completely fine and is encouraged. This is why it is so important to know your learners and know their limitations.

An example for your classroom

This worksheet demonstrates how Use-Modify-Create could be used to teach Boolean logic through a simple Scratch game.


  • Do you have a programming challenge in mind for your learners that would allow you to practice the Use-Modify-Create approach in your lessons?
  • Have you tried Use-Modify-Create before? If so, what challenges did you face?

Share your answers to these questions in the comments section.

This article is from the free online

Programming Pedagogy in Secondary Schools: Inspiring Computing Teaching

Created by
FutureLearn - Learning For Life

Our purpose is to transform access to education.

We offer a diverse selection of courses from leading universities and cultural institutions from around the world. These are delivered one step at a time, and are accessible on mobile, tablet and desktop, so you can fit learning around your life.

We believe learning should be an enjoyable, social experience, so our courses offer the opportunity to discuss what you’re learning with others as you go, helping you make fresh discoveries and form new ideas.
You can unlock new opportunities with unlimited access to hundreds of online short courses for a year by subscribing to our Unlimited package. Build your knowledge with top universities and organisations.

Learn more about how FutureLearn is transforming access to education