The AppExchange Turns 10
As the AppExchange enters its second decade as an app marketplace, I wanted to revisit a little of the history behind this enterprise phenomenon. In getting to market, some of the things we did were spot-on, while others were nearly disastrous.
From Not So Humble Beginnings
The shift to building a platform was not really what folks have made it out be. There was no shift. In my hiring interview with Marc Benioff back in 2001, he made it clear to me that we were building a platform. I was hired to PM the API, the first piece of the platform puzzle. One of the first things I did was to reach out to interested devs who could make some money by integrating with Salesforce. In the first year, we were working with many startups, including AvantGo, Vertical Response and Eloqua. I worked hard to recruit a startup developer who wrote ETL tools for the online CRM startup, UpShot (later acquired by Siebel). After months of convincing, he went on to create one of the most popular data quality apps for Salesforce of all time — DemandTools.
The following couple of years saw a whirlwind of activity in ramping up our platform capabilities. Custom objects, S-Controls and Multiforce would round out our platform story in the pre-AppExchange dawn.
Make no mistake about it, the AppExchange was Marc Benioff’s baby. It was his vision to make our App Cloud platform (then dubbed “sforce”), the #1 cloud platform for developers to bring enterprise apps to market. In late 2004, Marc saw what we were doing with cataloging our partner solutions and integration connectors in the “On Demand Marketplace”, and wanted more. More apps. More customers buying apps. More partners building apps on top of Salesforce.
It should be noted that the On-Demand Marketplace already had some of the building blocks needed for a modern app marketplace, like interactive user reviews (only verified end users could post reviews), a star rating system, pricing, company, product info, and purchasing information. As a further move to establish trust with our customer base, we set up a “sforce certified” program that validated apps against known coding best practices for security and scale (for history’s sake, the first app approved in this program was the Ringlead lead de-duplication service).
While all of this is said and done, Marc wanted to make it super easy for customers to “install” the app that was listed, and not just read about it. Instead of “contact me”, he wanted “get it now.” He envisioned thousands of apps, across all categories and industries, for all customer segments. Marc was focusing on the big picture — creating an app ecosystem.
I had originally designed the On Demand Marketplace by using a Salesforce org to manage the partners, solution listings, assets, and reviews. Literally “over a weekend”, I wrote a relatively crude Java app (running on a PC under my desk) that would extract data from this org every night, and assemble an XML file for our website to use for rendering the catalog of apps in the On Demand Marketplace. This was never meant to scale. It was a temporary measure until we figured out something better. That something was the AppExchange.
The Apollo Mission
Like the Apollo Mission, the original AppExchange project was launched from a grand vision. Build a scalable, open, standalone ecommerce website that can handle self-registration of partner apps, catalog thousands of apps (in an aesthetically pleasing way) dynamically, be highly available and allow for apps to be “installed” directly into customer orgs. The timeline was to design, code, and launch by the next Dreamforce (September 2005). We would have to invent a new way to define and “package” apps for distribution, modify our underlying platform technology, build the website infrastructure and apps to power the AppExchange — and figure out how to seed the new marketplace in time for launch.
Steve Fisher and the engineering team stepped up to deliver the underlying platform technologies partners would need to build and package apps. One of our resident geniuses, Scott Hansma, would ultimately dream up our packaging technology approach, midway through the release cycle, thereby solving the biggest piece of the platform puzzle. Tien Tzuo (head of Products at the time) oversaw the “website” portion of the AppExchange initially. He found a partner in China to work on the prototype, as a way of getting it done “right and quickly.” We upped the ante and hired the VP of Internet Service from Sun Microsystems, Lew Tucker, to manage the AppExchange as a product and core service. Everything was in place to go big. And then we got the news.
The Summer the AppExchange Almost Died
I remember that fateful meeting where we found out we were not going to make it. I had already been working for months assembling a technical team (Ralph Eddy and Sati Hillyer were early hires) to work with our seed partners who would build apps for the launch of the AppExchange. It was before Memorial Day 2005, and we were expecting to review a prototype of the AppExchange with Lew and his team.
On my way to the standing meeting we held for the project, Lew intercepted me to ask me about my technical approach for the On Demand Marketplace. I was puzzled about the question because we were working on a completely different architecture for months now. He told me in dramatic fashion that “we weren’t going to make it with that team working on it.” The partner had failed to deliver by a key milestone date and that put the entire project in jeopardy. Lew was working on Plan B that would borrow from the old architecture and use our App Cloud platform to deliver the AppExchange. He recruited one of our PMs that worked on the early Salesforce service to get it done — Judy Loehr (Judy inherited the original spec for the AppExchange from the original PM, Benji Jasik).
The project was reset and Lew’s team had about a 3-month window to develop and have ready an AppExchange that could be launched at Dreamforce.
As history can tell, we made it and the launch was successful with approximately 25 partners participating (we had around 70 apps at launch, about half of them developed by Salesforce). The AppExchange went GA on January 14, 2006.
Lessons Learned
The most important thing that we learned from that project was to trust our App Cloud platform. It was robust enough to build the original AppExchange on, and we are still running the current day AppExchange using the same App Cloud platform (albeit much more capable now). Running millions of installs, page views, reviews and more with this platform were one of the best mission-critical use cases we had back then and even today.
As the #1 business app marketplace, the AppExchange has now generated billions of dollars in revenue for thousands of startups and established ISVs. Almost every day in our startups.salesforce.com program, I hear from startups who have a great idea for the AppExchange. The AppExchange has become more than just a channel to market. It has become the vibrant ecosystem we dreamed it could be.
Happy Birthday, AppExchange!