Home > News and views > View all

How to manage student coding projects

Published: May 4, 2017 3 min read

STEM learning

Programming projects are central to computing, but managing them can tie you up in knots. Submitting and commenting code via email, printouts, screenshots, shared drives – these will get you by but don’t scale well.

The pros share code using Git or other version control systems – and teachers can use GitHub for free. The learning curve is steep, however, so what are the alternatives? CAS Master Teacher Dan Toms discusses his use of Trinket:

“If you’re involved with running a ‘code club’ you may have noticed their new Python courses.

The projects use Trinket an innovative system that allows you to embed a full functioning Python IDE into a web page.

Fig 1

My code club is attended by Y5 & 6 students and I was a little hesitant to introduce a text based language, but they loved it.

I was so impressed with Trinket, that I’ve started to adopt the system in my own lessons. I’m a secondary computer science teacher and teach programming at KS3, 4 and 5.

Trinket can be found on their website trinket.io and you can do a lot more than simply embedding individual programs.

In Trinket’s own words:

“Trinket lets you run and write code in any browser, on any device. Trinkets work instantly, with no need to log in, download plugins, or install software. Easily share or embed the code with your changes when you're done.”

Trinket fig 2 

Figure 2: One of my Trinkets, create links to share with students or vice versa

 

Trinket widgets consist of a text editor and Python shell side by side, the shell can be switched to a console if required. Each widget you create has a unique url, that can be shared. Every time you add code to the trinket you can generate a new url. This genius idea for versioning, makes it super simple for students/teachers to share work. They just have to paste the link to an email or VLE/LMS.

I use Trinket widgets in several ways.

  1. Provide students with working code they need to annotate or debug
  2. Providing different versions of the same program either for differentiation or staging a larger project
  3. To give meaningful feedback on a students own code

As we know feedback is the most important thing. Unless speaking face-to-face, I’ve always struggled giving written feedback on students’ programs. It’s particularly hard if the programs are  long and not well structured. Trinket makes it a lot easier. They have this thing called courses. Essentially you create a very simple structure, and then add your trinkets to it. Like an LMS the students sign up to your course. As soon as their in, you can see their code, run it, make corrections or annotations and then send it back; simple.  

Trinket fig 3

Figure 3: Trinket courses are a great way of tracking student progress

 

Trinket widgets can be coded in either Python 2 or 3, the basic widget defaults to Python 3. Most importantly, Trinket is free to use!”

How do you manage programming projects in the classroom? Pen annotation? Drop boxes? A wing and a prayer? Share your tips and ideas with our secondary teacher community here

And if you’re looking for ways to get started with the ESA “Astro-Pi” project, there’s a free Sense HAT emulator on Trinket. We look forward to next year’s competition.