Why Google deserves to lose the Oracle vs Google case

Whereever you go in Silicon Valley these days, you're reminded of the Oracle vs. Google trial. Everybody has his or her opinion about the case, and up until now, I've heard many people express the hope that Oracle will lose this case. I don't agree for reasons that are purely personal, but hear my opinion: if there's justice in this world, Google should lose.

I think I was still working on my first book when I first received a mail (in 2006?) from somebody who wrote me: Hi Bruno, did you know Google is using iText in Google Calendar? Soon I discovered that Google had also introduced iText in Google Analytics, Google Spreadsheets, etc...
My first reaction was a very positive one for two reasons. (1) I considered developers who succeeded in getting a job at Google as being geniuses, and these geniuses endorsed iText! I felt honored and respected. (2) As a company, Google was making an enormous amount of money, so when they started using my software I had the naive idea that they would share some of that money with me. I believed Google's slogan Don't be evil, and I truly believed that this meant they would share the wealth. As they were heavily using iText, why wouldn't they reward me? That would be the fair thing to do. I was wrong... It didn't take long to realize that Google doesn't buy software. Google buys companies.

What a difference with Oracle! Oracle was also using iText, but as soon as we started our business, we started negotiating. Oracle was one of our first major customers in 2009, the year we founded iText Software Corp. in the US. That was even before we changed from the LGPL to the AGPL!

Many people wonder why I decided to switch from the LGPL to the AGPL in December 2009. It was a difficult decision. I really wanted to keep the LGPL to allow small companies to make some money, but I was too naive to think that all major companies would be like Oracle. My choice for the AGPL was inspired by Google's Director of Open Source, Chris DiBona. When it became absolutely clear that Google wasn't interested in 'becoming a good Open Source citizen' and that Google's company policy didn't allow supporting my company, I started reading interviews about the Open Source policy at Google. I discovered that Chris DiBona (with whom I had been exchanging mails) really disliked the AGPL. His arguments sounded irrelevant; what mattered was that the AGPL fixed a loophole that was present in the GPL. This loophole allowed Google to use GPL software without ever having to disclose its own source code.

We've had endless discussions about the AGPL internally. In the end, the sales people at iText convinced me: if I changed the license from LGPL to AGPL, Google would have to start paying for their use of iText. However, as soon as the license was changed, Google who had always been upgrading to the latest version of iText, suddenly stopped all upgrades. In many of their products, they are still using a version of iText that is 3 years old. For the new Google Analytics, they switched from iText to another PDF library with less functionality, but with a more permissive license.
That's their good right, of course, but I'm pretty sure history will repeat itself. Whoever creates a library (not an end user product) that is highly technical (not something you can write in a weekend), will notice that it is hard work to develop, document, support and maintain such a project. If you don't make any money, the project will either die (because developers need a real job to make a living) or the project will have to start commercializing.

Did Google break the law regarding their use of the old iText version? I don't think so. I think they respected the LGPL. But are they a good open source citizen? I had my doubts, but I always kept the door open: I've gone through different phases with Google: some days I was frustrated and angry. Other days I really wanted to please Google, and I tried to get their attention in many different ways.

Today I'm convinced that Google doesn't care about good software. Some of the PDFs produced by Google using iText were 'suboptimal'. This annoyed me. I take pride in my work: If only I could give the developers at Google some tips and tricks, they could do so much better.
At Devoxx, I had a short chat with Michael Van Riper, who is responsible for Developer Relations at Google. I had the impression that he wasn't really listening to me. Then we met in San Jose at CLS West, and I gave it a second try. Van recognized me, and he said: "Aren't you the guy who had an issue with us?" I told him he hadn't been replying to my emails, and he apoligized and he said "But now you're here!" He explained that he gets a shipload of mails every day, and that he has to be selective. Presence in Silicon Valley is one of the key criteria to be heard. So we talked some more, and then he promised that he would send out a mail on the internal mailing list at Google inviting Google developers to come to a talk about iText. The only thing I needed to do, was to pick a date and send him a mail.

