Running an engaging workshop

Last week I helped run a workshop on Progressive Web Apps with Jo Franchetti and Peter O'Shaughnessy. We ran the workshop twice, once at Mozilla Festival (a 3 day web technology conference) and again at JS Monthly (a tech meetup). Both times we managed to get everyone in the room to leave with a working project and received some lovely feedback about the workshop itself.

How did we do it? I’m not really sure what made it go as well as it did, but here are some things that I think helped make it 💯 ✨ 🎉.

I split this post up into three sections, Before you start, During the workshop and After it ends, I then split it up even more to basically make it a check list you can use the next time you run a workshop.

Before you start

Plan for the time you have
Make sure everyone can build the thing in the time given. We had 90 minutes for our workshop. That gave us plenty of time to introduce ourselves, talk a little about the technology we were using and still have everyone build a project.

Plan for your audience: how much knowledge do they already have?
For both events we didn’t have much knowledge about our audience other than they are probably web developers and they chose to come to a progressive web app workshop. Some could have been experts and some beginners. We decided put a focus on making the workshop as “beginner friendly” as possible.

Find a good way to give your audience materials to work from. 
Rather than letting them start from scratch we gave them a template. Depending on what your workshop is on you may get them to clone a GitHub repo, download it from a site or pass round a USB stick. We decided to use Glitch which is an online IDE that lets you build websites without worrying about hosting and makes it easy to edit someone elses code. It also meant everyone would be using the same IDE, which makes helping people during the workshop a lot faster.

Make it fun
Our workshops were around the time of Halloween, we made the whole workshop Halloween themed. We gave out candy, made the slides and template spooky and even dressed up. We also made sure to make our demo engaging, the starting template we used was a fun little site that let you add stickers to your photos. Working on a fun project will mean people are more likely to want to do/finish your workshop and share what they made with friends.

Have written instructions
Those who are left behind can catch up and those who find your pacing too slow can skip ahead. It also helps make the workshop more self contained, so if you (or someone else) has to run it again in a few months you can refresh yourself of what it covers by reading through them.

Have volunteers ready that know the material
Volunteers are most useful if they have gone through the workshop themselves and know roughly what’s going on and what’s going to happen next. For this event myself, Peter and Jo all created the resources together and were going to help out on the day so we all had a good idea of how the workshop would run.

Do your own workshop
This will show you what errors you may run across and give you an example of what you will end up with. When I ran through it I was able to figure out what might cause a few issues and added in another explanation in the instructions.

Promote the event
Tell people you’re running it, tell people your excited to be there. It will build up hype and energy around the event and make people look forward to going. Personally if I think a speaker is enthusiastic about their talk I will be more likely to go see it. If you are passionate about your workshops topic: tell people!

During the workshop

Get people talking
We’ve all been there, you get to and event where you don’t know anyone, you sit down next to a stranger and everyone sits in more or less silence until the event starts. I hate this, you probably hate this, but this can be stopped. Before we kicked of the event we had people group up and come up with spooky Halloween names for each other. This got people talking, made the room friendlier and meant people would be less afraid to ask the people around them for help when they got stuck.

Give large breaks between steps
If you think it will take 5 mins to do a task give them 10, some folks will get stuck, many will get distracted and a few may be tweeting about how good your workshop is.

Go round and make sure no one is stuck
Do this from the very first step, some people are scared of admitting they can’t do the thing and you don’t want people to fall behind from the very beginning. This also gives you something to do in the breaks between each step.

Adapt to your audience 
If the audience is struggling show them how to do it on stage. I don’t like doing this when I don’t have to, as I want the attendees to leave thinking; I solved the problem and did the thing, not I copied something from a screen.

After it ends

Give out your resources 
Tweet out links to resources you used: slides, demos, instructions. If the event has a slack or similar communication channel share them there as well. Attendees who didn't finish the project continue at home and folks who couldn't attend can see what went on.

Encourage people to share what they made
Try and get the folks who attended share what they made with friends. If your instructions are sound they should be able to follow along and still consume your content.

More resources

Check out the workshop slides and workshop code template we made and used.

Ari Vaniderstine gave a workshop about running workshops at Hackcon, it was very meta. Resources from that can be found here: https://github.com/arirawr/hackcon-workshop