Things I learned from doing my first workshop
Hi š you're reading a pretty old post! I started writing on here back in high school and this page may not reflect my current views. Recommend checking out related articles and categories down below, I've likely published more recent thoughts on this topic.
Itās easy to both underestimate and overestimate your audience at the same time. Grasping the concepts isnāt hard, but using them in code ... oof.
16 people showed up this past Sunday morning to learn about React and d3.js in a hands-on manner from Freddy Rangel and me. We sold 18 tickets: most at the $400 early bird price, some with a small discount, and the two volunteers got theirs for free.
All of our attendees were amazing.
It was great to see everyone nodding in deep understanding to anything Freddy and I would say:
Freddy or me: āThis is how this thing works.ā
Them,nodding: āYes, it does.ā
Freddy or me: "This is why you do a thing this way and not that other way.ā
Them, nodding: āOf course, of course. Thereās no other way.ā
The whole time this was happening, I was shitting my pants and thinking, "Why the hell are these people here? Everyoneās going to ask for a refund. Whyyyyyy?????ā.
Two people left early. They said they expected a more in-depth workshop and that the content was far too easy for them.
My heart sank. "Fuck. I knew it. This sucks. I suck. We completely misjudged the audience.ā
There were no refunds after the workshop. Nobody asked.
At least, nobody asked after the workshop. There were many refunds before the workshop. They were a valuable lesson.
You see, $400 is a lot for a full day workshop. I didnāt think it was that much. Many workshops have a far higher price point.
$400 is at a price point where many people no longer pay for the workshop themselves. They might buy the ticket, but then they want their boss to sign off on the purchase or to reimburse them. They may need their boss to pay for it in the first place.
I learned that this means we have to adjust our marketing. Future workshops have to be sellable to you and your boss. You canāt just walk up to your boss with a random EventBrite page printed out and say, āYo dude, I wanna go learn stuff. They want many money. Can I go?ā
Of course your boss is gonna scoff and say, āDude, who are these fools? Iāve never heard of them.ā
You have to get the bossās trust, not just the attendeeās.
How? ⦠I donāt know yet. Weāre going to have to figure that out. :)
Writing code is hard
As I was stood there shitting my pants about the imminent refunds and everyone walking out because my part of the workshop was crap, something magical happened.
Everyone understood the concepts, but they couldnāt do the code.
After I live-coded a rough guideline for The Next Step⢠in our sample project, I gave people 20 minutes to implement itā¦
40 minutes later, nobody had it working.
Hold up there, you! Weāre onto something! Even when people know what they have to write, even when they understand why they have to write it, how to write it ā they still canāt. They write the code, and it doesnāt work.
Itās a few hundred lines of code, and it was mostly boilerplate. To be honest, itās hard. You can grasp the concepts immediately, but the hard part about code is all the fiddly bits in between.
Stuff like getting your variable names just so, structuring your files just right, and putting the right bit in the right file. You know, things like that.
Typing is also very error prone.
This was a big revelation to me. I was both underestimating how quickly my audience would understand the concepts and overestimating how quickly theyād be able to apply it.
For future workshops, I have to do two things: cut down on the theory, and make the practical parts easier.
I havenāt quite figured out how to make the practical exercises easier. Iām thinking a combination of a linter, a test suite, and pre-written code that people fill out. Iām open to suggestions.
People got their value
Ultimately, I think people got their moneyās worth. Those who were not as advanced in the ways of React and d3 learned a lot about putting them together.
They may have gotten too much theory, but having Freddy and I to lend a helping hand when something went wrong with the code was great. We were able to unstuck people quicker than they could unstuck themselves.
After all, debugging is a game of educated guessing. The more code youāve seen, and the more bugs youāve been exposed to, the quicker it is to guess whatās wrong.
Many people said that just seeing how we use the tools and the guessing to dial in on a problem was a big benefit to them, especially when they were attempting to learn JavaScript and d3 and React and all the things all at once. Itās easy to get lost in the ecosystem.
Which reminds me: The best part about our attendees? Everyone was there because they wanted to solve a real problem. Everyone had a why for learning React and d3. Nobody was there just to Learn Cool Techā¢.
I like that. Thatās the way to go!
As for the advanced people? The ones who use React and d3 every day at work and are building amazing things I couldnāt dream of understanding?
They got their value, too. For them, it was the 20-minute conversation in the hallway, or that one specific question they asked in front of the class. They had a sticky problem, and they needed a suggestion or two that was specific to them.
Sure, an email wouldāve been fine. Iād love to help. But there is value in unstucking a team of engineers who have been banging their head at something for weeks.
Iām not completely sure itās worth sitting through an entire workshop just for those 20 minutes though⦠Iām exploring ways to serve those people better.
Doing it again? Totes.
So, am I doing it again? Yes, absolutely.
The workshop didnāt sell out, and it wasnāt perfect. But doing it was fun as hell. We had a blast preparing the material, and it was a mad dash to the finish line at times, but it was totally worth it. Sure, we only made half of what the same time investment wouldāve made with freelancing or consulting, but hey, we had way more fun.
Besides, I already have the material now. I might as well tweak it and improve it and do it again some time.
Weāre already scheduled to do it again at ForwardJS in July. You should come. It will be better and much improved.
Now all I have to do is figure out how to market to bosses and how to make it cheaper for individuals without affecting the overall payout.
Ideas?
Filed under: BusinessProgrammingLearningSide Project


