"I learned [...] how to express myself better while writing a book"

Luca Ferrari - Co-author of ‘Learn PostgreSQL’

Meet Luca Ferrari

Luca Ferrari has been passionate about computer science since the Commodore 64 era, and today holds a master’s degree (with honors) and a Ph.D. from the University of Modena and Reggio Emilia. He has written several research papers, technical articles, and book chapters. In 2011, he was named an Adjunct Professor by Nipissing University. An avid Unix user, he is a strong advocate of open source, and in his free time, he collaborates with a few projects. He met PostgreSQL back in release 7.3; he was a founder and former president of the Italian PostgreSQL Community (ITPUG). He also talks regularly at technical conferences and events and delivers professional training.

Why did you want to write a book?

Oh, very good question. Thanks. I will lie if I say it was not to get my name on the cover of the book because it’s really exciting to see your name on the cover of the book. And of course, this is a shallow motivation. The real motivation is I like teaching and I like to study and explain and write things down. So, writing a book seemed to me a good way to reach other people that have my same interest in this case, PostgreSQL and teach them what I know and how to get better results when using PostgreSQL. 

So this is the concrete motivation. And of course, having your name on the cover is, let’s say your little place in the story. So it’s exciting. It’s a good achievement for me.

Why do you have this interest in teaching?

Before I get to PostgreSQL, I have to say that there is very good documentation and material you can learn from. Personally, I like teaching. I cannot explain why, but I have always been teaching something. For example, when I was younger, I was doing archery, and I was also teaching archery and I started teaching like that. And then I started teaching computer science at high school and later on at the universities. I worked for the local University and Nipissing University and now I also do professional training, particularly regarding PostgreSQL.

I have taught computer science subjects like web development or programming Java, but mainly today I do professional training on PostgreSQL. So if something really interesting, according to me, because teaching also allows you to learn a lot of stuff that you really know, but you understand you didn’t know very well because when you are presenting a subject topic to your audience, sooner or later someone will ask you something that will shuffle your mindset, your thoughts and will tick down your roots. So you have to restart over and try to understand better and to explain better what you think you knew. So it’s a great opportunity to learn to get a better knowledge.

What did you find challenging about the process?

Well, writing a book is clearly not a trivial task. And you have to schedule, at least in my opinion, you have to schedule your activities very well in order to match every single deadline, for example, the chapters delivery, review, and so on. I was not scared at all in doing this project, probably because I was well trained at my previous jobs at university where you have to write scientific papers, book chapters. So I was used to the publishing workflow, and that didn’t scare me at all. When I started writing my first book with Packt that was PostgreSQL 11 server side programming, the only thing I was scared of was to unmatch the deadline. So I had to carefully write down every single step I had to take in order to match every single deadline.

With this particular project Learn PostgreSQL, I was not scared at all, also, because I was co authoring the book with my friend Enrico and so I knew we were able to finish the book. Of course, you have to consider the effort of writing, of taking such a long term task, such as writing a word book, so you have to consider your time, you have to evaluate your resources, you have to sacrifice your friends and family in order to take your time to write a book. Now, of course, we are nerds, so we don’t have much social interaction. So that was the easy part. But yeah, so you have to fully consider your effort, what it will be and how to schedule your activities. And then, I mean, the hard part is done, I don’t want to underestimate how to write a book. But of course, you have to produce the content. That’s really the hard part. But in my opinion, the only scarring part is about programming your timeline, during the whole process. So with regard to my mind, my mindset, sorry, my mind and my mouth are not working in sync today.

My mindset back in those days was quite problematic, because, unlikely, I do suffer severe eye problems. So I had eyesight problems. And I cannot spend a lot of time in front of my computer. So in addition to scheduling, very tightly, my activities, I had also to schedule and consider the amount of time to spend in front of my computer or reading the review or applying the review in order to not stress my eyes. So this was quite frustrating for me. And, of course, this kind of problem puts pressure in particular on my own brain, but that’s my particular condition. So it’s not something that applies to anyone. So I was, let’s say, a little nervous about this particular problem, but not about the publishing workflow at all.

What was it like working as a co-author on this title?

Yes, let me start from the end. It was very different with the second book because co-authoring a book, at least, in my opinion, is different because you have to deal with another author and even if Enrico is a good friend of mine, and a colleague, we collaborate very often. And so we never discuss very long about a topic or a subject or a particular problem. We always find an agreement. But having a co-author on board, that means you need to, let’s say find peace when the other author is expressing a concept in a way, but maybe you will express in a different way. It doesn’t mean of course you are right and the other author is wrong or vice versa. It simply means that we the authors are expressing the same concept in different terms. And I believe this is a plus point, the book is going to gain a different point of view. But while writing the content maybe the co-author is suggesting you to apply a modification to a statement or a paragraph or an example, but your brain refuses to apply, because, no, it’s clear right as it is, or vice versa, you are suggesting something, maybe the title of the section is not what you would like to see and you want to rephrase, but you have to collaborate. So to accept every single piece of material that comes from the other author, and you have to discuss, but without forcing the other author to accept your ideas.