And so I did: I mailed Van that we would be in Silicon Valley from April 16 until April 20. He didn't reply.
I mailed Van that we would be in Silicon Valley from April 16 until April 20. He didn't reply.
I mailed Van that we would be in Silicon Valley from April 16 until April 20. He didn't reply.
I mailed Van that we would be in Silicon Valley from April 16 until April 20. He didn't reply.
I mailed Van that we would be in Silicon Valley from April 16 until April 20. He didn't reply.
We even asked the attaché of Flanders Investment & Trade to mediate, but she received the answer that we should do our homework first and present a specific case why Google would be interested to see us. Duh? Dudes! You've been using my software for more than 5 years now!

I know that Americans don't like to say no. No is final. An American doesn't like throwing away something he may need in a later stage. That's why Americans prefer not to reply when in doubt. They can always pretend they never saw the mail. However, Americans also don't like to say yes either. Because a yes is a promise. And promises need to be kept. Otherwise you can't ever do any business. Not keeping a promise, even an oral one, is not done.

I had a yes from Google. I had an oral promise from Michael Van Riper, saying that he would invite me for a talk at Google. In spite of everything that had happened before, I was very happy with that promise. Going to companies to talk about iText, both on a technical and a business level is exactly why I'm here. I'm learning more from these talks than I would learn at college.

But sometimes you also learn a negative lesson. The lesson I've learned from Google, is that it's a company that doesn't keep its promises. It's a company that doesn't respect developers. It's a company that likes to take, without ever giving anything back. All I wanted was to get a chance to talk with somebody that matters at Google. Given the many years Google had been using iText, I really deserved a chance to explain my point of view. But Google broke its promise.

That's why I'm in favor of Oracle in the Oracle versus Google case. I know my arguments are personal, but I hope you understand they're genuine.

Comments

Interesting perspective

Bruno, first of all, thanks for creating iText. It is a very useful library.

I understand your frustration with Google. It sounds like you had a really bad experience and were treated unfairly--not because they didn't upgrade to the latest version and send you money, but because you were offered a meeting in person and then ignored when it was convenient later.

As a programmer, though, I think you should remember that this case isn't just about settling a dispute. Legal precedent might come out that will negatively affect all of us in the software community. One of the biggest legal questions is whether software interfaces and header files are copyrightable. This could terribly impact the open source community that frequently seeks to create open implementations of proprietary systems. I wouldn't think seeing Google pay for their sins would be worth that to you.

As far as upgrading from the LGPL version, we developers don't often have much pull with the Finance department. If the LGPL version meets our needs in commercial software, as it does for very many people, our choice is likely not between using the LGPL version or the commercial one, but rather between using the LGPL version or doing without PDF support. PDF support is a great feature, but it's not always considered mission critical unless it's a primary focus of the application. Should a company build a reporting platform based on the outdated version? Probably not. But can we get by with outputing a few one-off documents with the LGPL version? Definitely.

Which is the bigger fear?

I agree and I don't agree.

IMO Google played foul play with Android, wronging SUN (Oracle) and Apple (were he still alive, Steve Jobs would have chosen Larry's side). No matter who wins in the Oracle vs. Google case, there will be damage, especially collateral damage to people and companies that aren't involved in the battle.

Right now, the question seems to boild down to "What is the greatest fear of those who aren't involved?"

  1. Either getting hit by collateral damage? (A ruling that APIs would be copyrightable scares me too.)
  2. Or accepting that Google can get away with almost anything?

Frankly the latter scares me more than the former, because there will always be solutions: see for instance how Adobe allowed companies to use the PDF spec although they owned the copyright, and how the PDF spec eventually became an ISO standard.

I think that turning APIs into open standards because of a ruling that says APIs are copyrightable could be a good thing. It would certainly make APIs more stable.