Philip Greenspun founded ArsDigita in 1997. Though the company lasted only a few years, ArsDigita is famous in the startup world both as the embodiment of a new model for software consulting and as an all-too-colorful example of the dangers of venture capital. ArsDigita grew out of the software that Greenspun wrote for managing photo.net, a popular photography site. He released the software under an open source license and was soon deluged by requests from big companies for custom features. He and some friends founded ArsDigita in 1997 to take on such consulting projects. Greenspun and his cofounders fostered a great sense of loyalty among users and employees. Like Google later, ArsDigita created an environment in which programmers reigned supreme. The company grew fast, and by 2000 was generating about $20 million in annual revenue from its monthly service contracts. That same year, ArsDigita took $38 million from venture capitalists. Within weeks of the deal closing, conflict arose between the new investors and the founders. They marginalized and then fired most of the founders, who responded by retaking control of the company using a loophole the VCs had overlooked. The legal battle culminated in Greenspun's being bought out, and a few months later the company crashed. ArsDigita was dissolved in 2002, but not before establishing an important new model for the consulting business. Livingston: Take me back to how ArsDigita got started. Greenspun: I started building Internet applications in the early 1980s. I always liked multiuser applications, and I thought connecting people over the network--if they were separated in space and time--was just going to be the best usage of computer systems. 317 Philip Greenspun Cofounder,ArsDigita 24 CHAPTER Photo by Ellis Vener It was pretty hard to write popular applications that way though, because whatever you built would only work on one kind of computer system. You were building a system for HP UNIX or Apple Macintosh or maybe Windows, and each particular brand of computer could talk to each other over the network and let you edit a document together or let you play a game together. But because there was no standard operating system and no real standard programming environment, if you built it for the Macintosh, it wouldn't work for Windows, or vice versa. Then the Web came along in the early '90s and, as soon as I saw it, I said, "OK, this is how all computer applications are going to be built in the future. I don't need to write all this custom code to the operating system anymore. I'll just build something that is specified on the server side, and the user experience will be rendered by the browser. It will have a simpler user interface, but it will be guaranteed to work on any kind of computer, and it will survive changes in operating systems." It pretty much has; I have plenty of web pages that I built in 1993, and here in 2006 people can still grab them, even though there have been a lot of changes in computer operating systems and software. I told the professors at MIT that all I wanted to work on was Internet applications and they told me I was crazy--that there was no future in it. I decided that, since they weren't going to even talk to me about what I wanted to do, I'd leave MIT for a summer. Livingston: You were a graduate student? Greenspun: I was a grad student at MIT and was doing a combination of research and being a teaching assistant. So I went away for the summer--a driving trip to Alaska. I wrote a book chapter every week, but really it was a letter to my friends and family so that I would get interesting email back from them. I'd email it to my friends and family to spur their thinking and let them email back to me. When I got back, I decided that I would stick these emails into HTML and scan the photos that I had given as a face-to-face slideshow and put them on a website so that my friends in California could see them. The book was called Travels with Samantha. Samantha was my old laptop computer (I was in between dogs at the time). This book was pretty popular, but most of the questions that I got about it had to do with photography. I thought, "I'll write up a couple of short tutorials on photography and then I won't have to keep emailing answers to these questions one by one. But photography is open-ended; if you answer three questions, you raise five more. So I thought I'd build a question and answer forum on my server, and when someone asked me a question and I answered, it would be a public exchange, and then the next person who came to my site would see that public exchange, and if they had a similar question, they wouldn't post it again. Pretty quickly I found that one reader would ask a question and then a second reader would answer it. I wasn't having to do anything at all. Things took on a life of their own and voila: an online community of photographers was born. I began to write more and more software to make this community easy to 318 Founders at Work manage, and I was doing it all myself. Eventually I had this big toolkit of software that I had written for my own purposes. This was in the mid '90s, and I noticed that other web publishers were trying to build similar things where people would come register at the site and exchange information and maybe go and try to buy something. The stuff was just broken. People's sites were down. They had bugs. If you tried to buy something, you'd get halfway through the checkout process and you'd get a server error. I thought, "All these people don't even have the fundamental ideas of how to put the server together, and we could just tell them, "Look, this is how a medium-volume online community can be run off of a computer that's medium sized. You don't need a huge server farm. You don't need ten full-time sys admins.' We'll give them a data model of table definitions in SQL (we happened to use the Oracle database, which was the best one available at the time). We'll create some web scripts that talk to Oracle's data model, and they can modify it to suit their needs. It will start from our proven working core of an application and it will save them a lot of time." SAP was a popular toolkit for building corporate accounting systems, and I would say, "This is like SAP, but for building an Internet application or an online community." I started by giving away my software. I just tried to document it and make it as general as possible and easy to install and stuck it on my website as a free open source thing. We gave it a name: the ArsDigita Community System. A kid I worked with thought it was a good name. Then big companies started calling, and they'd say, "We like your system, but we need ten extra features." And I'd say, "Great. You have the source code and the documentation. Good luck." They'd say, "We want you to make the changes." I'd say, "Well, I'm busy. I need to finish my PhD. And it would take me 2 weeks to do it." They'd say, "No, we really need you to do it." "How many programmers do you have in your IT department?" "Ten thousand." "Well, if you've got ten thousand programmers and I'm just one guy, why do you want me to make the changes?" They'd say, "We'll pay you $100,000." "You'll give me $100,000 for 2 weeks of work?" "Yes, we just need this system up and running now." After a few of those calls, some of my friends and I decided that we'd band together and have a little company to do support and service. I didn't want any overhead, so I thought, "Let's just have companies hire us as individuals and pay us directly, and nobody will be taking a profit off of anybody else's labor." It didn't last long because Oracle said that they didn't want to risk getting in trouble with the IRS for hiring people as 1099 employees and having the IRS say that they should have been W2s. They said, "Look, we're not hiring anybody to be a 1099 employee, so either work for us on the payroll (and we don't want to hire you guys full-time) or form a corporation that we can hire." So we had to trundle down to a law office and set up an LLC for the company. Right around that time, the Technology Square office complex, which housed the MIT computer science lab, decided to ban dogs from the building. So I thought to myself, "I'm making $1,300 a month as a grad student, and I can't bring my dog to work. This isn't worth it. Where can we go?" Philip Greenspun 319 Right around the same time a friend of mine, Elsa Dorfman, the photographer, asked if I knew anyone who would rent her house. I said, "How would you feel about renting it to a little group of programmers, and we'll use it as a company office?" She agreed. So we moved into Elsa's house, and once you've gotten an office and you have customers, things kind of take on a life of their own. The toolkit got more and more popular, and we amazed the customers. Most computer programmers don't listen to what the customer wants. They have their own ideas of what would be cool, so they spend a lot of time building stuff that the customer doesn't want. They don't have an investment in the user experience. A friend of mine was just telling me the other day that his company offshored a product design to India, and said, "These programmers in India, they did exactly what we told them, no matter how ridiculous!" Most programmers don't think about the user experience. They get a spec book, and they say, "Well, I'm going to meet this spec to make the customer happy." That's not really enough; you have to make something good for the user if you want to call yourself an engineer. The third element is just meeting the deadlines. If we'd said we were going to do something by a certain date, we did it, and the customers were stunned. Livingston: How many of you were there when you first started? Greenspun: About five, and then we grew pretty quickly to ten. There was so much repeat business because customers would be amazed that we delivered on time and that it was more or less what they wanted and actually usable for the end user. Livingston: When you started, it sort of grew out of your own interest in the Web? Greenspun: Well, in response to people downloading the software. They weren't really interested in photo.net, but they had decided to adopt our software toolkit. In some cases, they'd heard from Edward Tufte in his lectures. People would ask, "What's good on the Web?" and he'd say, "Nothing's good on the Web," and they'd say, "C'mon, give us two good websites." And one of the ones he'd mention would be photo.net as an example with good design. But most of the business was because we'd released free open source software. The 15-year-olds would just use it, and the big companies would decide that, since they had so much money and I guess not enough good programmers, it made sense for them to pay us to help them out with it. Livingston: What was unique about ArsDigita? Greenspun: We tried to help each programmer develop an independent, professional reputation. We had this idea that programmers could be professionals, like doctors or lawyers, and, to that end, we wanted the programmers to be real engineers--to sit down face to face with the customer, find out what was needed, come up with some suggestions or changes based on the programmer's experience with similar services, and then take a lot of responsibility for making it happen. 320 Founders at Work We pushed the profit-and-loss responsibility down to individual teams. For example, if there were two or three programmers working for HewlettPackard, then those guys would be solely responsible for the project and making sure that it got delivered on time and that the customer was happy. They'd get a big bonus if they did a good job and the customer was happy and the thing was profitable. Implicit in that was that, if it didn't go well, we'd know whom to blame. Livingston: What were some of the biggest turning points? Greenspun: One big turning point was getting Levi Strauss as a customer. They had acquired a small company that made custom-cut khaki pants, and they wanted a web front end for this new factory that they were building that could take your measurements and sew you a pair of khakis to your specs. They asked around MIT, "Who's really an expert on building this kind of thing?" They came to us and it was a happy coincidence, because they were happy to pay for lots of software and infrastructure and tools and let us keep the rights to it all. That was one good thing about working for non-technical companies. If you worked for IBM, they make their money by owning technologies, so if you build a technology for them, they want to own it. Whereas publishers or clothing companies, they make their money by having a brand or unique content. I did a lot of work for Hearst Corporation and they don't want to give away the content of Cosmo magazine or their relationship with Fabio, but if you build some Perl scripts for them to do server administration, it doesn't occur to them that that's something that they have to own and prevent other publishers from getting hold of. So Levi's was a great client and it was a big turning point because it gave us the money to build whatever we needed to build. Another turning point was in 1998 when I published Database Backed Web Sites. We were working on a site and the client said, "You have to finish this site for us, because as soon as the book comes out, your phone is going to be ringing off the hook." I didn't believe him, but he was right, and that was a huge turning point. It was on my website for free, but having a hard copy in the stores gave it a bit more credibility and more readers. That was pretty much always how we built the business--tutorial publications on our website, books in bookstores, and public lectures. Edward Tufte gave us this idea of having a one-day seminar that people would come to and learn. We would get 400 people to come to a free, one-day course, and then maybe 1 or 2 would become customers and maybe 10 of them would adopt the software. Almost all of our marketing and sales was educational. We just thought, "We'll teach people stuff, and some tiny fraction of those people will become our customers." It seemed to work just as well as running ads, which were a hard sell and kind of empty and a waste of people's time. In this case, nobody could ever say that we wasted their time. I think the same percentage of people that read an ad in ComputerWorld magazine and bought something would read one of our tutorials and buy something from us. Philip Greenspun 321 Livingston: Did a lot of people not have resources to implement your ideas at the time, because the Web was still emerging? Greenspun: People used to say, "Why should we pay you guys $30,000 to $50,000 a month to do this thing, when we can just hire our own programmer?" What I would tell them is, "Each company has one class of stars. In some companies maybe it's the salespeople, and in some companies maybe it's the mechanical engineers. There's going to be one class of people for whom it's really easy to hire more people like that." Hospitals are a good example. If it's a good hospital, the doctors will be good, and it's very easy for them to hire good doctors. But it's hard for them to hire any other kind of person. Hospitals don't have really good advertising people; those people want to work on Madison Avenue. So we would say, "You're a very capable person, and you're going to have a very easy time hiring people like yourself. We don't know your business and we'd have a hard time hiring someone like you, but we have a very easy time hiring someone like me, who's an MIT-trained computer science nerd. It's cheaper for you to use us, because we have really great programmers, and great programmers are a lot cheaper than mediocre programmers. So even if you give us a profit margin, it's still cheaper than doing it internally." That might not have been true for SAP actually. SAP was a user of our software. They had a lot of good programmers, so they weren't a customer; they just used the software without needing us. Livingston: Tell me a little about the competitive landscape. Greenspun: There was Broadvision. Believe it or not, people didn't agree back then on how you did websites. Today, everybody would pretty much agree that the right thing to do is to do whatever Bill Gates or Microsoft says. So you download SQL Server, Visual Studio .NET, and you have a two-tiered system where you have a data model and SQL Server and you have scripts and a scripting language talking to the database. You don't have a lot of elaborate compilation steps. If you change a script, it's written in C# or Visual Basic; the next time you load it, a new definition will be evaluated. Very lightweight programming environment. Most of the engineering is in the database. That's how I started doing things in 1994, but there were lots of companies trying to convince people that that wasn't adequate; that you had to have something really complicated. They would say, "What you really need is lots of layers and application servers and you need our software. You don't just download Perl and Apache. You have to buy our system for a million dollars." Broadvision was almost comically difficult to use. It required people to program their web pages in the C++ language, which even a lot of professional programmers find impossible to use. Modifying a website became just as expensive and difficult as it would be to make a change to Microsoft Word, and Microsoft itself is only able to get out a new version every few years. There was also a company called Vignette, and they had a really bad product. They had a product that let you program web pages in Tcl, which was a scripting language. But there were free open source tools that were better and 322 Founders at Work let you do the same thing. Why would anybody pay for this? But they were selling it. They had hundreds of millions of dollars from their IPO, and we thought, "These companies can't just waste all their money forever." Microsoft was another concern. But they also were very, very slow. They finally today have a product called SharePoint, which is somewhat similar to the ArsDigita Community System. One thing that we did which enabled us to be much, much faster than our competitors was that we developed on and released our software from running real-world systems. For example, we would install our release of software on photo.net or on the ArsDigita.com site where the employees and customers were all using it. We picked one site which was a public, well-used website, and we put all our new features on there. If there was a page that was very slow because the SQL query hadn't been tuned properly, we would find out immediately. If there was a user interface that was clumsy and confused the customers, say on the photo.net classifieds, well, 100 classified ads were being posted every day and people would email us saying, "We can't figure this out." So we would get immediate feedback, and we could fix it. Then, after a couple weeks of testing the new release on this running service, we would just tar it up in the UNIX file system and produce a distribution, and that was it. We couldn't guarantee that this toolkit would solve all the world's problems, but we could guarantee, at least for something sort of like photo.net on a medium-sized server with a few hundred thousand registered users, that the software would be adequate in performance and adequate in features. It wouldn't be too expensive to support administratively because the user interface wasn't confusing people. By contrast, companies like Microsoft were still developing software for the Web as if the Web didn't exist. Livingston: What does that mean? Greenspun: Let's say you have a word processor. You send a marketing person out to interview people and find out what features they need. Then they take that back to the product manager. The product manager writes up some specs: here are the features we're going to have in the next release. Then they send that to the programmers, who are in a vacuum, who build this thing according to the product manager's specs. When they're done, it goes to QA, but it's not a real running system--they're not really trying to write documents; they're just QA people. Then eventually they burn a disk with the latest release of Microsoft Word, and they mail it out to all the world's lawyers, writers, students, and whoever else uses Microsoft Word. That works pretty well for word processors because it's a product that was developed in the '60s by IBM, and people are pretty sure of what the minimum features should be in a word processor. It also works pretty well because people don't demand frequent upgrades. There aren't new requirements and new ideas coming out in word processors, so if you have a release every three years, that's just fine. It doesn't hurt that Microsoft has a monopoly and there's no competition, so if it takes them 4 years instead of 3, it doesn't make any difference. Philip Greenspun 323 They applied the same technique to SharePoint. They had to do some research. They looked at Vignette, Broadvision, the ArsDigita Community System, a few other things, and they said, "These are some features that we think we should have." The product managers spec SharePoint, they send it out after about a year or two of development, and customers don't like it. It's too hard to program; it's too hard to understand. So they interview people, find out what they don't like, refine it. It takes them years and years. If you don't have any way of seeing how your customers are using the software except by shipping them the CD and then standing in the back of their living room while they type, maybe this is a reasonable way to develop software. But if you have the capacity to just install it on the server and essentially look over their shoulders by looking at the web server log and seeing what kind of complaints they email to the help desk or the website, then why not do that? You can shortcut the whole 2-year development cycle down to maybe 2 months. We would have releases every 2 or 3 months. So we worried about competitors, but it was an unreasonable fear. As a friend once pointed out, most gunshot wounds are self-inflicted. Livingston: ArsDigita was different because it was much faster? Greenspun: Yeah. If you look at a book on how to develop software, it will always have this long cycle with all these people involved. It's very slow because it's predicated on the fact that you can't just watch people as they use your running system--which you can do on the Web. Livingston: You had an interesting culture at ArsDigita. Was it part of your strategy to get these young, really good hackers who could develop themselves professionally? And did you know that they likely had friends who were really good hackers who you could recruit? Greenspun: That was part of it; it was hard to hire people. No matter what you did, most of the people with really good credentials and experience were occupied. There was so much money chasing a relatively limited talent pool. The folks who were in their 30s were simply not available. They were tied up working at their own startups. So we thought, "OK, how are we going to hire and grow people?" For programmers, I had a vision--partly because I had been teaching programmers at MIT--that I didn't like the way that programmer careers turned out. Now that I fly airplanes, I realize that the average programmer is really much less happy in his/her job than the average airplane mechanic, which is pretty sad when you consider that becoming an airplane mechanic is an 18-month trade school education. For $30,000 and a year and a half, you can become an airplane mechanic (even less if you want to work as an apprentice for 3 years and get your FAA certification). You work in a small group, you meet the customer directly. You don't have the alienation from the customer that Karl Marx talked about as being a bad thing about factory work versus craftsmanship--that you never find out if your work really connects with people because you're in a factory and the customer is at the other end of a railroad line. 324 Founders at Work Airplane mechanics have a direct interaction with the customer. A lot of the jobs require two to three people, so it's kind of social, and I noticed that they're just really happy. Programmers are isolated. They sit in their cubicle; they don't think about the larger picture. To my mind, a programmer is not an engineer, because an engineer is somebody who starts with a social problem that an organization or a society has and says, "OK, here's this problem that we have-- how can we solve it?" The engineer comes up with a clever, cost-effective solution to address that problem, builds it, tests it to make sure it solves the problem. That's engineering. If you look at civil engineers, architects, they're all dealing directly with the customer and going through the whole process. Livingston: Programmers were off in the corner programming? Greenspun: The programmers were in the corner doing what they were told. That's one reason they were so easy to outsource. If a programmer really never talks to the customer, never thinks, just solves little puzzles, well, that's a perfect candidate for something to offshore. So I said, "I don't want my students to end up like this. I want them to be able to sit at the table with decision-makers and be real engineers--to be able to sit with the publisher of an online community or an e-commerce site and say, "OK, I've looked at your business and your goals; here are some ideas that we can bring in from these 10 other sites that I built, these 100 other sites that I've used.' And be an equal partner in the design, not just a coder." I wanted to grow people into being able to do that, and I thought, "Let's try to make these people true professionals in the sense that lawyers and doctors and real engineers like civil engineers are professionals." Livingston: What would that mean? Greenspun: They would have to develop the skill of starting from the problem. They would invest some time in writing up their results. I was very careful about trying to encourage these people to have an independent professional reputation, so there's code that had their name on it and that they took responsibility for, documentation that explained what problem they were trying to solve, what alternatives they considered, what the strengths and limitations of this particular implementation that they were releasing were, maybe a white paper on what lessons they learned from a project. I tried to get the programmers to write, which they didn't want to do. People don't like to write. It's hard. The people who were really good software engineers were usually great writers; they had tremendous ability to organize their thoughts and communicate. The people who were sort of average-quality programmers and had trouble thinking about the larger picture were the ones who couldn't write. Livingston: You had a different atmosphere, such as encouraging your people to be part of the process. Didn't you also have educational sessions? Greenspun: Yeah, and we had very strict code reviews. Basically the whole idea was to grow the company by having apprentices. We would bring in some people, and then the handful of people who were already there would work Philip Greenspun 325 with them and review their code and show them how to do things more cleanly--how to use features of the toolkit instead of writing extra software. The idea was that, once they had done two or three projects for customers, they could take on an apprentice and mentor that person. We had younger people, and we had more women than other firms. We had Eve Anderson and Tracy Adams--two of the most senior people at the company were female, which was kind of unusual. We never wanted to have more than two or three people on a project. The consequence of that was sometimes they would have to work pretty hard. But my model of the world was MIT biology grad school. When they're young, people need to work pretty long hours to build experience and get things done. But the benefit was that then they get a big chunk of the project, and they are able to say, "I built half of the site for the customer." They put their name on something, instead of their resume just saying that they were part of a 20-person team. You never really know what most programmers have accomplished. There are a handful of people that you can say that about. Linus Torvalds built the Linux kernel, but it's hard to say what the average programmer working at a big company has ever accomplished. Maybe he or she knows, but, from the outside, the projects are so big and their contributions were so small. I wanted them to have a real professional resume. In the end, the project was a failure because the industry trends moved away from that. People don't want programmers to be professionals; they want programmers to be cheap. They want them to be using inefficient tools like C and Java. They just want to get them in India and pay as little as possible. But I think part of the hostility of industrial managers toward programmers comes from the fact that programmers never had been professionals. Programmers have not been professionals because they haven't really cared about quality. How many programmers have you asked, "Is this the right way to do things? Is this going to be good for the users?" They reply, "I don't know and I don't care. I get paid, I have my cubicle, and the air-conditioning is set at the right temperature. I'm happy as long as the paycheck comes in." It's no surprise that programmers' salaries are headed down to what an illegal immigrant working at a slaughterhouse in Nebraska would get paid, because they just don't think about if they are doing high-quality work for the end users. I think because of that, managers have said, "I'm tired of these people. I don't want to see them. I haven't had a good experience. They've been late, they haven't done what they've promised, and what they've done has been bugridden and not very good for the end user. So if I can't have a good experience with these people, then I'll just get rid of them. I'll have them in India or China where I can't see them and they won't get on my nerves as much." So I think there's an emotional component to why programmers are being offshored: it's simply that the businesspeople hate them. Livingston: You ran a tough ship, but you were trying to empower them? 326 Founders at Work Greenspun: Yeah, but they didn't appreciate it that much. Some of the early people did, but the later arrivals, when the venture capitalists came in and said, "Oh, you guys should just clock out at 5 p.m. and you shouldn't write, because programmers shouldn't have to do more than code," they were so happy that they didn't have to work hard anymore. "We don't have people like Philip and Jin reviewing our code and telling us to redo it to be cleaner and simpler." They were so happy to be relieved of those strictures that they very quickly lapsed. Not everyone, of course, but the majority. We built the company a little too fast, and consequently the last 50 percent of the people hired really didn't have much commitment to the corporate culture. There were some warning signs. Consider McKinsey, which holds itself out as one of the world's leading repositories of knowledge on how to manage a business. They say they'll never grow their company by more than 25 percent per year, because otherwise it's just too hard to transmit the corporate culture. So if you're growing faster than 25 percent a year, you have to ask yourself, "What do I know about management that McKinsey doesn't know?" I still think it's more efficient--this is just an old Lisp programmer's standard way of thinking--if you have two really good people and a very powerful tool. That's better than having 20 mediocre people and inefficient tools. ArsDigita demonstrated that pretty well. We were able to get projects done in about 1/5th the time and probably at about 1/10th or 1/20th the cost of people using other tools. Of course, we would do it at 1/20th of the cost and we would charge 1/10th of the cost. So the customer would have a big consumer surplus. They would pay 1/10th of what they would have paid with IBM Global Services or Broadvision or something, but we would have a massive profit margin because we'd be spending less than half of what they paid us to do the job. Livingston: So you're doing well, have great people, and are profitable, and then you decide to take VC money? Greenspun: Here was the problem: hiring businesspeople was almost impossible. That was one of the things that drove us into the arms of the VCs. Why is it hard to hire businesspeople for a young company? There was a guy recently hired by Microsoft to be their chief operating officer--Kevin Turner. He's 40 and was CIO of Wal-Mart. Graduated from East Central University in Ada, Oklahoma, with a bachelor's in business. That was it. (Cautionary for those of us in the higher ed biz; this guy never had much of it, but he was apparently very effective.) They could have hired anybody in the world--they have all this cash--and they hired this guy. You want somebody who's a really good manager. Managing your company might be harder than managing Microsoft because Microsoft has $40 billion in cash, so they can recover from mistakes that you won't be able to recover from. So you need a guy like that. But entrepreneurs love their babies and never ask themselves, "Why would a guy like that want to work for me? I have no resources to manage. That same person could work at Microsoft and have tens of thousands of good employees to deploy on projects, tens of billions of dollars to invest in interesting projects. Philip Greenspun 327 Why would they want to come work at my company where everything is constrained?" So it's not as simple as hanging out a shingle and saying, "Here's our small company; we have $15 million a year in revenue and we're profitable; now we need a manager." The people you are likely to attract, by definition, are people who couldn't get a job at General Electric. We were having trouble because the handful of good people who wanted to work at startups were all dazzled by the names of the venture capitalists. They'd say, "If you don't have backing from Kleiner Perkins, we don't want to work for you." We talked to a headhunting firm, and the guy was candid with me and said, "Look, we can't recruit a COO for you because anybody who is capable of doing that job for a company at your level would demand to be the CEO." And I thought, "That's kind of crazy. How could they be the CEO? They don't know the business or the customers. How could we just plunk them down?" In retrospect, that was pretty good thinking; look at Microsoft: it took them 20 years to hand off from Bill Gates to Steve Ballmer. He needed 20 years of training to take that job. Jack Welch was at GE for 20 years before he became CEO. Sometimes it does work, but I think for these fragile little companies, just putting a generic manager at the top is oftentimes disastrous. There was no way we could have hired first-rank businesspeople in that environment. There were too many companies that were low-risk and had more assets that were hiring the best people. All we were going to get were the second-raters. We'd get first-rate programmers because we had a company where programmers were the stars and we already had great colleagues for them, so we were going to attract great programmers, just not great businesspeople. Because we were not GE or Microsoft, we were not a place where a great businessman rationally would have wanted to work. We did get one good guy, Cesar Brea, who had done a lot of software consulting at Bain. He came by the house to check us out because he had heard about us from a friend of a friend and was looking to work at a company instead of being a consultant. What sold him on us was that, when he came to talk, there was a check for $500,000 from HP on the coffee table that we hadn't bothered to deposit yet. He knew that if we could leave a check lying around for a few days, then we must have been doing OK. The other thing was that the original sales pitch that I made to employees was, "Come work here. You'll make $150,000, maybe $200,000 a year if you do a great job and you make your customer really happy. We can just do that forever, making the customers happy, not spending too much. We'll pocket the profits, we'll have fun offices, a beach and ski house that everyone can go enjoy and go there for a week and do some writing. We'll collaboratively have this great lifestyle." But they felt like they were dumb because every day they were reading the newspaper about people who had worked for 6 months at some company and now they were worth $20 million because of an IPO. They'd ask me, "Why aren't we doing an IPO?" And I'd say, "Because we have profits." 328 Founders at Work But due to a couple forces--customers and recruiting--we began to think, "Well, maybe we should hand out stock options and tell people this is going to be part of their compensation and try to go public." We did have more revenue and profits ($20 million and $3-$4 million, respectively) than almost any technology company that was then going public. Despite all of our growth, we were cash-flow positive, and we had all this profit that we had to pay taxes on. I think once we prepaid a year of rent just so we wouldn't have to pay tax. The company was growing 500 percent a year and generating so much cash that we had to find ways to spend it before the IRS got it. So we talked to some underwriters--we were big enough that we were actually able to get meetings. They were very candid with us and said, "Look, we're not going to take you public." We said, "Why? We've got more revenue than any company you've taken public in the last 6 months." They said, "We get paid a percentage of the deal. The more deals we do, the more money we get paid. If we want to take you public, we'd have to waste a lot of time doing due diligence. We would have to look at your accounting and talk to your customers. We would have to convince ourselves that you were a good company." "So what? You have to do that with any company." "No, with all the other companies, we just look at the names of the venture capitalists who've backed them, and if it's a big name like Kleiner Perkins, we just take the company public without doing any research. We have no idea what these companies do, we have no idea who their customers are or if they're satisfied. We don't do any research. We just take them public and take our fee. So in the same time it would take to take you public, we could do five or six of these VC-backed companies. Sorry, we're not interested." That was a wake-up call, and I think in retrospect it shows why so many of these companies that were taken public couldn't survive. They had no profit and no possibility of making it, but the underwriters never looked at them carefully. I had brought in Cesar and another business guy who was a Harvard MBA, and we had all these VC firms knocking on our door. I was an engineer. The MIT way of doing things is that you delegate to the experts. If you are riding in a car with five guys and it breaks down and you are a math major, you don't get out and start poking around with the engine if there's a mechanical engineering major on board. So I felt like, "OK, these VC firms are all claiming they are going to provide added value and that their money is different, but it's hard for me to evaluate these things, so I'll just delegate it to these two guys who are MBAs. That's what they're supposed to know about." Probably the VC firm that we should have picked was called Summit. They were very humble; they said, "Look, we don't know how to run your company. We know how to go to institutional investors and get their money, and then we invest it in management teams with a track record of profitability, like yours. We're not going to tell you what to do and tell you that we're going to recruit everybody for you because we don't know how to do that. We know how to get Philip Greenspun 329 money from pension funds, give it to you, and then talk to an underwriter along the way." There were these two VC firms--Greylock and General Atlantic Partners-- that were among the group, and they would send their senior partners by to schmooze us and talk about their successful track records-building companies and management teams. I thought to myself, "I don't want to be CEO of this company where I have to repeat myself and tell people what to do and travel everywhere. It would be so nice to just be the CTO and have a brilliant management team installed in my place." So it was very attractive to me, and our MBAs said, "Yeah, these Greylock and General Atlantic guys, it's a bigger name, and it will really help us." Slightly worse terms than Summit--actually, with the deal Summit was offering, I could have sold some of my shares to them, taken some cash out, and had some money, and in retrospect that would have been a very smart idea. Especially if you are going to get into conflict with a venture capitalist later, you don't want to be a salary man with $130,000 a year while they have billions of dollars in assets. So I let them decide, and they chose Greylock and General Atlantic. Which might have been OK, except that the senior partners in those firms were so rich that they didn't want to spend time sitting on the boards of companies they were investing in. Why should they? They had six houses each and Gulfstream jets to get among all their houses. They were going to the World Economic Forum in Davos. Why would they want to sit at my board meeting? I used to sit at my board meetings, and I would think to myself, "This is my own company and I'm bored out of my skull." The VCs delegated very junior people to sit on our board. One guy had been a management consultant at Bain. He had never run a company; he never had profit-and-loss responsibility, which is the key. And he never started a company, and that was true with the General Atlantic board guy as well. He had been a middle manager at a big company before he went to General Atlantic. We got these guys on our board who just don't know anything about running a business. Fundamentally, if you have a lemonade stand, you have to sell your lemonade for more than it costs you to make. That's really all you need to know to run a company. I would have been so much better off if the manager of the Central Square McDonald's had been on my board, because at least he would have understood how to do accounting. The guys on my Board had been employees all of their lives. You can't turn an employee into a businessman. The employee only cares about making his boss happy. The customer might be unhappy and the shareholders are taking a beating, but if the boss is happy, the employee gets a raise. By contrast, the businessman cares about getting a customer, taking his money, not spending too much serving that customer, and then selling something more to the same customer. These are totally different psychologies. The VCs found a CEO for the company, and I was like, "OK, great! Finally, I can relax." This guy was a very smooth talker. He had been the COO-type at a software consulting firm, Cambridge Technology Partners, which is a pretty 330 Founders at Work bad company, actually. They never had a really good product, and I don't think their customers were very well served. If you are going to get a manager, it's probably better to get somebody from GE Jet Engines because, at the end of the day, the customer who buys a GE jet engine gets value. It's a high-quality product. They at least have that kind of culture of building something reasonable for the customer. Livingston: Did you like and approve the hire of this new CEO? Greenspun: I liked this guy reasonably well, but a lot of it was desperation. I really didn't like what my job had become. Until the company had about 40 people, it was a lot of fun. I felt like work was getting done that I would have done if I'd had more time. It was being done in my style and to my quality standards. It was like being pushed along by this tide of helpers. But at the time of the VC investment, we had 80 people, and I thought, "Things are beginning to get done that I wouldn't have done." Some of my cofounders and more experienced folks were also stretched pretty thin because of the growth. I thought, "We just need the insta-manager solution." Which, in retrospect, is ridiculous. How could someone who didn't know anything about the company, the customers, and the software be the CEO? Our customers weren't hiring us to be management experts; they wanted a really good programming team to build something of high-quality and deliver it quickly. They didn't need anyone to talk smooth to them. A lot of the traditional skills of a manager were kind of irrelevant when you only have two or threeperson teams building something. So it was almost more like you were better off hiring a process control person or factory quality expert instead of a big executive type. They brought in a new executive team very quickly, and I acceded to this because I knew that my skills weren't in management and, in theory, somebody else could have done just as good a job as CEO. But apparently nobody could do quite as good a job at making the engineering decisions on the toolkit. Jin and I and a few other experienced engineers--we knew what worked, we knew what didn't work--we should be concentrating on the product. The CEO was a guy who had never been a CEO of any organization before, and he brought in his friend to be CFO. His buddy didn't have an accounting degree and he was really bad with numbers. He couldn't think with numbers, he couldn't do a spreadsheet model accurately. That generated a lot of acrimony at the board meetings. I would say, "Things are going badly." And he'd say, "Look at this beautiful spreadsheet. Look at these numbers; it's going great." In 5 minutes I had found ten fundamental errors in the assumptions of this spreadsheet, so I didn't think it would be wise to use it to make business decisions. But they couldn't see it. None of the other people on the board were engineers, so they thought, "Well, he's the CFO, so let's rely on his numbers." Having inaccurate numbers kept people from making good decisions. They just thought I was a nasty and unpleasant person, criticizing this guy's numbers, because they couldn't see the errors. From an MIT School of Engineering standpoint, they were all innumerate. Philip Greenspun 331 Livingston: What about your board? Greenspun: We were supposed to have two outside board members to break this kind of deadlock. They were subject to the venture capitalists' approval, and they wouldn't approve anyone. I'd say, "What about this MIT professor?" And they'd say, "No, he's not qualified." "What about this person who's started and run a $100 million company?" "Not qualified." They never proposed anyone themselves, and whoever I proposed, they shot down. Basically, with their CEO that they brought in, they had a three-to-two board majority no matter what. And they said, "We're going to run this company. We're going to make all the decisions, and you're just going to be a figurehead." I got very upset. It was a difficult time for me. I didn't have enough perspective to realize... A couple of my friends, John Gage and Bill Joy, the founders of Sun--I know John, and I don't think he'd be upset if I told this story--he would scream and yell about the direction that Sun was taking and how bad it was, and Bill Joy would say, "C'mon, John, calm down, it's only a company." Which is the right perspective to have, but I didn't have that distance. If I had been on the board of somebody else's company and the same kind of thing was going on, I could have probably contributed in a more positive manner just by having less emotional stake in the matter. Remember, I'd financed the company and I owned most of it, so it was a big asset for me. It was my only asset, basically. It was just too personal. So after about 6 months, because they had no management experience, no P&L experience, no engineering experience, and no numbers experience, they couldn't see that what I was telling them was right and that they were headed for some serious financial and customer losses. They just thought I was injuring their self-esteem--that's what they said. They basically fired me and all but one of my cofounders. They pushed them out of the company within a month or two. I'd been fired 2 months after they came in; I just didn't know that I'd been fired. I was still getting a paycheck, but nobody was listening to me. They were telling people, "Don't listen to him; he doesn't have any power." I was chairman of the board. I'd been fired probably within a month and half, but it took me 6 months to realize it. They finally said, "OK, you're fired now, but you can still be on the board." I initially thought, "Maybe this is good." I was sitting in my bathtub reading the New Yorker magazine, and I realized that I'd been psychotic. That I'd thought, "If I don't write software, people won't have any software. If I don't write books on how to do things, nobody will learn how to do things. If I don't teach at MIT, these students will never learn anything." It hit me: I could sit here in this bathtub for the rest of my life reading the New Yorker magazine, and Microsoft will eventually write all the software that people need, and maybe it will be clunky and expensive, but so what? It's not my problem. They'll get the software they need, eventually. If I don't teach at MIT, they have $5 billion in assets, and they'll be able to hire somebody much better than I am to teach these kids. 332 Founders at Work That was an epiphany; I didn't have to work 7 days a week anymore, doing stuff that was repetitive in a lot of cases. I'd been building multiuser Internet applications for 20 years, with a lot of excursions into the CAD computer and engineering world as well, but basically 10 years exclusively in Internet apps. So I thought, "I can be doing something else. I'm an investor in this company. Let them build this company. Let them deal with all these issues. I'll just collect my dividends." I thought maybe this was a good thing, that I could do new stuff-- new research projects that were interesting to me. Meanwhile, because these people didn't know anything about the business, they were continuing to lose a lot of money. They hired a vice president of marketing who would come in at 10 a.m., leave at 3 p.m. to play basketball, and had no ideas. He wanted to change the company's name. This was a product that was in use in 10,000 sites worldwide--so at least 10,000 programmers knew it as the ArsDigita Community System. There were thousands and thousands of people who had come to our face-to-face seminars. There were probably 100,000 people worldwide who knew of us, because it was all free. And he said, "We should change the company name because, when we hire these salespeople and they're cold-calling customers, it will be hard for the customer to write down the name; they'll have to spell it out." And they did hire these professional salespeople to go around and harass potential customers, but they never really sold anything. Because I wasn't a great manager--and I knew I wasn't--I said, "I'm organizing this company like McDonald's. Each restaurant is going to be managed by a few people, and they're going to have profit-and-loss responsibility. If they make a profit, they get to pocket half of it. If they make a loss, we're going to know who's responsible, and we're going to go there and fix it, and there are going to be consequences for those people." That's a very easy way to run a business. It's naturally profitable. People have all the right incentives to make their customer happy, to do the thing on time, to take the customer's money, deposit it in the bank, and then move on to the next one and get their bonus at the end of the year. Without even realizing what a risk they were taking, the new management said, "Programmers are only good at programming. They shouldn't do anything but program. So we'll hire salespeople to sell, and not have programmers try to sit with the customer." At the time, Anderson Consulting (now Accenture) didn't have any salespeople. They always had the people who were executing the project sell it. "You eat what you kill" was the phrase at Accenture. You don't have a salesperson go out and tell the customer, "We can do this," making promises and then handing it off to a programmer. So they ignored the wisdom of Accenture and the history that we had of profitability, and they said, "We'll hire professional salespeople to sell. The programmers will program; they will not be responsible for anything other than coding and listening to their boss back in the head office in Cambridge. The salespeople won't have any responsibilities having to do with the project, they Philip Greenspun 333 will only have to listen to their boss. For keeping to deadlines, the programmers won't have to do that; we'll hire project managers to keep the deadlines." And then they hired these people who, still to this day, I have never figured out what they were supposed to do. They were called "client services." They weren't the project managers. I think they were supposed to keep the customer happy. The new management hired all these people but, if you asked, "Who's responsible for making sure that this project, overall, makes money for the company and who has an incentive to ensure that it's done on time and the customer pays?" the answer was essentially, "Nobody." You had to go way up the management chain to find somebody who had P&L responsibility. So I told them that they were taking an enormous risk, that they had no idea what the consequences were going to be. Their response was, "Shut up, Greenspun. You're injuring our self-esteem. This is how good companies like IBM do it. You don't know anything." They tried to make everything as much like IBM as possible. They were very conventionally minded. The problem with doing that is that those niches are occupied. If you have bland, boring marketing materials just like IBM and you have very high prices and slow delivery, there is a niche for that product and it's occupied. IBM is there. The customer doesn't need you. They just go to IBM Global Services, if that's what they want, or their own IT department, for God's sake. In the case of open source software, it can fall apart quickly. If you become slower and more expensive and more mired in bureaucracy than the customer's own IT department, then they'll just say, "We have lazy, ineffective, slowmoving programmers right here in our back office. We don't need you." So it was falling apart very quickly financially; I could tell that. The board meetings got more acrimonious. They actually precipitated the ultimate fight. They said, "Look, we're going to kick you off the board and sue you for injuring our self-esteem. You better talk to a lawyer." Livingston: Didn't you also insult them by describing publicly what it was like to have VCs run your company? Greenspun: Only after they sued me. I said it was like watching a kindergarten class get into a Boeing 747 and flip all the switches and try to figure out why it won't take off. That was before I got my pilot's license. Now I know how apt it was. So I talked to my friend Doug, a great lawyer. He said, "You need to talk to my friend Sam Mawn-Mahlau at Edwards and Angell and figure out what to do. Sam looked at all the deal documents and said, "You own this company. You are a majority shareholder." I said, "But these guys told me that I have no power because they control the board, three to two, and it doesn't matter what anyone else says." He said, "Yes, but the shareholders elect the board. Just have a shareholders' meeting and elect yourself and your cofounders (or whoever else you want) to the board, and these guys will be back to their two board seats, which is what they bargained for. They have a minority investment. They bargained 334 Founders at Work for two board seats and veto power over certain transactions from those board seats, but that's all they're entitled to." I asked if there was any risk in doing this. He said, "There's some risk that they would sue you in the Delaware Chancery Court. But VCs hate to spend their own money, so I don't think they'd do it. Litigation is very expensive, and, if they can't find a way to stick it to their limited partners, then they are not going to sue you." Basically, whenever VCs do an investment, they make the startup company pay their legal expenses. Remember, the investments come from the limited partners, the pension funds, etc. So they get their 2 percent annual management fee, but a lot of their costs, like their legal expenses, are also actually being paid by the limited partners. For example, a company is supposed to get a $700,000 investment, but right away they return $50,000 to pay the legal fees of the venture capitalists, so the limited partners actually only get $650,000 of their capital working in that business. If they can't come up with a scheme like that, they aren't going to sue you because they are not going to want to spend their own money that they could be spending on business jets and vacations and other things that are delightful to VCs. So I said, "Great." My cofounders and I, who were shareholders, had a meeting and said, "Who wants to vote for Philip Greenspun to be CEO and on the board?" We had to change the corporate bylaws also because the default corporate bylaws in Massachusetts are that the shareholders elect officers like the CEO. The bylaws of the company, for whatever reason, said that the board elected the CEO, so we said, "Well, let's just change it back. We're the shareholders, so we'll change this bylaw so now it's back to the Massachusetts default." It was a perfectly legitimate bylaw that the shareholders in a small corporation would elect the CEO. So we changed the bylaws and elected me as CEO, which, under some other bylaws, gave me an automatic board seat, and then we elected a couple of our founders to the board. So now we had a threeto-two board majority. Livingston: Where did you physically do this? Greenspun: We did it by letter actually. We did it in the lawyers' office downtown at Edwards and Angell. I knew that they wouldn't like this, and I wanted to keep things as orderly as possible, so I called up the old CEO--whom I think we had elected COO, so we had demoted him to chief operating officer and kicked him of the board-- and I said, "Let's face it; you're just not qualified to run this company. You're losing money. But we don't want to have any disruption, and you are a good manager and maybe someday you can learn enough to be CEO, but that's not today." We tried to make it conciliatory--"We're not going to change anything, we're not going to go on a mass firing spree, but we have to get this company back into being cash-flow positive because, whether you know it or not, you've lost a lot of money." They still didn't know it, because their accounting was all so inaccurate; they had no idea. They hadn't been audited yet. Their accounting Philip Greenspun 335 firm hadn't come in and shown them all their mistakes. Basically, they were flying solo. Then Jin and I went off to California for some reason, on a guy's road trip to California and having a great time. When we got back to Boston, we discovered that we'd been sued. Me, Eve, and Tracy got sued in Delaware Chancery Court. I thought, "God damn that lawyer, Sam, he lied to me; he told me we wouldn't get sued!" And I later realized that Sam had been right and wrong. They still had control of the company checkbook. Even after he'd been voted out as CEO and the new board had been voted in, the VCs had gotten their pet CEO to write a $1 million check from the company checking account to their lawyers so that they could have this shareholder lawsuit without paying for it. This was an unauthorized looting of the company on behalf of one set of shareholders. It was probably illegal, but in Massachusetts it could take years to recover that kind of money. And they figured it's not going to be a big deal because we'll still have control of the company; we'll impoverish this guy with an onerous lawsuit. He'll never have enough money or staying power to come after us in Massachusetts for looting, and maybe he'll never find out. So now I had to defend this lawsuit. I had to hire Delaware counsel, which was very expensive. It basically consumed all my assets over 2 1/2 months. But they had a case that really couldn't be won, since they were minority shareholders. Let's say you have one share of IBM and you go to the Delaware court and you say, "I want to control IBM; I feel like I'm entitled." There's really nothing holy left in America: religion's not holy, the family isn't holy, marriage isn't holy, but the only thing that's really left that is holy to Americans is ownership. And that's what the courts are there for. They are there to preserve the rights of owners of things. So when you go to court and say, "I don't own this thing, but I want to control it," you are almost guaranteed to have a poor reception. Eventually, the VCs simply bought my shares, partly so that they wouldn't be prosecuted for the next 5 years in Massachusetts court for the looting, partly because they wanted control of the company, who knows. It was stupid. If they wanted to buy the company from me and run it however they wanted when I was sitting in my bathtub reading the New Yorker magazine 6 months earlier, they could have done it at a lower cost without all this Sturm und Drang, and everyone would have lived happily ever after. But it never occurred to them that I would want to do something else with my life. They were very worried about me competing with them and starting a new company. I had been programming sitting at a desk for 23 years, working on Internet apps for 10 years-- did they really think that I would take all my newfound money and freedom and program some more? In fact, I went traveling for a while, and then I went to flight school and got my private pilot's license and bought an airplane and went to Alaska, and all through this time, they were busy losing money. Livingston: What happened to ArsDigita? Greenspun: They finally got a call from the bank saying that they were running out of money in their checking account, I think. That's when they woke up to 336 Founders at Work the fact that the CEO and CFO hadn't been doing a very good job. Partly because they had burned through about $40 million in cash (I had left them with about $40 million in cash when I turned over the reins), and they didn't understand why. The VCs came in and fired the CEO. There was a period where I wasn't supposed to talk about them or the company, but that's over. But I think they don't like me talking about the lawsuit, because being incompetent and running a company is embarrassing enough, but being totally incompetent in litigation also looks bad. I had fostered an atmosphere of caring about end-user experience and education and "we're going to have fun, we're going to have the beach house and a Ferrari." We did lots of things for free--we had a foundation, we did programs for high school kids, and we did a one-year intensive computer science program for people who wanted to transition from being a poet or whatever into being a programmer. So people thought of me as a hippie. In reality, ArsDigita was my sixth company, and I knew how to make money, and I was the investor. So while I publicly had a persona of doing all this fun stuff and money takes care of itself, I was watching the bottom line very carefully. I had set things up so that the company could not lose money while I was CEO, and if there was a problem, it would be identified very quickly and we would fix it. If you are a for-profit corporation, your job is to make money, and if you're not making money, you're not doing a good job. End of story. It's important to have fun, but once you incorporate for profit, my attitude is that you better make a profit. When I was trying to retake control of the company, most of the programmers at ArsDigita were so relieved to be rid of me. They thought, "Now we don't have to listen to this guy, we don't have to have our code reviewed, and we can all be happy and go home at 5 p.m. and never write anything. Let the salespeople sell--we don't have to talk to customers anymore." Some of them would email me and say, "Why are you doing this, Philip? We don't understand." I'd say, "Let me explain to you about being a shareholder in a corporation. I don't work there anymore. I'm not an employee. The only thing that you can do for me is send me a dividend check." I had to lay it out in blackand-white for them; it was a little cold. Maybe, when I was working there, there could be some brotherly love and we could all have fun together, and if the company was losing money, it would be a shared experience. But, right now it wasn't a shared experience. I was a shareholder; I wanted my return on investment. "That's the only way I'm measuring you, and if that means that you all have to have a pay cut or your jobs offshored to India, that's a shame, but for the shareholders, all we care about is the money." The VCs also looked at the Ferrari... The Ferrari was something like $1,000 per month to lease. We parked it in the parking lot; it was a great symbol; we got written up in Forbes. I had architected the deal so we would never actually have to give out the Ferrari. You had to recruit ten friends, and then you only got to drive the Ferrari for as long as you worked at the company. I figured, "Well, programmers only stay in the job 4 years, 5 years tops. It takes them 3 or 4 years to recruit their ten friends, they'd drive the car for a year or Philip Greenspun 337 two, and then they'd want to go back to grad school or go work somewhere else; they'll quit and then the Ferrari would go back in the pool." I had set it up so it looked extravagant, but didn't actually cost anything. But the VCs and employees thought of me as someone whose spending was out of control. It doesn't look extravagant to hire a bunch of salespeople and client service people and a vice president of marketing. However, if you hire all these people in suits that don't do anything productive, that is extravagant. They went through $40 million in cash. But it doesn't appear extravagant. Nobody will fault you as a businessperson for hiring a salesperson and paying him $100,000 a year even if he is not selling. They won't fault you for hiring a $200,000-a-year VP of marketing who used to work at Oracle even if he's useless, because the guy wears a suit and shows up to work every day for 5 hours. The Ferrari, which costs less than any of these things and sits in the parking lot, looks extravagant. But it inspired the programmers; it got us all this press; it made customers think that we were a profitable, successful business. It had all these benefits. At the end of the day, the Ferrari was the only thing that the VCs made a profit on. When they sold the Ferrari, they sold it for more than I paid for it. Partly they killed themselves through replacing profit-and-loss responsibility pushed down to the lowest levels with a functional management structure, where you only had to report to your boss. There was a programming department, the sales department, the client services department (whatever it was), and there's the project management department, and the only person responsible for overall profit and loss is the CEO. That was really a bad problem for them. The second thing that killed them was a common phenomenon in programming called "second-system syndrome." This is identified by Fred Brooks in The Mythical Man-Month, which was about the IBM OS/360 project, the operating system for their mainframe in the 1960s. We had the first system that was running photo.net, ArsDigita.com, and all of our clients. It was a set of data models in SQL and page scripts that talked to those data models to provide an online community and e-commerce site. We had all these modules do different things. We had two versions: one was in Java Server Pages, very straightforward, JSP talking to the Oracle data model, and the other one was an AOLserver Tcl, which is kind of an obscure web server used by America Online for most of their web services--very efficient. That was what we had started with in 1995. It was state of the art in '95; today you could do just as well with Microsoft Internet Information Server and Active Server Pages. Anyway, it was the first web server to have database connection pooling. We'd become a little bit identified with it, and the VCs and their pet managers were convinced that, if we just became the Java company, we'd have an increase in sales. Customers didn't seem to care. Going back to 1998, we had plans for three versions: Java Server Pages, AOLserver, and Microsoft Active Server Pages in Visual Basic, but it turned out there was no customer demand for the Microsoft one. People said, "Look, I 338 Founders at Work paid my monthly fee. I want my site up and running." We had a lot of cost efficiencies from running the AOLserver version internally for our hosted customers, and if the team was on vacation and there was a problem with the customer's site, any other programmer could go and maintain it because all the files were in the same places; everything was named conventionally. It was very easy for programmer A to debug programmer B's work. So what was the problem? We were making money, customers were happy, people were using this. Well, with any big system, people write down a list of things that they don't like, that they could do better. It gets to be a long list. The biggest problem with our system was the same problem with SAP: you have data models, some customizations, and some scripts to talk to the data models. When you upgrade from one version to the next, you have all this SQL stuff that has to be done in Oracle to migrate the old data model to the new one--if you add columns to the tables, for example. If you are setting up a brand new system, it's easy. You just create tables. But in an existing running system, you have to alter the tables. That's kind of a pain. If there have been customizations done to it that haven't been rolled back into the toolkit, you may have to recustomize a bit. This is a problem for SAP, and it was a problem for us. My attitude as an engineer was that SAP is a company with billions of dollars in assets and lots of smart people. They had never solved this problem, so we're not going to attack it either. Not until we have infinite money. We'll just leave it, and, if customers have to spend 2 weeks of hard programming upgrading the server, then that's the cost. So that was one of the biggest things. The second thing we didn't like about it was that it wasn't the full Java 2, Enterprise Edition. At the time, some of these people thought that it would be cool if they had multiple layers of Java in there. They said it was a little too slow; they had all these criticisms of the system. That's true of any first system. It's new, so it's kind of got some ugliness to it. Shortcuts have been taken. So then you say, "OK, my next system, the second system, is going to fix all these problems at once. It will be upgradeable instantly, it will be super fast, it will all be J2EE, and it will be fabulous. And it will be ready real soon." But a lot of those problems with the first system aren't there because the people who built the first system are dumb, they're there because it's kind of a difficult challenge and there are compromises involved, and that was an inevitable result of one of the compromises. And the people doing the second system are just too naïve; they haven't worked on this problem before, and they're young, maybe, and they just don't realize that it was hard. Fred Brooks said that the second system is always late; sometimes years later than you expect. And in fact, because of the ambition, usually it won't solve any of the problems. They've got a long list of things, and it will solve almost none of them in the end. So that's exactly what happened with these guys. They told customers, "Don't use the old system, because we have a new one that should be shipping in 3 months and it will be better." It actually took them more than a year and a half. Philip Greenspun 339 So they suffered all these sales losses because the thing was late. They killed demand for the old product by telling them the new product was "just around the corner." Then, when the new product finally came out, some critical pages were literally a thousand times slower than the old system. So where you have had a 1-processor pizza box server, you would now need a 64-processor, $2 million server to serve the same user community. It had never been tested; it had never been released on a running system like photo.net. It was just a bunch of programmers--sitting in a vacuum and never dealing with a publisher or a user--programming whatever they thought. They were all young because they had gotten rid of some of the senior people. The question-and-answer forum, which was one of the most heavily used parts of the site, was literally a thousand times slower than on the old system. As far as upgrades, they said, "We're going to have this abstraction layer, and you'll never have to actually interact with the database; you'll just talk to this abstraction layer." Sure enough, the first time people tried to build a real system for a customer list, they found that the abstractions weren't the right ones, and they had to go underneath and deal directly with the database, which immediately means that, if they ever had to upgrade that to a new version, they would have all the same problems as the old system. So they didn't solve the main problem they said it would solve. It wasn't true J2EE, either. They said it was going to be J2EE, but they didn't like some of the commercial tools or the open source tools that were available, so they built their own magic persistence layer. They built all their own stuff, so customers who looked at it said, "This isn't actually J2EE. It's a pile of Java crap, yes. It's very complicated, yes. But it is not J2EE." (To be J2EE, it has to use these other components that are standard and distributed by Sun or WebLogic.) So they failed to achieve any of their goals. The old system took the average programmer about a week to install and figure out and customize a bit. The new system was taking an experienced programmer 2 full months to understand. There were a lot of projects where people would have gotten there sooner if they had just started with a raw Windows machine. Your competitor is always Microsoft, so you have to look back and say, "What does Microsoft have? They have Internet Information Server, Active Server Pages in Visual Basic, some example code that they distribute. So would somebody get there faster if they just got that and started from scratch?" And the answer compared to the new ArsDigita toolkit was "Yes." Nobody wanted to use it. People would download it, but they would give up. There was no adoption in the open source world. A handful of teams at ArsDigita were installing the new system for customers, but it was taking them forever. They were all running over time and over budget. They ended up with a product that nobody wanted. At the end of the day, the programmers killed the company--the junior programmers who were put in charge. The VCs and the management team basically selected programmers according to who had an agreeable personality. They picked people who were pretty junior, who didn't have much experience with real-world customer projects, and they basically 340 Founders at Work killed the company. Once you have a product that nobody wants, it doesn't matter how good your management team is. So 4 or 5 months after our shareholder meeting, they came in and fired the CEO--demoted him to COO or something. They put in one of their own partners as the CEO. He hung out there for a while. They put in more money, I think another $10 million, and he gradually figured out that the numbers that the CFO was giving him were bogus. He began to run his own numbers, and he realized that they were losing money on every project and that, if they got one more project from a customer, because the software was so bad, it would cost them more to serve that customer than the revenue. At that point he said, "Forget this, I'm shutting it down." So they tanked the corporate shell and welched on all of the creditors, landlords, and so forth, and they handed over the assets of the company to Red Hat, which was another investment that they had. They gave all these contracts and the software to Red Hat, essentially for free. They kind of gave people the impression that the company had been sold to Red Hat. Now, if an ArsDigita creditor came to Red Hat and said, "I want my money. You bought this corporation," Red Hat would be very careful to say, "No, we didn't buy that corporation." But it seemed to the public that Red Hat had bought this company, so the VCs could say that, "Yes, this was another successful investment." Red Hat got some advantage: they got some revenue that they could report, and since they didn't pay anything for this stuff, they didn't have to say, "Oh, by the way, this $10 million spike in revenue is due to an acquisition." So it looked like they just had growing sales. They hired a handful of the programmers and stuck them in a suburban dungeon out on Route 495. So that was the end, but it didn't take too long. Our shareholder meeting, I think, was in April of 2001. I sold out in June of 2001. They tanked by January 2002. Livingston: If there was one thing you could have done differently, what would it have been? Greenspun: The one thing would probably have been slightly slower growth, I guess. Not to worry so much about the competition, concentrate on getting really good people who shared the company's vision, who could be mentored to the point where they could then recruit somebody else. Basically, just limiting growth. Livingston: I know it was your sixth company, but was there anything that you found you were better at? Greenspun: I think I was probably mostly worse at things than I thought. The VCs had a point when they said people remember how you made them feel more than what you said. Managing programmers is tough. That's one reason I don't miss IT, because programmers are very unlikable people. They're not pleasant to manage. In aviation, for example, people who greatly overestimate their level of skill are all dead. You don't see them as employees. J.F.K., Jr., is not working at a Part 135 Philip Greenspun 341 charter operation because he's dead. It's not that he was a bad pilot; it's just that his level of confidence to level of skill ratio was out of whack, and he made a bunch of bad decisions that led to him dying, which is unfortunate. In aviation, by the time someone might be your employee, probably their perceived skill and their actual skill are reasonably in line. In IT, you have people who think, "I'm a really great driver, I'm a great lover, I'm a great programmer." But where are the metrics that are going to prove them wrong? Traffic accidents are very infrequent, so they don't get the feedback that they are a terrible driver because it's so unlikely that they'll get into an accident. A girlfriend leaves them--well, it was certainly her deep-seated psychological problems from childhood. Their code fails to ship to customers. It was marketing's fault! If a software company dies, you can blame the marketing people. Programmers almost all walk around with a huge overestimate of their capabilities and their value in an organization. That's why a lot of them are very bitter. They sit stewing at their desks because the management isn't doing things their way. They don't understand why they get paid so little. It is tough to manage these folks. But on the other hand, there are better and worse ways to do it. If you want to ensure that the customer gets high-quality code and that the product is high-quality, you have to step on these younger folks' egos and say, "No, that's not the way to do it." The question is, how harsh can you be? I could have been kinder and gentler for sure. I think I was good with the customers. That's one thing: I realized that businesspeople didn't have any ethics in a fundamental way. Forget how they dealt with me and other stuff, but here's one example where I realized that having basic ethics was an operational advantage. There was one customer that didn't want to pay their bill, and they were upset with us. There was a meeting about this, and I was with the new CEO and one of the MBA guys that worked for him, talking about this customer. It was out in the Los Angeles office. The managers said, "This customer's upset with us. How do we get him to pay us more money?" I said, "How much do they pay us?" They said, "$700,000." I said, "Is their site launched?" They said, "No." I said, "How much did we tell the customer that it would cost them until their site is launched?" They said, "About $700,000." I said, "Well, then why are we having this meeting? Why are we talking about getting more money out of these people? Shouldn't we be talking about getting their site launched?" It was a perspective that was completely alien to them. What value are you delivering to the customer? Are you delivering what you said and what they paid for? I didn't think of myself as a pious, ethical expert, but at least I had that much: if you take money from a customer, you should deliver some value to them. After the meeting, I called up American Airlines and got on a plane. It was a Friday and I had some social commitments for the weekend, but I cancelled them. I flew out to LA and told the programmers that I wanted to see them on Saturday and talk about the customer. 342 Founders at Work The programmers were all pretty junior and said, "It's the customer's fault because they keep asking for these features and saying the site can't launch unless we have all these complicated features. They keep coming up with new ones because they see other people's sites." I replied, "You guys are engineers, and you have to explain to the customer that there's a lot of learning that happens only once the site is launched. And you have to get them to accept some kind of minimum launchable feature set. You don't need 100 user question-and-answer forums on sites that are brand new. There are only 15 users. How would they find each other if they're fragmented into 15 forums?" I said, "You can't blame the customer. You have to work with them to come up with the minimum launchable feature set, and get the site launched. You guys need it for your resumes; you want to be able to say that you worked on a project that succeeded and here's the site and anybody can look at it, not that you got a paycheck and accomplished nothing and that you worked for a stupid customer and it's all their fault." I brought the customer in on the same day, and we talked to them and found out that, well, they didn't need the last features if it meant that their site wasn't going to launch. They hadn't understood the tradeoffs. A couple weeks later they launched. Livingston: Was there anything that you think people misunderstood about the demise of ArsDigita? Greenspun: I haven't written that much. I'd like to write some reusable lessons. We have some uniquely clever things that we did, like making websites that were multilingual. Just engineering stuff. I just haven't had the time or the energy for some reason. People focus a lot on the bust-up phase. It upsets me that they remember the wrong things like, "This Greenspun guy sued the venture capitalists." This is not true, first of all, since I was a defendant, not a plaintiff. It really upsets me that people think of ArsDigita as a venture capital-backed company. It wasn't. It was a company that I started and backed financially, basically by myself, but within a year or two brought in some other smart, good people. It upsets me that they think of ArsDigita as a company that the VCs somehow played a big role in starting; that I sued them and somehow got money trickily. That bothers me. I financed the thing. I put in money and years of labor, and right at the tail end--they were only in there for about 18 months from the time they invested to the time it went bust, and at that time the company was more than 5 years old. So it was not a VC-backed company; it was a company that took VC money just in an attempt to shortcut the underwriting process in going public. I did not make money through litigation. I bought some shares, took a risk, sold them in the end at a much lower return than I would have if I'd never taken the VC money in the first place. I could have just taken profits out of the company on a year-to-year basis. Just take dividends, instead of giving such Philip Greenspun 343 large bonuses to the employees--some combination of slightly lower bonuses and slightly less retained earnings in the company. So it was a simple story of investing and then selling shares. The litigation was a sideshow. In the end, they bought me out the same as if they hadn't sued. They just thought, "Well, maybe we can steal control of the company instead of having to buy it," and, when that didn't work, they bought it just like any reasonable person would have expected to.