Paul BuchheitCEans,We are addicted to Gmail. We eat, drink & sleep Gmail. So we began our hunt for the engineer who created it. We found out that theWe seached more and found out that the creator of Gmail & Adsense is also the man who gave Google its world famous tagline. We digged deeper and found out that the man behind Gmail, Adsense, 'Don't Be Evil' is also the man behind FriendFeed! We requested him for a Small Talk and he agreed. We jumped with joy.We are extremely proud and happy to have the engineer who changed the world forever -Check out our Small Talk with Mr. Paul Buchheit:-It's a lot of fun. For me, work is much more enjoyable if I know that it matters to other people and that it's somehow improving their life. This is also one of the reasons that I like the "launch fast and iterate" approach to development that has become popular on the web -- it enables me to get my work out to the world in a matter of hours and very quickly get feedback.I never finished the project so I never completely settled on a name. My college (CWRU) had a campus wide high speed network, and it quickly became obvious to me that all of my information should be "online" so that it could be accessed from anywhere, not trapped on a single computer. Email includes some of the most interesting and timely information, so I thought it would be nice to have a web-based email client. That way I would be able to access my email from any computer that was connected to the web.At the time, I was working at Intel, which is very much a big company, and I'm not really a "big company" person, and also I was interested in startups. I looked around for interesting startups in the area, and happened to apply to Google. I was skeptical of their business (there were many competitors who were much larger than Google and had more resources and users), but the people seemed smart, so I thought that it would be a good learning experience if nothing else.Google's "mission" is to organize and make useful all of the world's information, and they recognized that much of the useful information is inside of email, so they asked me to build something that would improve email. I started out by taking the code from the Google Groups Usenet search (which was my previous project) and loading it up with all of my own email. That was version zero, and it only took a few hours to build. From that point, I simply continued iteratively adding features and refining the product.Somebody asked for a feature that couldn't be implemented in plain HTML. I didn't really know any Javascript at the time, but I spent a little while learning enough to implement the feature. Over time we did more and more of that, and eventually realized that we should simple rewrite the whole interface using Javascript.It has to be kept fast, efficient, and manageable. We used Gmail internally and all had a lot of email, so we never even considered designs that wouldn't allow for a lot of mail. The fact that we were making it free meant that we also needed to keep costs low, so that eliminated the possibility of using expensive storage systems. We also wanted to have many millions of users, so that meant that the system was going to have to be very highly automated -- we can't afford to have an army of sysadmins managing the systems, so the systems have to manage themselves to a large extent.Keep it simple. A lot of times people think that hard problems demand complex solutions, but we've found that the opposite is often the case, because complex things quickly become unmanageable and incomprehensible. If the system is simple, then it's generally easier to understand and easier to scale. It's also important to know where all of the time is going -- if something is slow, you should know why. Fortunately, this is easy -- just add timers to your code and log everything that takes more than a few milliseconds.We needed a way for Gmail to make money. The idea of targeting ads to content instead of keywords had been around for quite a while, but was believed to be impractical. We decided to do a little experiment to test anyway. I wrote more about this story here: https://paulbuchheit.blogspot.com/2009/01/communicating-with-code.html It was at a meeting on "corporate values". I don't really have any great tips though. I just wanted something that was different and memorable and that would make people a little uncomfortable.We're building a tool to make sharing and discussing things with friends very easy and enjoyable. Our development model and product planning is very iterative, so what we do will depend a lot on user feedback and simply watching which things work well and which don't.Build more stuff. I think empirical and experimental methods tend to work the best because the world is simply too complex to predict what will happen in advance. Therefore, we should make an effort to find easy and low cost methods of testing new ideas.________________________________________CrazyEngineers is thankful to Mr. Paul Buchheit for sparing his time for the Small Talk. Visit Paul Buchheit's Blog.Discuss this Small Talk on CE Forums with thousands of engineers in following thread: Small Talk with Paul Buchheit