Preface: Chinese Edition of Invisible Engines

The use of software platforms to drive innovation and transform industries has exploded in the four years since the publication of the English-language edition of Invisible Engines in 2006. Around the globe, invisible engines are ushering in a new era of software-based technological change. The Apple iPhone has shaken the mobile phone industry worldwide in part by creating a massive applications business built on the phone’s operating system. Firefox has revolutionized the browser industry by encouraging web developers to write add-ons and in doing so toppled Microsoft’s Internet Explorer from dominance in many countries. Facebook has created a powerful social networking platform by opening itself up to developers. Amazon has released a cloud-computing platform that enables entrepreneurs to access its vast software, hardware and global communication systems over the Internet. A less well known company, IPCommerce, is starting to transform the payments business in the United States by helping developers build applications that work with the diverse hardware and software than handle the various types of payments.

In this preface to the 2010 Chinese edition of Invisible Engines we will survey what has happened since we finished the book and explain why software platform-based business models continue to create enormous social value, while often producing great profits for the companies and entrepreneurs behind them.

Invisible engines are based on software code. Software programs are written in various languages. Working by themselves or with other programs they tell hardware – from the pixels on your iPhone to the chip on your desktop to the communication devices providing your internet connection – what to do. They are the brains behind everything from the card reader in which you swipe your debit card to your social network page to the complex trading decisions at hedge funds to your favorite word processing package.

Software programs can become platforms that support other software programs when code that is written to perform a particular task could be made available to other software programs so the writer does not have to write that code again. That is what Windows does. It contains many little programs that help developers write their own programs. Microsoft provides a link to that code—called an Application Programming Interface (API)—that allows developers to link into the Windows code. Some businesses make their service available by providing an API. For example, YouTube provided an easy-to-use API for people to include access to videos on their social network pages.

By making APIs available, the owners of software programs are letting others use their intellectual property, the results of hard work writing code. They can benefit from doing this if others decide to write valuable applications that work with their software platform. More people are likely to use a platform if there are more attractive applications that work with it. For example, many users decided to switch from Internet Explorer to Firefox because there were add-ons for Firefox that did things that were not available with Internet Explorer such as support for XHTML – a popular programming language for webpage developers. Software platform providers do not have to make their code available for free though. Developers that sell their applications through the iPhone app store give a portion of their revenue (about 30 percent as of the end of 2009) to Apple.

Invisible engines are “catalysts” that use a multi-sided platform business model. They ultimately create value by making it easier (usually by lowering the search or transactions costs) to get the members of different groups who value interacting with each other together. In the physical world, a shopping mall is a two-sided platform that helps bring shoppers and retail stores together. Software platforms generate value by reducing the cost for developers of writing applications for consumers and sometimes by providing a common place for users and developers to meet. For instance, the Chinese social network Renren is not only a virtual place for friends to get together, but also a place for friends to find applications that can help them and for application developers to find users. In this way, Renren creates value for its community of users and developers -and ultimately for itself.

The iPhone provides a potent illustration of this business model. By the end of 2009 there were more than 100,000 applications available for the iPhone. These applications programs have been downloaded more than 3 billion times since Apple opened its iPhone store in July 2008. Apple’s success has shaken up the mobile phone industry in many countries around the world. It has unleashed tens of thousands of entrepreneurs and created a multi-billion dollar application industry for mobile devices. Here is how an invisible engine helped make this happen.

Inside the iPhone there is a computer chip on which is stored the software code that does all the magic that has been behind the success of this smart phone. That software code is usually called the operating system for the iPhone. Apple could have decided to keep that code entirely to itself and focus on making the iPhone a self-contained device that only did things that Apple wanted it to do. Instead, in a smart move, it decided to make that operating system a software platform that could support third-party applications. That meant it had to create APIs which would enable outsiders to link into the iPhone’s operating system. These APIs give developers access to blocks of code that manipulate various aspects of the iPhone. Apple then provided a “software developer kit” (SDK) to help programmers develop applications using the iPhone’s APIs and put together a web site to provide other resources for developers.

