Monthly Archives: September 2022

MySQL Cookbook 4th Edition

A nomadic sailing dream that turns into book authoring and a new role…

The inception of the book

I want to start with a huge thank you to Sveta for her invitation to her engagement with O’Reilly as a previous author. Although I had mentioned that I had an inspiration to author a book and attempted to release a booklet in the past, this was somewhat unexpected in the midst of my first biggest pandemic. 

Unexpected and surprising developments

Let’s go back in time to the infamous covid-19 pandemic. We have been under pressure with the unknown virus with little or no hope of recovery anytime soon. I got an alert from one of the brokers about a sailboat I was interested in. After a few minutes of checking with my long-time friend Nurhan, I decide to make an offer. Unfortunately, our discussions didn’t go that smoothly, and I was informed that the boat was already sold to another buyer. I insisted on increasing the price and changing the wind direction to my side by writing a moral story to the broker, and he accepted it. Now, no flights were allowed during a total lockdown. 

The rest of the story is here

After three weeks of getting a special business permit, we landed in Zagreb, Croatia, and completed our purchase. The paperwork took about another three weeks to complete. That’s when I got the ping from Sveta about the possible authoring of a book. At the time, I worked at Percona as Sr. Technical Manager at the same company as Sveta. Strangely, I had an offer from another company within the same week. So I accepted to join PlanetScale as part of the Vitess Open Source project role. So now I have a boat to bring home, a new job to sign in, and a book to author. 

O’Reilly Experience

I had no prior experience authoring a technical book or working with a professional editor. The company has proven to be one of the best in the industry, working with the brightest minds and publishing hundreds of books annually. Here comes Sveta again for help while I’m planning a long pandemic-bound sailing journey and a new job with many unknowns. 

The MySQL Cookbook was initially authored by Paul DuBois and released three times. So it had massive content, and I had not gone through it in detail. Looking at the overall chapters and fast reading in 48 hours, I have decided to accept to co-author 4th release of the book. The original agreement was to update %60 of the content of the last edition. Since a significant time passed and MySQL advanced to hole new levels with MySQL 8 altering for new release would merely touch every part of the book. Not only MySQL itself, but there were also new programming languages to be added, and deprecated code had to be removed. 

Developments in making

Discussions and agreements were made based mainly on Sveta’s input on all the chapters, and I was mostly monitoring how this book could be turned into a new release. Besides the technical content and programming languages used, there was another challenge to the authors about the platform. 

It’s not a simple Word document or gdoc that had to be used, but DocBook and XML had to be mastered. After two years, I still lack the skill to do both. 

The process of authoring new chapters was more effective than rewriting or editing existing chapters. For example, the book used a different data set throughout the chapters, and we decided to change that. Finding a sample data set that is freely available and suitable for the entire book is difficult. So we had to go to multiple sources. 

The older chapters also had a lot of deprecated values and updates, which changed the storyline of the content. To fix those, we had to rewrite most of the chapters and revisit them repeatedly to ensure referenced content was not missing from other chapters. 

Key Takeaways 

Before agreeing to author a book, talk to other authors about the time and material, it takes for the type of book you are getting in. This will allow better planning of your work/life/book balance hence avoiding burnout. 

Once agreement is made, research the platform you will be responsible for authoring and training yourself—for example, Gitlab, DocBook, XML, etc. 

Take advice on how to plan or co-author the parts you’ll be responsible for. Record all agreements you made to keep track of the progress. Take everything very seriously and ensure it does not impact your other responsibilities. 

Be well organized in your time and planning. What times and which days you’ll be spending time on the book where? Create a cadence around this dedicated time, and it’s no different than finishing a degree. 

Allow extra time to deliver sections you’re involved in, as there’s a deep feedback circle. If you are authoring alone, this time will be reduced, but you’ll get feedback later in the process. If you are co-authoring, every chapter you’ve split will have to be reviewed before the first editorial. After the initial review, you’ll get feedback to clarify, modify, remove and rewrite multiple times. Some sections go into an endless feedback loop for a very long time. You’ll receive at least four to six technical people’s feedback later in the process and additional editorial feedback. So expect to return to a section or chapter you were involved in a year ago. 

Last but not least, do never over-commit yourself. This will decrease your productivity and lower the quality of the output. Timing is essential to fulfilling this lifelong dream of being an author. Some do it earlier in their career maybe a better result for authoring other books.  

I want to thank my wife, Aslihan, and my daughters, Ilayda and Lara, for their patience and support when I needed to focus and use family time to write this book.

Many thanks to my colleagues and team at PlanetScale, especially Deepthi Sigireddi, for her extra care and support. Special thanks go to the MySQL community, friends, and family members.

I also want to take a moment to thank Sveta Smirnova for her endless support while coaching me throughout my first book journey.

You can read the book here,

Thank you