Running A Technical Workshop Like A Pro
Practical Advice For Software Testers
By Bas Dijkstra
Alongside my work on-site with clients, building automation solutions to help them test more effectively, I've been a trainer on various subjects related to automation for a number of years now. As such, I've prepared and delivered technical workshops dozens of times and made many a mistake in the process. I would like to give you some advice, pointers and suggestions on how to run a technical workshop like a pro, hopefully helping you avoid the same mistakes I've made in the past.
A Working Definition Of A Technical Workshop
Let's take a quick look at how the term 'technical workshop' is interpreted here.
A technical workshop is defined as a session where, next to the trainer discussing specific technical concepts, the participants spend a good part of the allotted time completing a number of exercises on their own machines. These exercises may or may not involve writing code.
So, what can you do before, during and after delivering a technical workshop to make it as pleasant an experience as possible? Let’s break down each section of the workshop to explore what you can do to make it a great technical workshop.
Before The Workshop
This is the most important stage of running a technical workshop. As the old saying goes, 'failing to prepare is preparing to fail!'. On the positive side, if you get the preparation right, there's an excellent chance that delivering the workshop will be a really enjoyable experience, and one that you likely want to repeat. Here are some pointers to help your workshop be successful.
Send Preparation Instructions Ahead Of Time
When you're planning on having the participants work on exercises on their own machines during your workshop, it's likely that they will need to download and install some software or complete other preparation instructions before they're ready to go come workshop day.
There's nothing more annoying, both for you as a trainer and for the other participants, than to waste valuable time tinkering with people's laptops when the workshop is underway. Make an effort to prepare detailed, fool-proof preparation instructions and send these out as far in advance of the workshop as possible. Aim to send them two weeks in advance, this gives participants enough time to complete them before the workshop day arrives. (Bonus points for creating a script that would help install all software and dependencies.)
One thing that tends to work really well is to include a little test at the end of the instructions that gives the participants feedback on whether or not they have completed the instructions successfully. For example, if you're asking them to install and configure a Java JDK, ask them to run 'javac -version' afterwards and have them compare the output with an expected outcome. This is an excellent way to reassure everybody that they're ready to start working when the actual workshop starts.
Getting Feedback Is Important
Another tip is to give your instructions to a coworker or friend and ask them to complete these and give you feedback. It may surprise you how things that seem obvious and self-explanatory to you, can be ambiguous or unclear for others.
Be Available For Questions
You can write the clearest and most extensive instructions, but there's still a good chance that people will have questions about them. In order to save valuable time on workshop day, make yourself available for questions to the participants by including an email address at which they can reach you in case they run into problems.
A Backup Plan For Prep Instructions
No matter how much effort you spent creating your preparations instructions, there's a good chance that not everybody receives them, or even when they do receive them, do not follow them for some reason. There is no way to avoid this altogether, but there are still things you can do to reduce the risk of facing a group of people with a zero percent preparation completion rate.
First, one week before the workshop, you or the event organizer should send participants a reminder, with the instructions. Second, at the beginning of the workshop, ask who of the group has not been able to complete the instructions (don't judge them, just ask). Ask those who say 'no' what issues they encountered completing the instructions. If it's a small fix, fix it, if it takes more than five minutes, let them pair with someone who has successfully prepared their system for the first part of the workshop. Then ask them to catch up during the first break of the day.
Consider Your Environment Carefully
The biggest challenge with technical workshops are the number of ways in which technical issues can negatively influence the experience for you and for the participants. There's no way you can mitigate all the risks, but here are a number of quick tips that have helped:
- Write preparations instructions so that they apply for all major operating systems (Windows, OSX, Linux)
- Specify versions for the software that they need to install (example: don't assume everything runs under Java 10)
- Try to avoid working with VMs. Sometimes, they're clunky and slow and cause more harm than good. There's no substitute for local installs.
- Avoid having to use the Internet during the workshop as much as possible. This applies especially when running the workshop at a conference. Most venue WiFis can be less than perfect.
- Try not to depend on external applications and test systems. Experience from the author's past: I learned this the hard way when I first delivered an API testing workshop and prepared all my exercises to run against a public API that was down on the day. When possible, run things locally with mocks or a local server to avoid issues with dependencies which might not be available.
Be Sure Of Material Length & Flexibility
When running a technical workshop, the level of experience and technical expertise of the participants is often unknown. This means you’ll have to be flexible to allow for a wide range of skill levels. Prepare enough exercises to fill 1.5 times as much time as you have.
For example, for a full day workshop, prepare exercises as if you had a day and a half long workshop. For a 2-hour workshop, prepare enough material to fill 3 hours. There's no way of knowing how quickly people progress through the material, planning more assures people are engaged throughout the length of the workshop. It's better to send the participants home with additional material which they can go through in their own time than realize that you're done at 3 p.m. when the workshop was supposed to last until 5 p.m.
Learn About The Venue
There are a large number of factors which can influence the delivery of your workshop. Many factors are related to the venue where you'll be performing. This can be anything from bad lighting and unfortunately placed load-bearing pillars in the middle of the room, to having to share three power outlets between 25 participants. You can't fix it all, but having more information beforehand can save you from a lot of stress on the day of the workshop.
During The Workshop
Having prepared yourself as best as you can, it’s time to get started with your workshop. While nothing beats a meticulous preparation, there are a number of things you can do during your workshop to make the participants' experience even better.
Arrive Ahead Of Time
Arrive at the venue well ahead of time. This is not just in your own best interest but it also gives you time to welcome and get to know participants arriving early and maybe even help them get through some final preparation issues. Having to set up everything in a frenzy because the workshop officially began three minutes ago does not equal a relaxed start of the session. Also, this allows you to set up your own laptop, ensuring your slides can be projected and take a last coffee/tea/bathroom break before the workshop starts.
Keep Track Of Time
It is easy to get carried away and lose track of time when you're deep into talking, teaching, and facilitating. However, respecting the time and agendas of the participants is generally considered to be a common trait of any good facilitator, so make sure not to let things get out of hand, timewise.
- Be sure to start on time. This shows respect to those that have taken the effort to show up on time.
- Be sure to end on time. This is respectful to those who have other commitments afterwards.
- Make sure to stop in time for lunch. This is respectful to everyone and gives you a breather, especially if your workshop is a morning session or a full-day session.
Take Frequent Breaks
There's a reason it's called a WORKshop. Your audience will be working hard to process and apply the knowledge you're bringing. As with all cognitively intensive tasks, it's a good idea to take frequent breaks to allow them to get some coffee, visit the bathroom, or go outside for fresh air. They'll thank you by being much more attentive when they return.
Keep Your Audience Engaged
As your workshop progresses, you don’t want to have your audience disconnect from what you’re teaching and let them zone out or start doing other things. One way to keep them engaged throughout the workshop is to ask them to present their solutions to the exercises you give them to their peers. This will likely result in much more frequent discussion and engagement than if you would simply present all of the answers yourself. If possible, present them with a small gadget whenever they succeed (conference stickers, for example).
Be Able To Adjust Pace
One of the most difficult things to 'get right' when you're hosting a workshop is the pace. Since it's highly likely that you don't know the level of experience of your audience with the subject you're covering, the pace becomes a very important factor to monitor. Especially if you are hosting a workshop for the first time, you likely aren't familiar with your own pace and the time it will take an audience to go through your material and exercises.
One thing that works really well is to be very open about this and simply ask them regularly about the pace and if they are comfortable with it. Ask as often as you feel it might be necessary. The best times are either right before or right after breaks and meals.
No matter how hard you try, you will always go too fast or too slow for some, there is no way to please everyone. When in doubt, lean towards going a little slower and making sure everybody stays along for the ride. Encourage those who understand the material better to help those around them.
There will be some people in the audience that tend to find their own way to go faster, or learn more, by experimenting with the tools and exercises at hand beyond the exercises you've presented them with, and that’s OK. If you discover people doing experiments, take note of what they are doing and ask questions. It might be possible to incorporate some of what they are doing into another version of the workshop at a later date.
After The Workshop
Before you know it, the time has come to wrap up your workshop. That means it's almost time to relax and enjoy the feeling of success. But first, there are some things you can do to make the experience even more pleasant for yourself (the next time you'll be delivering the workshop) and the participants (once they return to their workplace to apply what they've learned).
Give Pointers & Summaries For Further Exploration
At the end of the workshop, give an overview of what you have covered throughout the session, and what the attendees hopefully have learned in the process. This is a nice way to wrap up the day to make sure all the topics and takeaways were covered. You can go the extra mile and give them some pointers for further exploration of the topic covered. Great examples are books, podcasts, blog posts, video's, and other references. Lead a wrap-up discussion about what they have learned. Talk about ways the learnings can be applied to their careers or workplaces, and let your participants suggest ways they might be able to apply what they have learned.
Asking for feedback is scary. So is giving feedback. That doesn't mean that you should skip it, because no matter how well you've done, there are always things that can be improved. Make a habit of asking the participants to leave feedback with you, and make it as easy for them as possible. Some ways in which they can give feedback are:
- Ask at the end of the day. This is the most direct form of feedback, but a lot of people tend to be overly positive or not willing to speak out at all, so you might see skewed results in this way.
- Ask participants to send you feedback via email and/or an online feedback form. A lot of people won't take the effort to do this, though, so you might not get as much feedback as you'd like to have.
- Use a whiteboard, or something similar, at the entrance and ask the participants to place a sticky note in one of three columns: good, neutral, bad, with the option to add some comments on the sticky note about what they liked in particular.
- Another option is a paper survey with questions which they can fill out towards the end of the workshop. Offering a small reward, like a cookie or a candy, encourages people to fill out the survey.
Distribute Workshop Materials
Make a habit of sending the slides, exercises, answers, and any additional learning material you have used in the workshop to the attendees. This is in the best interest of both parties. It makes it easier for the participants to review and apply what they've learned, and it is an excellent way of continued networking.
Relax & Reflect
Now that you're truly done, make an effort to relax and to reflect on what you have accomplished. Preparing and delivering a workshop is hard work, and you've earned some relaxation. When reflecting, try not to focus just on what you could have done better which is an easy trap to fall into, instead be proud of what you have done. Treat yourself to something you enjoy!
Delivering workshops is one of the most rewarding things you can do. These types of workshops require a significant time investment from everyone involved. After you've decided what you want to teach the participants, it could take you a lot of time creating slides, examples, exercises, answers to the exercises and preparation instructions. A big chunk of this time is spent teaching a course for the very first time, but don't underestimate the time it takes to process feedback and update the course material when you're about to deliver a workshop for the second, or third, or fifteenth time.
Bas Dijkstra is an independent professional who takes pride in helping teams and organizations improve their testing efforts through smart application of tools.
He is also a trainer on various subjects related to testing and automation. He lives in the Netherlands with his wife and two sons. When he’s not working, he likes to go out for a run or pick up a good book (he is particularly fond of British detective novels).
He can be contacted at firstname.lastname@example.org, on LinkedIn or via Twitter @_basdijkstra.
Become an MoT Writer
We’re looking for authors to write software testing articles for The Dojo. If you are passionate about software quality and love to share your expertise, then come and work with us!
TestBash San Francisco
Last chance to get a ticket! Book yours today and make sure you don't miss our truly outstanding US software testing conference!