DEV Community

Cover image for Creating a book-driven course: is it worthwhile?

Creating a book-driven course: is it worthwhile?

Stefano Magni
Passionate, positive-minded Front-end engineer (working remotely) / Speaker / Instructor
Updated on ・4 min read

Writing a book containing a whole course that helps the instructor in case of jams and allows the attendees to follow the course at their own pace. Why?

About the cover image: Me teaching at the Italian ReactJSDay conference. Thanks to Jaga Santagostino for the photo.

In late 2019, I taught my first Front-end testing course. I talked for four hours, driving the attendees through an unusual path: starting from the top of the Testing Pyramid instead of from the bottom. I would have started from a low-quality E2E test going through all the UI Testing Best Practices to become a UI testing winner.

My main doubts were: what allows me to track down the journey I want my participants to drive through? Should I use a text file with a list of bullet points? Should I use some slides?

At the same time, what I could leave to the attendees to return on the topics later on? How could I avoid them annotating what I say? (taking notes distracts, and distractions have a high cost because attendees could get lost for 30 minutes in a course where every detail is important).

What solves all my problems at once? Writing a book! I don’t focus so much on the in-person course but on creating a book that allows everyone to follow the journey step by step.


The design process is:

  1. Listing all the best practices I want to teach

  2. Creating a journey to connect all the best practices

  3. Preparing a series of exercises for every step of the journey

  4. Writing a chapter for every exercise

  5. Polishing the book and making it accessible to the attendees

The efforts

  • Since you write the book for the public, the attention you put in is entirely different compared to a list of notes for yourself.

  • Every chapter goes from a long code snippet to another. It includes the starting exercise, the ending exercise, and all the diffs every paragraph describes. Writing down all the steps of the reasoning requires a considerable amount of time.

  • Sooner than later, you find yourself adding a lot of media to the chapters. Both screenshots and videos take time.

  • Then, you must re-read the whole book to find errors and check that the path works and makes sense.

FYI: it took 60–70 hours to write the book for a 4-hour course! 😱

Is it worthwhile? It depends. In my case, it worked exceptionally well! Go on to read all the benefits of such an approach.

Benefits for the attendees

  • The course goes off without a hitch, with no downtimes.

  • Attendees can follow the course at their own pace. Someone is faster and looks at the following chapters during the Q&A moments, while someone is slower and makes up during the breaks.

  • Having the whole book containing the exact words and examples is valuable for going back on the contents later.

Benefits for the instructor

  • You objectively realize if the exposure flow works or not. If writing is hard, chances are the flow is not clear in your mind or that it doesn’t work.

  • Whatever goes wrong during the course, you are safe. You’re writing a snippet, and it doesn’t work? Copy/paste the code from the book! Do you have a memory lapse? Read the contents from the book!

  • For me, following a pre-defined flow requires fewer efforts than improvising.

  • You don’t have to think about where to place contents like instructions, descriptions, about-me page, etc., because they naturally fit into a book.

    Please note: it doesn’t mean you have to learn the course by heart and then to recite it. Body speaking and showing passion is important while speaking/teaching.

Post-course perks

  • Teaching the same or a similar course again is easy.

  • contacted me, and they’re transforming my book into a course on their platform right now (April 2021).

  • The book is a collection of valuable resources. You can even publish them individually or use them when people ask for help.

To leverage the post-course perks, you should think of an update strategy too. In my case

  • Renovate and automatic merges allow me to keep it updated with the latest dependencies update.

  • Since the whole front-end testing world moves at an incredible pace, I trace everything valuable to update the book for the next course.


Creating the book has been hard but the quality of the course and the satisfaction of the attendees completely rewarded me.

In economic terms, the next courses will return the investment 😉

Thanks for reading, I look forward to knowing your approaches and experiences 😊

Special thanks

  • Fabio Biondi: he suggested me to create the book

  • Cesare D’Amico: he offered me to teach at the Italian ReactJS Day conference without prior experience ❤️

  • Simone D’Avico and WellD: I asked their developers for a dry run of the course. We spent a lovely day together 😊 (and I always remember Simone’s feedback “They never wrote a test in their life, now they’re crazy for Cypress” 😁)

  • Jaga Santagostino: my first course was a joint venture 😊

  • Paolo Combi: helped me with the dry run of my last course

Last but not least: Matteo Ronchi, because he reviews every single article of mine 🤗

Discussion (0)