17.1 Cygnus

Free For All. Go to the Table of Contents. Vist the Gifcom.


There have been a number of different success stories of companies built around selling free software. One of the better-known examples is Cygnus, a company that specializes in maintaining and porting the GNU C Compiler. The company originally began by selling support contracts for the free software before realizing that there was a great demand for compiler development.


The philosophy in the beginning was simple. John Gilmore, one of the founders, said, "We make free software affordable." They felt that free software offered many great tools that people needed and wanted, but realized that the software did not come with guaranteed support. Cygnus would sell people contracts that would pay for an engineer who would learn the source code inside and out while waiting to answer questions. The engineer could also rewrite code and help out.


David Henkel-Wallace, one of the other founders, says, "We started in 1989 technically, 1990 really. Our first offices were in my house on University Avenue [in Palo Alto]. We didn't have a garage, we had a carport. It was an apartment complex. We got another apartment and etherneted them together. By the time we left, we had six apartments."


While the Bay Area was very technically sophisticated, the Internet was mainly used at that time by universities and research labs. Commercial hookups were rare and only found in special corners like the corporate research playpen, Xerox PARC. In order to get Net service, Cygnus came up with a novel plan to wire the apartment complex and sell off some of the extra bandwidth to their neighbors. HenkelWallace says, "We started our own ISP [Internet Service Provider] as a cooperative because there weren't those things in those days. Then people moved into those apartments because they were on the Internet."
At the beginning, the company hoped that the free software would allow them to offer something the major manufacturers didn't: cross-platform consistency. The GNU software would perform the same on a DEC Alpha, a Sun SPARC, and even a Microsoft box. The manufacturers, on the other hand, were locked up in their proprietary worlds where there was little cross-pollination. Each company developed its own editors, compilers, and source code tools, and each took slightly different approaches.


One of the other founders, Michael Tiemann, writes of the time: "When it came to tools for programmers in 1989, proprietary software was in a dismal state. First, the tools were primitive in the features they offered. Second, the features, when available, often had built-in limitations that tended to break when projects started to get complicated. Third, support from proprietary vendors was terrible. .. finally, every vendor implemented their own proprietary extensions, so that when you did use the meager features of one platform, you became, imperceptibly at first, then more obviously later, inextricably tied to that platform."
The solution was to clean up the GNU tools, add some features, and sell the package to people who had shops filled with different machines. Henkel-Wallace said, "We were going to have two products: compiler tools and shell tools. Open systems people will buy a bunch of SGIs, a bunch of HPs, a bunch of Unix machines. Well, we thought people who have the same environment would want to have the same tools."
This vision didn't work out. They sold no contracts that offered that kind of support. They did find, however, that people wanted them to move the compiler to other platforms. "The compilers people got from the vendors weren't as good and the compiler side of the business was making money from day one," says Henkel-Wallace.


The company began to specialize in porting GCC, the GNU compiler written first by Richard Stallman, to new chips that came along. While much of the visible world of computers was frantically standardizing on Intel chips running Microsoft operating systems, an invisible world was fragmenting as competition for the embedded systems blossomed. Everyone was making different chips to run the guts of microwave ovens, cell phones, laser printers, network routers, and other devices. These manufacturers didn't care whether a chip ran the latest MS software, they just wanted it to run. The appliance makers would set up the chip makers to compete against each other to provide the best solution with the cheapest price, and the chip manufacturers responded by churning out a stream of new, smaller, faster, and cheaper chips.


Cygnus began porting the GCC to each of these new chips, usually after being paid by the manufacturer. In the past, the chip companies would write or license their own proprietary compilers in the hope of generating something unique that would attract sales. Cygnus undercut this idea by offering something standard and significantly cheaper. The chip companies would save themselves the trouble of coming up with their own compiler tools and also get something that was fairly familiar to their customers. Folks who used GCC on Motorola's chip last year were open to trying out National Semiconductor's new chip if it also ran GCC. Supporting free software may not have found many takers, but Cygnus found more than enough people who wanted standard systems for their embedded processors.


Selling processor manufacturers on the conversion contracts was also a bit easier. Businesses wondered what they were doing paying good money for free software. It just didn't compute. The chip manufacturers stopped worrying about this when they realized that the free compilers were just incentives to get people to use their chips. The companies spent millions buying pens, T-shirts, and other doodads that they gave away to market the chips. What was different about buying software? If it made the customers happy, great. The chip companies didn't worry as much about losing a competitive advantage by giving away their work. It was just lagniappe.


Cygnus, of course, had to worry about competition. There was usually some guy who worked at the chip company or knew someone who worked at the chip company who would say, "Hey, I know compilers as well as those guys at Cygnus. I can download GCC too and underbid them."


Henkel-Wallace says, "Cygnus was rarely the lowest bidder. People who cared about price more than anyone else were often the hardest customers anyway. We did deals on a fair price and I think people were happy with the result. We rarely competed on price. What really matters to you? Getting a working tool set or a cheap price?"