On the other hand, in the previous book, I was the only author. So it was, I felt like I had the last word. And of course, I had the last word on every single chapter and title, except for a review. So okay, so I was the only one in charge of deciding how the content would flow from the beginning to the end. So it’s different to co-author a book compared to writing on your own but at the same time, I believe the book gains a different perspective. And I have to say it’s simpler, because of course, you can rely on another person or other people to jump in when you are not available, for example, as it happened, because I was unable to review the book cover when it was shared, but Enrico did on his own and did a great job. And there was another part of the question that I forgot, I’m sorry. 

Which aspect of the process did you enjoy the most?

Well, it’s hard to say, I really enjoyed every single part of writing the book, of course, the part that is much more enjoyable for me, because I am passionate about is the content of each chapter because in the content, I can explain exactly with technology, in this case, PostgreSQL. I love PostgreSQL and the concept I want to express here. Maybe the least enjoyable part, according to me, was to write down the table of contents. Because you have to think carefully about not the amount of content but how to order each content one after the other, so that for a reader, the book is approachable. Because, of course, we don’t want to produce a book that is boring from the very beginning, even if it has good content, and we and nobody will read it for free if it gets more for the first one, two three chapters. So we must catch up the attention of reader but at the same time, we cannot push to the reader too much information in the first chapters just to make the book shine, we must carefully divert either during the whole chapter list, and that was probably the most difficult part in the beginning phase of writing the book.

Deciding which topic goes first and at which level of detail we place every topic because for example, in Learn PostgreSQL, we have a few topics that are split across different chapters. Because in the beginning, we want to just introduce you with a glance at the topic, so that you can interact with the system. And once you have understood a lot of other concepts, you can get back to that particular topic and understand in more detail how that particular technology or feature works. So we have to carefully split the content across chapters in order to again, make the book interesting, not boring from the beginning. And at the same time, not scaring for a mere mortal finds out too much information in the first chapter. Besides that, I really enjoyed every single part of the book. Now writing a technical book, in my opinion, is simpler when writing a novel because you write about facts, so you don’t have to invent anything. And it’s really funny too, every way to test what you are teaching to your readers, what you are writing as a content and provide small examples, but work with the way you just wrote about it. And that’s an enjoyable part. So I really enjoyed the process.

The least enjoyable part for me was the table of content. And again, alongside with a table of contents, the decision of the let’s say driving example because me and Enrico agreed that in order to keep the reader’s attention at a constant level and unlike other technical books, we don’t provide in our book, a bare chapter example. So in this chapter, we want to explain this topic and we will explain this topic with this single example. In the next chapter, let’s change the context at all and get to another example. Instead, we develop a real real world example that we develop from the very beginning of the book to the end of a book in order to provide much more concrete context to the readers, okay, and to make it easier also to back reference from one part of the example in previous chapters to forward chapters and so on. And of course, the table of contents and the design of the book example were the really hard part in the beginning of the process, but once we wrote down that it was really enjoyable.

How do you think your life has changed since publishing the book?

I have to say I have been a member of a PostgreSQL community since 2006, or 2007, so I don’t notice any changes since I published these books. I mean, sometimes someone reports to me, Hey, I read your example, in this book, this chapter. Or someone also thanked me for the media and repo for the content of the book. And that’s really what I’m really happy about but, I never changed my approach to the community. Also, when I do professional training, often I am asked about some material to read for the attendees of a course. And of course, I have to promote my books. So I’m sure the book is well appreciated, but I’m not sure it has changed my interaction with the community or my role in the community.

What would you say to someone who wanted to write a book with Packt?

Do, the short answer is Do! I really like the approach, Do or Do not. And so I’m kind of a Do-guy. I think a lot before taking a long term task but once I decide to accept it, I fully commit to it. Writing a book, as I said, is not a trivial task. People at Packt are professional and very supportive. So I really enjoyed their, let’s say, Packt publishing workflow. And if you are passionate about a specific subject or topic and you think you can present it in an innovative or clearer way than it was presented before, I really suggest you do, there is nothing to be scared off. Of course, you must assume you will need time and then more time for a new book, but it’s a great achievement and there is no particular reason to not do that, especially with Packt, in my opinion.

Inspired to write a book?

Get in touch with us about your idea and aspirations and we'll schedule a call with one of our experienced editors.

Packt have helped over 5,000 technical professionals become published authors

Distribution to millions of developers via

Expert Editorial & Project Support

Writing a book is always hard. Our team of expert editors will help coach and train you on how to write a market leading tech book.

Boost your earnings by up to $50,000 a year

Our competitive advances and royalties ensure that your published books are set up to succeed and guaranteed to make money.

Reach Millions of Developers Worldwide

With over a million direct customers and reach into large distribution channels, we provide a platform for your expertise to reach the world.

Join contributors from

Got a great idea for a book you want to write?

If you've got an idea for an exciting new technical book reach out to us and we'll schedule a call with one of our experienced editors.