đź“Ś Also check out my talks and blog posts.
Between 2015 and 2021, I taught hundreds of students how to develop software in JavaScript and Node.js. (see the Past interventions section, below)
During that period, I experimented the use of various tools and developed my own, to help students understand and practice more effectively, and to assess their understanding reliably and fairly.
Here is a list of tools I have regularly used to teach classes and assess the understanding of my students.
- Markdown + Jekyll on GitHub Pages: I write my course material (i.e. mostly guided exercises) in Markdown format and publish it for free, thanks to GitHub Pages.
- GitHub private repositories: I maintain several private repositories in GitHub, to keep the exams I gave to all my students, and their solutions.
- Google Classroom is a platform that one of the schools where I teach has been using to create a virtual space for each classroom, to support communication between students and teachers and to submit assignments.
- Google Forms: to gather code and answers from students, during paper-less exams.
- Straw Poll: to regularly poll the progress of students on the exercises I gave them. It helps me decide when it’s most helpful to provide more tips on how to solve a particular exercice, to prevent students from being stuck for too long. Especially useful for remote classes.
- Tech.io: During COVID-19 lockdown, I wrote exercise testers on the Tech.io platform so that students get useful feedback on their code while working autonomously on coding exercises.
- Repl.it: I use this free online IDE to quickly write, re-format, run and share JavaScript programs to my students.
- Codingame: I use this free online server to make my students collaborate on solving algorithmic problems together, by mob programming in the classroom. It’s also a fun way to train individually.
- I developed énoncé to publish and distribute paper-less exam exercises to my students, expressed in Markdown, and using subtle variants for each student (based on their Student ID) to discourage them from exchanging answers.
- gclass: a CLI to quickly collect the projects submitted by my students through Google Classroom assignments, and store them in a flat text file, for offline batch processing.
- classroom-submissions-to-pdf: to generate a PDF file that contains the code submitted by all my students on a Google Classroom assignment, so I can review and annotate it on my iPad. (see video demo: How to evaluate students’ code by hand, and without paper - YouTube)
- Survey Response Browser: to generate a PDF file that contains the assignments submitted by all my students on Google Forms, so I can review, annotate and return their responses using my iPad. (e.g. thanks to PDF Master)
js-test
: to give auto-graded exercises or exams (including coding exercises) to my students. I wrote this open-source toolkit to help me design exercises and auto-grading scripts, deploy them online, gather answers from students and generate a graded feedback sheets that I return to students. (see video demos: 🇫🇷 Évaluer efficacement ses étudiants - YouTube)
Check out this living document: js-test competitors & alternatives (for reference) · Issue #61 · adrienjoly/js-test
Past interventions
2019-2021
2018-2019
2015-2018
Between October 2015 and June 2018, I was giving a Web Programming Basics with JavaScript course (~40 hours) to 4 classes of 1st-year students, at EEMI (Paris, France).
Last update was June 5th, 2021. History
Follow @adrienjoly on Twitter.