This is the second of a series of Videos we’re releasing that cover key concepts of Python using Trinket. Below the video you’ll find interactive trinkets with the exact code you see in the videos! This way, you can follow along as the video plays. If you’d like more great video content, check out Python Game Development for Beginners, a video we made with O’Reilly Media! Or, find other free video posts on this blog here.
This is the first of a series of Videos we’re releasing that cover key concepts of Python using Trinket. Below the video you’ll find interactive trinkets with the exact code you see in the videos! This way, you can follow along as the video plays. If you’d like more great video content, check out Python Game Development for Beginners, a video we made with O’Reilly Media!
Dr. Rhett Allain is an educator, author, and blogger who’s fascinated by physics. In his books and on his blog for Wired he explores the wacky calculations behind cool things, real and imaginary. From the physics of Stephen Curry’s Jump Shot to the Center of Mass of Thor’s Hammer, Allain consistently amuses an interests himself and his readers with great insights into the physics around us and in our culture, and he often uses code to make the calculations.
In this interview, Allain talks about how he learned to code and how he’s using it to enrich himself, his readers, and his students.
You can find other interviews we’ve done with educational innovators here.
Elliott: How do you use code in a Physics classroom?
Rhett: For my introductory physics courses and labs, I now have the students make at least one numerical calculation (it doesn’t have to be in Python). The calculation should find the motion of an object with non-constant forces. Here’s a post I wrote with more details (including student complaints): http://www.wired.com/2014/02/isnt-physics-computer-science/
Dan Aldred is an exceptional teacher, even amongst the already great bunch we have the pleasure of working with every day at Trinket. In addition to teaching sophmores (Year 10s, as they say over in the UK), Dan puts all of his educational material online at canyoucompute.co.uk, tecoed.co.uk and cambridgetech.co.uk. In this interview, Dan talks about how he got into coding, his love of Python, and the importance of the online network of teachers he’s connected to.
You can read more of our interviews of educational innovators here.
Elliott: How did you first learn to code?
Dan: As a child I had an Atari ST and created a simple password diary that required a password to enter and read the entries. You could add new entries and then lock them away from prying eyes. I enjoyed the thinking side, thinking how I could create the diary, what features would it have and how I would use the code. There was no internet so the only reference I had was the user guide that came with the computer. I used to try out various codes to see what would happen or use the ‘help’ function to list all the possible commands and then give test them out.
Code Club is one of the most innovative coding education organizations active today. It uses teacher-led, volunteer-helped, project-based club activities to get kids across the UK hands on with real code after school. Rik Cross has been the Head of Education for Code club for nearly a year and is tasked with creating and revising Code Club’s curriculum to keep it fresh and relevant for the Club’s young participants.
In this interview, Rik talks about how he approaches designing lessons in Web Development, Scratch, and Python for the club. He’s also embedded his favorite Scratch project and his favorite HTML Trinket, so this interview should be as fun and engaging as Code Club’s projects are!
This is part of a series of interviews we’re doing of educational innovators. You can find other interviews in the series here.
Elliott: First of all, tell us a little bit about CodeClub. When did it get started, when did you join, and how is it growing?
Rik: Code Club is a network of free volunteer-led after-school coding clubs for children aged 9-11. Code Club was started in 2012, to help address the skills gap that teachers were facing due to the introduction of the new Computing curriculum in England. We match teachers up with volunteers who have some knowledge or interest in programming, and together they guide and support children as they learn to program by working through the projects in our curriculum.
I’ve been with Code Club for about a year, and have seen Code Club grow a lot in a very short space of time. We reached 2,500 clubs in the UK this month, and we aim to have even more children learning to program through Code Clubs by the end of 2016!
Elliott: What is your role at CodeClub? How does what you do fit into its mission of spreading coding literacy throughout the UK?
Rik: I’m the Head of Education at Code Club, and my main role is to oversee and develop our curriculum. My aim is to teach computational thinking and programming skills through fun, engaging projects. This way, children can see that programming is incredibly empowering, and can become active producers rather than passive consumers of technology.
Our projects are suitable for children of a range of abilities, and each project includes a number of ‘challenges’, which give children a chance to apply the skills they’ve learnt in a creative way.
I also think that it’s really important that children can see the relevance of programming away from the field of Computer Science, and so we put emphasis on the variety of ‘things’ that children can make with code, rather than focusing too much on the programming concepts themselves. We have lots of cross-curricular projects in areas such as art, music, animation and storytelling, with lots more to come.
Elliott: Can you tell us a little about the projects and curriculum you’ve been making, maybe with an example of one of your favorite exercises?
Rik: Our curriculum currently teaches computational thinking and programming skills through projects in:
- Scratch (a block-based, graphical programming language);
- HTML & CSS (the languages for writing and styling web pages);
- Python (a text-based programming language).
Most recently, I’ve been developing our existing HTML & CSS curriculum, and one development is the use of Trinket to allow children to create web pages online. Trinket allows children in our clubs to easily build web pages without installing any software, or encountering any of the restrictions sometimes associated with programming on a locked-down school network. Trinket also allows children to share their creations, which gives them an audience for their work, and helps them to see the relevance and importance of the things they’re creating.
My favourite projects teach programming concepts whilst allowing children to be creative, experiment, and even take risks and make mistakes along the way. We certainly try to make sure that Code Club projects have these qualities.
The ChatBot project teaches selection (if and if…else statements) through making an interactive talking robot. Children create a robot that asks the user questions, and uses selection to decide on an appropriate response or action. Once children have learnt the concept of selection, they are free to create their own robot with it’s own unique personality.
Click the green flag to start a basic chat with the Robot:
The ‘Tell a Story’ project teaches children about HTML tags, through writing a story in a comic book style. Children learn how to use tags to create content, and then use this knowledge to publish their own story.
Elliott: How do you test the projects and get feedback from your volunteers and club participants?
Rik: I have my own Code Club each week, and my club love testing out new project ideas. Some of the ideas don’t become Code Club projects, but many do. Some of the ideas for projects have even come from children telling me about the things they’d like to make, such as the Create Your Own World Scratch RPG project.
These new projects are then shared with a small group of volunteers who have helpfully agreed to test out new projects. Anyone who would like to get involved with testing out new projects can email firstname.lastname@example.org.
At this stage, the project is then added to our website and is made open-source on our GitHub page. Our curriculum would not be of the quality it is without the input and support we get from our amazing community. We always welcome any suggestions for improvement, and many of our projects undergo small amendments from talented volunteers and teachers from around the world.
For those wishing to have their say on new projects, there is also a project feedback survey at the top of each new project. Alternatively, you can email email@example.com with your feedback.
Elliott: What was the path that led you to CodeClub?
Rik: Before working for Code Club I spent 10 years as a secondary ICT and Computing teacher. I have a Computing background, and with the introduction of the new Computing curriculum in the UK I found myself more and more involved in teaching both children and other teachers the fundamentals of computational thinking and programming. I really identified with what Code Club were trying to achieve, and I guess the natural progression for me was to help as many children as possible to see the power that learning to program can give.
Elliott: What’s next for the CodeClub curriculum? Any plans that you can share?
Rik: We have lots of ideas, but want to focus on developing the things that our Code Clubs want. Code Club volunteers and club members will soon receive a survey asking them how they’d like to see our curriculum grow. However, from speaking to volunteers we have had requests for projects on music-making, Minecraft mods, physical computing and lots more!
Elliott: Where should our readers go if they’d like to learn more about CodeClub, see more of the projects and curriculum you’ve made, or get in contact with you?
Rik: Anyone wanting to learn more about Code Club or get involved in running a club can visit our website. Our volunteers come from a wide range of technical and non-technical backgrounds, and our website includes all the information needed to get started, including comprehensive volunteer training for those new to programming or working with children.
Our projects can be found at projects.codeclub.org.uk and our curriculum is developed in the open on GitHub, where we welcome any comments, feedback and suggestions for improvement. Alternatively, get in touch at firstname.lastname@example.org.