Denis Bakhvalov

Reflections on Writing a Book. Part 2.

Categories: personal

29 Nov 2020


Subscribe to my newsletter, support me on Patreon or by PayPal donation.


In my previous post, I shared some numbers about my book and what tools I used. In this post, I would like to discuss more sophisticated things, like mental roadblocks, that every writer inevitably faces.

Writing a book is a very time-consuming thing. You cannot just sit and finish it in one evening. You cannot even do it in one month. It took me a year to finally produce something that I could call a completed book. Just like running a marathon, you have to make small steps to get to the finish. Writing a book is no different: section by section, you compile the final manuscript.

If you have ever run a long distance, you would know that this is not the most pleasant thing to do. It hurts! You constantly want to quit running. I bet every writer experiences the same thing during the entire process of creative work. It’s something that Steven Pressfield calls “inner resistance” in his famous book “The War of Art”. I read this book at least three times during the last year, and still, I succumbed to inner resistance many times. There were days when writing another chapter was the last thing I wanted to do. My mind was wandering, looking for distractions. It takes a lot of self-control to sit and work on the book, especially when you don’t want to do this and there is no finish line in sight. The fact that I finished my book tells me that I somehow won this battle. There is one thing I realized: discipline is key. It is the most important thing you need to write a book.

Like any other human, I’m vulnerable to procrastination and other demons. And every time I slipped another day of writing, it became harder for me to get to work the next day. The thing is: discipline is a muscle, and like any muscle, it can be trained. Every small win creates positive momentum and builds the right wires in your brain. I found for myself that the discipline muscle can be developed through sport exercises. Every time I missed my workout, I’m more likely to miss my writing commitment that day, and vice versa. This is what David Goggins calls “callusing your mind” in his book “Can’t Hurt Me”. Many people think it is too harsh, but I think it is one of the best books ever written. Through constant repetitions, by doing the same thing over and over again, we create a new normal. There is no question whether I should wake up at 6 am and do the workout or sleep until 8 am. If you live according to your commitments for several weeks in a row, soon enough, it will become a routine part of your life.

Sorry if that sounds like a motivational BS to you. I just wanted to warn the people that embark on that road about the pitfalls they will inevitably face. So look, there is no secret sauce. You just have to make forward progress, regardless you’re motivated or not. It was hard for me to squeeze time for the book. I have a full-time job, family commitments, and wrote most of the book during the COVID pandemic. The solution for me was to allocate at least 30 mins for the book each day. Here is the snippet from my git log:

7dee50b [Day37][1.5hr] - Finished Data-Driven chapter
64d7cf9 [Day36][1hr] - Started tuning chapter
66ba17a [Day35][0.5hr] - Drafted part5: tuning
9f0b78a [Day35][0.5hr] - Changed font size from 10pt to 11pt
0f11925 [Day35][0hr] - Extended TOC depth
f79899f [Day34][0.5hr] - Started perf tuning
ebf410f [Day33][1hr]- Finished timed LBR section
45b531f [Day33][1hr] - Finished PEBS
53154da [Day33][1hr] - Continuing PEBS
ae3f285 [Day32][1.5hr] - Continuing PEBS
852ba6f [Day31][1hr] - Fixed table width + configured table references
697e85b [Day30][1.5hr] - Wrote how to collect performance counters manually
d80dbde [Day29][1.5hr] - Started PEBS section
d69bf03 [Day29][1hr] - Finished LBR section. Minor updates still needed
26e9a8a [Day28][0.5hr] - Wrote branch probability section
e71aa81 [Day27][1hr] - Finished timed LBR section

You see, it’s better to make little progress every day than to write an entire section in one day and then forget about it for the rest of the week. It’s very easy to burnout and never come back to work again after a long break. To be on track every day, I learned to plan my day in advance and always allocate at least 30 mins for the book. Again, I’m not perfect, and I missed many days, but I tried to stick to the plan as much as I could. Merely seeing the fact that you’re making progress brings satisfaction and energy to keep going.

During writing the book, I fully embraced pomodoro technique. I heard the first time about it almost a decade ago, but I never had an issue it could help solve (at least I thought so). Today, I plan my day in 30 mins intervals1 and try to stick to the plan as much as possible. I also allocate breaks and time for doing random things, like reading emails, blogs, news, etc. It’s much more efficient to batch those things than to be distracted by them many times throughout the day.

Ok, that’s all I wanted to share today. Let me know what you think about it. Speaking about my future plans, I want to make a hard copy of my book and support other formats, such as epub. Also, I will take a short break, after which I will resume blogging. I learned that I could finish big projects, such as writing a book, so let’s see, maybe I will pick another one. Stay tuned.


  1. 25 mins task time + 5 mins break. 


comments powered by Disqus

Subscribe to get more updates from me:


If you like this blog, support me on Patreon, Github, or by PayPal donation.

All content on Easyperf blog is licensed under a Creative Commons Attribution 4.0 International License