An important set of business dynamics starts when such an operating system is opened up and thereby becomes a software platform that can support developers. Apple initially provided more than enough applications and features on the iPhone to persuade many people to get one. By opening up its operating system it then started a virtuous circle. Entrepreneurs and hobbyists saw the opportunity to write interesting applications that could use the features of the iPhone, including its large touch screen and connectivity. The iPhone users soon found that they could download applications that made their phones even more useful than they were when they first bought them. More people started buying iPhones because of the increasingly valuable applications. As the number of iPhone users increased, developers had even more incentives to write applications.

Apple has not taken this process for granted. Like most other successful platforms it has stoked the fires. It developed a marketplace, an online shopping mall, to help developers make their applications available to iPhone users and earn revenues from them. Apple is responsible for collecting money from iPhone users and then gives the developers about 70% share of the revenue. Users have benefitted from having effectively a single location to search for applications. Developers have benefited because Apple has reduced the transactions costs of selling and has assembled an audience of users.

Apple has obviously made enormous profits and seen the market value of the firm increase because of the success of the iPhone and its application store. iPhone users have done very well also as a result of the tens of thousands of applications they can choose from, some of which enable them to do things that were not possible before. New markets have opened for entrepreneurs that use the iPhone, and some of them are earning significant profits or obtaining fame. By bringing developers and users together the iPhone has served as a catalyst which has created value—and profit—out of thin air. Others have followed suit. The most significant follower is Google, which has introduced the Android software platform for mobile phones, has stimulated hardware makers to introduce phones using this platform, and has worked hard at persuading developers to write applications for its store. China Mobile set up its own application store in the summer of 2009.

The invisible engine model followed by Apple’s iPhone has helped power the information technology industry for about three decades. Apple itself was one of the pioneers in encouraging developers to write applications for its personal computer operating system. It invented the “software evangelist”. Microsoft, though, was the maestro catalyst. Its Windows software platform attracted thousands of software developers and hundreds of millions of users. As a result it has been the durable center of a vast computer based ecosystem since at least the launch of Windows 3.0 in 1990. Invisible Engines tells the story of how software platforms have transformed industries including computers, video games, and handheld devices and then accelerated innovation. It then examines the forces behind the various business models that have been adopted in these industries. Many software platforms have decided not to charge developers while others have. Some have decided to vertically integrate into hardware, while others have remained pure software vendors.

The development of the internet and the spread of high-speed broadband throughout the world have generated a new wave of software platforms. Several of the major web businesses have turned themselves into platforms. The heart and soul of any web business does not reside in a server farm somewhere or in its buildings—it lies in the thousands and thousands of lines of software code that enable people to see and interact with web pages. Once written these software programs can be opened up to others by exposing APIs that enable developers to use portions of that code to interact with the web properties.

Facebook has allowed developers to write applications that work inside its social network. As a result developers can write games – such as Farmville – which Facebook users can play, or online shopping and advertising programs – such as those developed by FreeCause for raising money for charities. By the end of 2009 there were more than 500,000 applications running on Facebook. This five-year old site has also developed a program called Facebook Connect. Developers can write applications that through APIs made available by Facebook enable users of those applications to pull their Facebook identity, friends and privacy to other websites. As of the end of 2009 there were more than 6,000 developers working on Facebook Connect applications. These applications make Facebook more valuable to its users, and the greater number of users makes Facebook more valuable to developers. Facebook makes money in large part by selling access to the eyeballs drawn to Facebook and these applications to advertisers.

Amazon is one of several companies that are competing to create a general purpose software platform that can be accessed over the internet. Such platforms are said to reside “in the cloud” because they are off in the distance as opposed to on the user’s desktop or other client computer. The idea is to develop a set of services that application developers can use. These include software services that allow developers to use the code rather than writing their own. But they also involve access to vast server farms and communication networks around the globe. Amazon’s Web Services plays to this company’s strength in selling products over the internet. It provides special services to developers who are writing programs to help merchants operate virtual stores and receive payment.

