Before Your Workshop

We want you to feel comfortable and have fun during the workshop. We will have a very tight timebox within the course itself, so you will need to do some prep work in advance. Preparation is critical. By doing a little bit of work upfront we can save a great deal of time discussing the mechanics and move onto deeper problems.

Time Commitment

Plan for approximately two hours of total pre-course preparation time, plus the time to clone and build the practice repo.

Already a Scrum Alliance Member?

If you are already a member of the Scrum Alliance, please be sure to give us the correct email address associated with your existing Scrum Alliance account, otherwise your certifications could be affected. If you registered others to attend, please make sure they also receive this preparation information, as the emails we send to individuals sometimes get caught in spam filters.

1. Acceptance Criteria

As part of the course, and in the spirit of Scrum, you write the acceptance criteria for the training itself. In preparation, please prepare a minimum of 3 items that would make you say at the end of the workshop, “Wow, what a great workshop!” Detailed beats general or vague.

Examples:

  • I understand the importance of a cross-functional team
  • I have learned more about testing in the Agile world
  • I have a good understanding of Test Driven Development

Then shoot me an email, sharing a little about yourself as well as your acceptance criteria for the training.

2. Pre-reading and Video

Required Reading and Video

Seriously, please prepare beforehand. Successfully certifying in this workshop will depend on you having completed the preparation before the course starts.

3. Self-Evaluation

So I can tailor the workshop to the room, please rank yourself on three things: your programming language experience, Test Driven Development, and your use of the IDE.

Use a scale of 0 to 10, where:

  • 0 means “What’s that?” or “I can spell it!”
  • 10 means “I’ll be teaching the trainer a thing or two about that” or “I invented that!”

Bring your three numbers with you (or include them in the email with your acceptance criteria). There are no wrong answers, this just helps me meet you where you are.

4. Code Smells Review

A code smell is a hint that something might be wrong in your codebase. A smell isn’t always a problem, rather it’s a hint that a further look is warranted. Code smells originated in Martin Fowler’s Refactoring, and we will work with them throughout the course.

Please read through our Code Smells glossary entry, which catalogues the smells we will use in class (Bloaters, Object-Oriented or Functional Abusers, Change Preventers, Dispensables, and Couplers). As you read, identify which ones apply in your own code.

No Suitable Codebase Handy?

If your own code base is impractical to review, the Vue.js core repository is a decent size and has enough mess to practice spotting smells.

5. Team Collaboration Rules

Much of this course is about building software together, not alone. Please read these rules ahead of time so we share a starting point on day one.

Rules for Successful Collaboration

  1. Always be collaborating, instead of working on your own
  2. Aim for diversity to improve your work
  3. Work in the open so the team can see your work sooner
  4. Be humble and ask for help and feedback
  5. Meet regularly with a suitable cadence for your context
  6. Accept that it’s all guesswork and start small to learn more
  7. Build deployable small vertical slices to learn more quickly
  8. Keep doing the next riskiest item in order to reduce risks quickly
  9. Shorten your feedback loops, so that you learn faster
  10. Always be collaborating and reviewing your collaboration (always be learning, always be pausing to reflect on how you do your work)

Source: “Teaching Team Collaboration” by Bruce Scharlau

6. Set Up Your Development Environment

This is a hands-on coding course, so you must arrive with a working development environment. Please complete this step for both in-person and virtual workshops.

The Tennis Refactoring Kata comes from the Samman Technical Coaching community. We use it because it contains some of the best examples of code smells available, which makes it ideal practice for the work we will do together in class.

Clone and Build the Practice Repo

If you cannot get the repo to build, let me know well in advance so we can sort it out before class rather than burning course time on setup.

7. Using AI Coding Agents

GenAI coding agents (Copilot, Cursor, Claude Code, and the like) can be genuinely useful tools, and you are welcome to use them in your everyday work. During the workshop, though, I ask that you relegate them to giving you feedback on the code: reviewing it, spotting smells, and suggesting refactorings, rather than writing the code for you.

