• raspberry pi
  • National Centre for Computing Education logo

Programming with GUIs

Learn what a Graphical User Interface is and write your own GUI-based applications with this practical course for teachers.

7,044 enrolled on this course

Programming with GUIs
The CPD Certification Service

This course has been certified by the CPD Certification Service as conforming to continuing professional development principles. Find out more.

Gain hands-on experience building your own interface

Discover how to build your own Graphical User Interface (GUI) with guizero. On this course supported by Google, you will learn how to incorporate more interactivity in your program. You will experiment with different types of widgets and build the confidence to design more complex GUI-based apps in the future.

You will have the opportunity to put what you’ve learnt to practice using the guizero library. Upon completion of the course, you will be able to produce applications with interactive elements such as buttons and text boxes.

Download video: standard or HD

Skip to 0 minutes and 2 seconds How can you design and create interactive visual applications using Python programming? This course will teach you how to create graphical user interfaces or GUIs in Python. You’ll learn how to use event driven programming with the GUI zero package to make interactive apps using widgets, like buttons and text boxes. By the end of this three week hands on course, you will have made your own name generator app, text editor, and emoji matching game. This free course contains peer led discussions, trainer interaction, and feedback on your knowledge as you progress. You can learn whenever and wherever you want.

Skip to 0 minutes and 40 seconds Whether you’re a teacher with students of your own or simply curious about improving your Python programming skills, this course will help you understand how to create GUIs to make your code interactive. Sign up now at rpf.io/guis.


  • Week 1

    Introduction to GUIs and events

    • Welcome to the course

      Learn more about what you'll be learning over the course, and meet our educators and the other participants who will accompany you.

    • Make a GUI

      What is a GUI? Find out why we use them, and build your own!

    • Developing your GUI

      Use different widgets to make your GUI more interesting, and make it interactive by using events

    • Using your GUI knowledge

      Demonstrate your new GUI knowledge by completing this quiz and challenge!

  • Week 2

    Widgets and layouts

    • Welcome to week 2

      This week you'll be thinking more about layout, and designing your own text editor

    • Layouts & appearance

      Improve the layout of your GUI by putting widgets inside boxes, and changing their size and alignment.

    • Controlling the GUI

      Improve your user's experience of your text editor by changing the controls they have available.

    • End of week 2

      Recap your learning from the week

  • Week 3

    Making a GUI game

    • Welcome to week 3

      Find out about this week's task, and reflect on your learning so far

    • Plan a picture matching game

      Break down a picture-matching game into the steps you'll need to complete

    • Using grids to build a picture matching game

      Use the grid layout to start building the game

    • Time-based events

      Find out how guizero deals with time based events, and add a countdown timer to your game.

    • Peer reviewed assignment

      Expand on the game by making it 2-player, and get feedback from your fellow learners

    • End of the course

      Review everything you've learnt about GUIs over these three weeks

Who is this accredited by?

The CPD Certification Service
The CPD Certification Service:

The CPD Certification Service was established in 1996 and is the leading independent CPD accreditation institution operating across industry sectors to complement the CPD policies of professional and academic bodies.

When would you like to start?

Start straight away and learn at your own pace. If the course hasn’t started yet you’ll see the future date listed below.

What will you achieve?

By the end of the course, you‘ll be able to...

  • Experiment with different widgets that can be used to build a GUI
  • Develop a GUI that responds to the user through the use of events
  • Explain how event driven programming works, and the differences between an event driven program and a procedural program
  • Produce a countdown timer using guizero's built-in methods
  • Design several different GUIs, including a text editor and a picture-matching game

Who is the course for?

This course is designed for teachers delivering computer science lessons at GCSE level or equivalent. It’s aimed at teachers who have basic experience with Python. If you don’t have much experience with Python, perhaps complete Programming 101: An Introduction to Python for Educators first.

Who will you learn with?

I love technology and creating projects and learning resources for Raspberry Pi. As a child I wanted to be either a computer scientist, astronaut or snowboard instructor.

Who developed the course?

Raspberry Pi Foundation

The Raspberry Pi Foundation works to put the power of digital making into the hands of people all over the world, so they are capable of understanding and shaping our increasingly digital world.

National Centre for Computing Education

National Centre for Computing Education courses


supported by

Google logo

Learner reviews

Join this course

Start this course for free, upgrade for extra benefits, or buy Unlimited to access this course and hundreds of other short courses for a year.


Join free and you will get:

  • Access to this course for 5 weeks


Upgrade this course and you will get:

  • Access to this course for as long as it’s on FutureLearn
  • A print and digital Certificate of Achievement once you’re eligible

Unlimited (New!)
$279.99 for one year

Buy Unlimited and you will get:

  • Access to this course, and hundreds of other FutureLearn short courses and tests for a year
  • A printable digital Certificate of Achievement on all short courses once you’re eligible
  • The freedom to keep access to any course you've achieved a digital Certificate of Achievement on, for as long as the course exists on FutureLearn
  • The flexibility to complete your choice of short courses in your own time within the year
Find out more about upgrades or Unlimited.