Invisible engines are beginning to disrupt the payments business both online and offline. This industry is at the heart of commerce and makes it possible for businesses and people to exchange value around the world. By definition it involves essentially all the money in the world. If invisible engines start driving innovation in this industry they could have an enormous impact on consumers and businesses who transact with each other.

An intricate set of systems and an enormous group of businesses are involved in payments. They range from the companies that print paper checks, to ones that make the point-of-sale terminals where you swipe your debit card, to banks that operate deposit accounts, to clearing and settlement networks. At the beginning of 2010 this industry involves many different computer systems, each with a software program, that have been made to interoperate with each other. Consider what happens when you swipe your credit card. The terminal sends your card information along with details of the transaction to a switch. That switch, which may be operated by a variety of businesses, has a software program that decides what to do with the transaction. It will send it on to a merchant processor which keeps track of the details of the transaction. This processor will also act as an intermediary with a clearing and settlement system, which will contact the bank processor that acts on behalf of the bank that issued the card (or possibly the bank directly). Many software programs are involved in the various steps of this process.

What we have just described is one “rail” in the payments system—the one for credit cards. While this may vary by country, in the United States there are other rails for debit cards, paper checks, electronic funds transfer, and other “tender” types. Now suppose that you are an entrepreneur who has come up with a great idea that involves incorporating payments into your application. This could be something as simple as a software program that helps small businesses accept payment in multiple ways and integrate these payments into basic accounting software. To succeed you would have to integrate your application into the many software programs that are used for the many tender types taken by businesses. That is such a daunting task—one involving substantial money and time not to mention the cooperation of the other businesses that handle payments—that you would give up.

This is a perfect problem for an invisible engine to solve. Massive transactions costs make it hard for payments entrepreneurs and payments users to get together. A software platform can lower those costs by investing in linking to the multitude of software programs that handle various elements of payments. By exposing APIs, this software platform then makes it possible for entrepreneurs to quickly integrate into most relevant aspects of the payments business. Such a software platform is analogous to Windows which, among other things, enables software applications to work with the multitude of device drivers controlling various hardware peripherals such as computer hardware, printers, and cameras.

In the United States several companies are working to create software platforms for payments. The most ambitious effort has been that of Denver-based IPCommerce. They have developed a Windows-like software platform enabling developers to link into software programs such as merchant processing platforms and point-of-sale equipment that account for the bulk of transactions in the United States. Developers have already used IPCommerce’s invisible engine to create new products. PaySimple created the payments software for small businesses mentioned above. A small firm can install their web-based application and quickly accept payments offline and online with multiple tender types. Of course, IPCommerce is a new player and it remains to be seen whether it will succeed in generating the kind of virtuous circle that has made the fortunes of other software platforms and their creators.

There is nonetheless a great deal of evidence that the software platform model has caught on in payments. Amazon and PayPal are competing to offer payments platforms to merchants for online transactions. They have made software services available to developers through APIs. Application developers for merchants can use these APIs to make their applications capable of accepting payments using the PayPal or Amazon payments system. It remains to be seen whether the card networks will consider opening up their powerful software programs to outsiders and trying to build an ecosystem of applications around themselves.

Invisible engines are the unsung heroes of the economic progress that we have seen in the last three decades. It is true that these engines could not accomplish much without the massive improvements in microprocessor speeds, computer storage, and communication capabilities. But all those accomplishments would not have amounted to much without the development of software languages; the creation of software platforms that eliminate the duplication of effort in writing code; and the catalyst business model that enables the virtuous circle between users and applications.

Based on what has happened in the last four years it appears that we are entering a new age in the development of invisible engines. We suspect that historians will look back and define 1980-2004 as the first age of invisible engines. That is the period when software platforms helped create vast ecosystems around “thick clients” in which most of the work was done on a local computing device. The second age began after 2004 with the spread of Web 2.0, the rapid growth of smart mobile phones, and the global increase in broadband penetration. How long this second age will last we do not know, and it is even harder to guess what will come after it. With confidence, though, we can say that invisible engines will create new industries, destroy old ones, and drive innovation in China and elsewhere in the world.