The purpose of the exercises is to gain a deeper appreciation for the engineering practices, not to produce the most code. If the agent writes the solution, you miss the very thing we came together to learn.

Know How AI Coding Fails

Before you lean on these tools, it is worth understanding where they go wrong. Read our short guide, AI Failure Modes for Agile Teams, so you can spot the failure modes when they show up in your own work.

8. Virtual Classroom Tech

For our virtual workshops we will be using a combination of online tools to deliver the training. You will need to prepare well in advance of the course start date, and pre-test all of these tools, to ensure that you’re able to fully participate in the entire course as soon as it starts.

You will need a solid internet connection and a computer that can handle video conferencing and multiple applications at once, a webcam, and a microphone (your computer mic is fine). Corporate Firewall? If any of these tools are blocked, switch to a personal computer and network, because certification will not be possible without your active participation using all of them. Please do not use a VPN. It doesn’t end well. On a single laptop monitor, seeing Zoom and Mural at the same time can be challenging. If you can, a second monitor makes a big difference.

We use the following online tools as our classroom. You can access all of them without creating any account or giving your email address.

Mural Tool

Mural is the virtual whiteboard where the majority of course activity will occur. It’s easy to use, but it’s important that you take a few minutes and familiarize yourself IN ADVANCE of your training with its tools and features.

  • PRIOR TO THE COURSE START DATE go to the “Get to Know the Mural Tool
  • Click on “View as a visitor”. You do not need to create an account or give your email address.
  • Review and practice with the different tools well before the workshop start date.

Zoom

You didn’t come to training to stare at a whiteboard. You came to learn about, and discuss, building software well. For that, we’ll need to use Zoom so you can see and hear Mark and your fellow attendees, just like in a classroom.

Prepare by having the Zoom app installed, and using the test feature to ensure you have audio and video working: https://zoom.us/test

Ensure that you are able to screenshare, so we can see each other’s development environments during the training.

Zoom comes in two flavours, a web app and desktop app. Most people who have technical problems in the training tried to use the web app.

To meet Scrum Alliance requirements for certification, you will need to be visible on camera in the Zoom Conference room during the entire class.

Real names must be used when logging in to Zoom.

Test your connection to Zoom well in advance of the course in case there are conflicts. Know how to use the Mute/Unmute and Chat features.

Zoom Emergency Contact

If something goes horribly wrong and you can’t connect to the course in Zoom while it’s in session, and you’ve tried everything else possible to solve the problem, text Mark right away and let him know: (613) 862-2538. Also send a brief text message with your name and then connect to the Zoom classroom by phone until connection is restored.

9. Preparation Checklist

When you have completed all preparation, please email us at contact@agilepainrelief.com and tell us, so we know that you, and your local system, are fully prepared for start of class.

All Participants

  • Review Scrum course preparation materials (reading and video)
  • Introduce yourself, and share your course Acceptance Criteria and self-evaluation
  • Read the Code Smells glossary entry and note which apply to your own code
  • Read the Team Collaboration Rules
  • Clone and build the Tennis Refactoring Kata, confirming the project builds and tests run
  • Read AI Failure Modes for Agile Teams, and note how we use AI coding agents in class (feedback, not writing the code)

Virtual Workshops Only

  • Know how to navigate within Mural and create basic elements (draw, sticky notes, etc)
  • Connect to Zoom Conference tool and test audio and video using webcam, earbuds/headphones, and mic
  • Confirm you can screenshare your development environment
  • Download local copy of course workbook pdf for occasional reference during course

FAQs

Do I have to be on camera the whole time?

Yes, it is a requirement of the Scrum Alliance, the certifying body that we work under, for certification. We will take breaks every hour so you will have plenty of opportunities to step away.

What if I miss class time?

Please let me know as soon as possible what is happening and why so I can help adapt to meet your needs. We’re an empathetic team, however empathy is easier when you know what is happening.

I’ll look forward to seeing you in class!

~ Mark