A few years ago, I wrote a technical book on a topic I liked. Despite me not promoting it, it has led to many exciting opportunities. Let me tell you the story of how I became the right person at the right moment for this project and the tremendous impact it had afterward on the projects I worked on.
Developing “expertise” before the book
My first real job as a developer started in October 2011, and corporate life turn out to be very disappointing. I needed a way out, and I found it in Symfony, a popular PHP web framework in France. They had just released the new major version 2, a complete rewrite of the first version of the framework. Everything you knew from version 1 was obsolete. It was a tough choice for the framework team because many people felt left behind, but it was necessary to keep growing. As for me, I had a lot of enthusiasm to learn but no prior experience in professional web development. It seemed like a safe bet in promising technology.
There were not many good resources on how to learn the framework, and from what I recall, nothing or next to nothing in french. In a few evenings, I translated an excellent series of articles, Symblog, into French. This series was comprehensive enough to let me have a good grasp of the possibilities. I built a couple of small projects for myself thanks to these articles, which covered many topics in a shallow way. After that, I was able to dive deeper into more complex issues by myself.
I changed job and worked in a lovely web startup, in part thanks to this web “experience”. On the side, SEO started to kick in. People found the series of articles that was somewhat popular, and they liked it. When you googled “Symfony tutorial”, it was well ranked. One day, I decided to put a header on top of the articles: “I’m available for freelancing and training, please get in touch”. I had few expectations, but this was an experiment with low efforts but possibly lovely outcomes.
Giving professional training
Those two lines of text on top of my blog and articles quickly led me to give professional training. I felt like a total impostor at first: despite having played deeply with all the relevant aspects of the tool in question, I had little professional experience, one or two years at most.
I accepted to give a training anyway, transformed the material from the articles into a large set of PowerPoint slides and exercises that I could detail over 2 or 3 days. I booked a train and a guesthouse (Airbnb was not that popular at the time!) to Lilles, where my first client was, and held my breath for two days.
The first training went very well; it was not the catastrophe I expected, my first client −a freelancer− was delighted by the power those two days gave him. It gave me confidence that I had valuable expertise and that I should not downplay it. Then came a second training session where I raised my rate, then a third, and so on.
People who came to me were quite diverse. Some people liked the tutorial series, but they were not confident enough to use this resource by themselves to start working for clients right away. Some didn’t even read the articles and needed more hand-holding. Some wanted the complete team to be on the same page on day 1, something a few days of training can offer.
There were not enough training sessions to make it a full-time job, but I was doing this on top of my day job anyway, and to me, it was more a game than something I was taking seriously. Also, customizing my training to suit my clients’ needs was a lot of work, and I did not want to do that full time.
A few training sessions later, during the summer of 2014, a couple of things were clear:
- the framework I invested in was bound to stay
- I know more than enough to teach it to people
- Small training sessions, even with complete teams, do not scale. How can I reach more people?
I was considering self-publishing a book. I had all the elements: knowledge, training experience of what is complicated to people, material, sample exercises. The difficulty with self-publishing lies in promoting the book. I was pretty afraid of both having to write the content and market it. A few people were doing this at the time, and it was already clear that the marketing around the book could make or break the sales.
I spent a couple of days pondering this question. Can I do an excellent job at marketing this project to reach way more people than through my articles and training?
While I was unsure, someday of august, an email came in. A sales rep from Eyrolles (the french O’Reilly, leaders in technical publishing) wanted someone to write a book for beginners with Symfony, because they had nothing on their catalog on the topic. Thanks to the good SEO that a few good articles and years of occasionally writing online had provided me, he had found me. This book was exactly on my positioning. I was not sure I wanted to work with them. When in doubt, get the deal, see the terms and decide when you have enough elements before you.
First, I had to get the deal because I was (allegedly) not the only possible choice for writing this book. I was fast to reply and get the sales rep on the phone: this is an essential sales advice I had learned (and still use) on my day job; talk to real people, and doors will open in ways that are not possible with email only. I could demonstrate that I was a professional with enough experience and already some ideas, so I guess I scored some points. They wanted a sample piece of a chapter. In a couple of days, I wrote and sent something I thought was both good and easy to read for him (again: company pay money, but people buy, so do your best to convince people). He agreed to work with me.
Delegating sales to Eyrolles came at a high financial cost. Should they be popular, self-published books can make way more to their authors than classic publishing would ever do. They wanted to print 2000 books, sell them for ~30€ and give me around 8% of royalties. So at most 4800€ if they sold all the books.
I calculated how much effort it would be to write the book, decided that money was not my main motivation. I wanted the challenge of writing it, because I wanted to reach more people. Eyrolles provided that: the book would be available on Amazon and La Fnac (the french Barnes & Nobles), and selling 2000 copies was more than I thought I could sell if I marketed it myself, something I now didn’t have to take care of. I accepted.
Writing a 400-page technical book
Ok, so I had the deal, which was to write a 400-page book, but now I had to write its content. I remember googling “How to write a technical book”, because somehow I expected it to help have the book write itself. This page came up (many thanks to its author). One sentence struck me:
The book isn’t going to write itself. Writers write.
Yes, of course. What did I expect? I am doomed. 400 pages, why did I ever agree to this madness?
Commit to creating X pages or Y words/day.
That’s what I did. It’s probably the best advice I was given regarding writing. 400 pages is about two pages every day during 6-7 months, which is tough but doable.
I had a plan, a raw idea of the content I wanted, and some material from my prior training and articles to recycle or improve. I took a week of vacation and started writing as part of NaNoWriMo. Social writing helped me get started (which is the main problem for procrastinators), and after the first month, I could get started writing by myself.
Writing the book took one hour before work every morning and most of my evenings and weekends for about six months. I allowed myself one evening off per week and occasionally a day off during weekends. At the price of a considerable effort, it was a pleasant learning experience. It allowed me to improve my writing skills and to dive deeply into some topics. As Feynman says, the best way to learn something is to teach it.
I finished writing, proofreading, and everything I had to do on my end. Much later, while I was browsing a bookstore, I found a copy of the finished book in the software area. Today, it is still available online (Amazon, Fnac).
By the way, the publisher was supposed to send me ten copies, but they had my address wrong, and I never managed to have them send those books to the right address. I bought one myself that day at the bookstore.
After writing the book, I left work for a one-year traveling break. I let the book live its life during this period and enjoyed life with no constraints.
Sadly for the book, a couple of months after the release, it was quickly obsolete. The general ideas stay, but the code changes with the upgrades of the framework. A minor update of the framework right after everything was set on the publishers’ end broke a couple of things. People were disappointed (for very good reasons!) the exact code did not work. These problems hurt the reviews, but they sold a significant amount of copies anyway. Writing the initial book was so exhausting that I didn’t want to write an updated version. From a personal point of view, the initial ego boost of reaching more people went quickly flat. I was not in touch with the successful people, only with people who had complaints.
People frequently ask how much I made with this project. To be honest, years later, I have no idea. It’s a bit complicated to compute because royalties were spread over the years, I only received paper documents, and I was paid with about a year and a half of delay. From the back of napkin calculations, if you need money, you’ll make more by taking a second job at Mc Donald’s during the period in question than by writing for the classic publishing industry. In terms of workload, that’s at least comparable. So if your goal is to become rich with a side gig, don’t write a book.
When I came back to France a year after, I decided to become a full-time freelancer. There were 2 phases:
- in the first years, I talked about the book when I met clients to boost my credibility. It made me join well-established companies everyone knows in France, and I was impressed by the trust people had in me.
- now, with about a decade in this industry, these experience with popular companies and my network provide me with enough self-confidence to choose the clients I work with at the rates I want, with projects that matter to me. Interestingly, I do not talk about the book anymore, but people bring it up frequently (you quickly find it when you google my name). After a few weeks or so on a new project, people tell me that seeing I wrote a book on web development gave them a positive impression that made them want to work with me.
Recently, an old friend got in touch about a project that seemed out of my league. He told me The Book made me be his top choice.
What about you? Can you write a book? Should you write a book or teach what you know?
People with different personalities and goals have asked about what writing a book is like, but ultimately, what they want to know is how they can do something similar.
First, can you write a book (on anything)? Oh yes. It doesn’t have to be 400-pages long. Many novels are less than 50000 words long (words, not pages). Many business books are wordy and their ideas can be summarized with very little loss on a single page. Don’t waste your time, don’t waste ours, don’t aim for length. Aim for quality and consistency. You can start writing a 200 words article. It may take 15-30mn. Do it again tomorrow, then every day for a week. Then, try to write every day like this for a month. Bam, you wrote 6000 words. That’s three times the length of this article. It’s hard to get started, but it’s easier once the machine is running. You could write your own novel in a year at this pace. You can see that what seems a massive achievement to many can be broken down into a realistic system. Sure, there are problems (editing, structure), but it becomes easier after a while.
Then, should you write a book? Most of this article is anecdotal, and there’s probably no general rule. But here are some things you could consider:
- If you have been working on something for a while, I think you have what it takes to teach it, whether through training, on youtube, twitch, or on a book. Find something you are passionate about, and write a few words every day. In the long run, as we’ve seen, it adds up.
- Teaching is an excellent way actually to get better at your craft.
- Please don’t teach to look competent. The internet is already full of low-quality SEO-friendly LinkedIn-compliant bullshit.
- Share this work with the relevant people in your industry if you want it to have any impact.
See a typo ? You can suggest a modification on Github.