Foreword by Timo Sirainen
It’s been about 11 years now since I first started Dovecot development. Back then, I was working for a small company where we needed an IMAP server for our emails. I was the only guy there with Linux experience, so besides doing the actual coding I was hired for, I was also the sysadmin. I’m not really sure what other people would have done in my situation, but I’m definitely not very good sysadmin material. I didn’t start by evaluating features of different open source IMAP servers, I started by evaluating their source code. I didn’t like any of them. I finally ended up with Courier, but I immediately decided I could do something better and started thinking about it. A few months later, I had the first public Dovecot release out.
Since then, it’s been pretty interesting and fun. For a long time I was working on Dovecot just in my free time. Sometimes on company time too, on behalf of various businesses. Eventually, several companies hired me directly to develop some new features for them. Rackspace hired me to work on-site for a year and Portugal Telecom for half a year. It was fun seeing how people live outside of Finland.
Developing Dovecot has always been kind of fun but sometimes also very frustrating, especially before the v1.0 release. For years I thought that Dovecot was usable for most people, but then bigger and bigger installations started using it and they kept finding more and more problems. At one point, I realized that the entire design was completely wrong, so I had to spend a couple of years rewriting the entire indexing code. Luckily, this turned out to be one of the main reasons for Dovecot’s good performance today.
Soon I started wondering what to do with the rest of my life after Portugal. Since I couldn’t really think of anything else, I finally decided to start my own Dovecot support company. I had been thinking about it already for over 5 years at least, but I didn’t have the right people to help manage and push me into it. Luckily, an old friend of mine was just thinking about moving into new things, and he decided it was the perfect time to start the Dovecot company with me.
A couple of people were really upset that Dovecot was now becoming commercialized and that I should never write anything about my company to the Dovecot mailing list, but the majority seemed to be happy enough. One of my main goals with the company has always been to think about Dovecot’s future. As I once mentioned in a customer meeting, I’ve only had one baby so far, and he’s a 10-year-old named Dovecot. I wouldn’t give him up for any amount of money. I want him to grow up old and take over the world. So the Dovecot company’s job is to make sure that it happens, and this requires a way to make money and hire more Dovecot developers. Our original idea of providing support and consulting around Dovecot didn’t start out too badly, but we later noticed it could never be enough to sustain the quick growth and improvements that we foresaw for Dovecot. We had to figure out a few other incentives for companies to give us money, which was the start of a few closed source components to Dovecot.
This book and especially its timing marks an interesting turning point in Dovecot’s life. It’s not quite what it used to be, and hopefully it will become much better in the near future at a much faster pace. Peer first asked me to give a Dovecot talk for his 3rd mail server conference, but at that point in my life I really didn’t want to give any Dovecot talks. But soon afterward I was more or less forced to do a few talks to some small crowds anyway, so I felt more comfortable giving my first public Dovecot talk at the next mail server conference.
Peer was already back then talking about just finishing his Cyrus/Courier/Postfix book and about adding Dovecot for the next one. It’s now several years later, but I think it’s the perfect time for this book to emerge!
Dovecot is still being developed at a fast pace, but there are no huge incompatible changes just around the corner, so this book should be useful for many more years to come.
Finally, I’d like to give thanks to everyone who has helped Dovecot become as awesome as it is today.
Timo Sirainen
January 2014, Tampere/Finnland