Your API: A Big Enough Box of Crayons?

  • View
    613

  • Download
    2

Embed Size (px)

DESCRIPTION

Presentation to Business of APIs Conference, NYC, 1 October 2013

Transcript

  • 1.Your API: A Big Enough Box of Crayons? Peter Coffee VP and Head of Platform Research salesforce.com inc. @petercoffee

2. Safe Harbor Safe harbor statement under the Private Securities Litigation Reform Act of 1995: This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results expressed or implied by the forward-looking statements we make. All statements other than statements of historical fact could be deemed forward-looking, including any projections of subscriber growth, earnings, revenues, or other financial items and any statements regarding strategies or plans of management for future operat ions, statements of belief, any statements concerning new, planned, or upgraded services or technology developments and customer contracts or use of our services. The risks and uncertainties referred to above include but are not limited to risks associated with developing and delivering new functionality for our service, our new business model, our past operating losses, possible fluctuations in our operating results and rate of growth, interruptions or delays in our Web hosting, breach of our security measures, risks associated with possible mergers a nd acquisitions, the immature market in which we operate, our relatively limited operating history, our ability to expand, retain, and motivat e our employees and manage our growth, new releases of our service and successful customer deployment, our limited history reselling non-salesforce.com products, and utilization and selling to larger enterprise customers. Further information on potential factors that could affect the financial results of salesforce.com, inc. is included in our annual report and on our Form 10-Q for the most recent fiscal quarter: these documents and others are available on the SEC Filings section of the Investor Information section of our Web site. Any unreleased services or features referenced in this or other press releases or public statements are not currently available and may not be delivered on time or at all. Customers who purchase our services should make the purchase decisions based upon features that are currently available. Salesforce.com, inc. assumes no obligation and does not intend to update these forward-looking statements. 3. Were All Getting Over The Cloud Digital Camera: every December, its still news to someone Cloud Computing: more use it, fewer ask about it 4. Cloud is a Medium of Connection Connecting Machines - GMs OnStar network daily handles 150k human requests and 130k machine-originated requests - Some are critical, e.g. air-bag deployments - Others may be infotainment, e.g. Volt mileage leader board Connecting Processes - General Electric wind-farm management: 123 turbines - Field-wide speed optimization, anti-icing behaviors - 3% output increase US$1.2M/year added revenue Connecting People - Asics delivers RFID-triggered messages to marathoners 5. Connection Indicates Interest Social does not mean non-professional or non-serious but rather means, non-antisocial Social is a set of behaviors: - Awareness of context - Adaptation to past experience - Proactive outreach based on events or data We make social connections to seek or offer value The cost of finding and making connections is decreasing but the cost of preserving them is noteworthy Social connections deliver value substantially greater than ongoing cost 6. Connection Invites Conversation When GE CMO Beth Comstock asks,How do we connect customers and employees to our machines? thats a technology question. (can do that for them.)When she asks,What if my jet engine could talk to me? What would it say? thats a much more interesting question.Only GE can answer it. 7. Conversation Happens in Context Old applications automate a business process Old data records the by-products New apps enable customer service and engender customer delight New data reflects what the world is doing now, not what the business did yesterdayIf your API cant describe it, you cant do it 8. Conversation Happens in Context Old applications automate a business process Old data records the by-products New apps enable customer service and engender customer delight New data reflects what the world is doing now, not what the business did yesterdayIf your API cant describe it, you cant do it 9. Conversation Requires Shared Language The most common storage choice for business vocabularies is spreadsheets, trapped and hidden on user desktops. - TopQuadrant Inc. Most of the developers Ive worked with believe they are doing object-oriented programming what they do is create some lightweight data objects that only have getters and setters, but no functionality. - Loosely Connected Language is not just a tool for expressing agreement. Nave APIs assume that everyone is honest and cooperative. Language can be a tool for deception; APIs must support negotiation and verification. 10. APIs are Nouns and Verbs of Connection Which is the Service, the insurance policy entity or the approve policy task? In other words, should Services be nouns or verbs? Its possible to design Services either way, as Entity Services, which predictably represent business entities, or as Task Services, that represent specific actions that implement some step in a process, in other words, verbs. Which approach is better? - Jason Bloomberg Putting the noun first puts people in the mindset that their domain is the high order bit and they pick method names optimized for their domain. Putting the verb first makes it clear that the User Experience is the high order bit and the domain specifics are the low order bit. We want a very high level of verb reuse to provide a consistent, predictable user-experience. - Jeffrey Snover 11. Lego Blocks? Or Puzzle Pieces? The pieces of a jigsaw puzzle are modular, but they only fit together in one way. If you write an application break it into modules and write an API that documents the modules interactions why would anyone else find it useful for anything else? If you have a customer object, what interactions should it enable? If you have a warehouse object, what interactions must it anticipate?Remember Warehouse 13: When a Warehouse class had no API for things getting lost or stolen, users created a new warehouse (they could do that) where missing things could be sent. Complications followed. 12. Does Your API Speak a Language of Value? Its easy to devise an API thats the vocabulary of what the application does. Its an effort to learn what service consumers (know that they) want to accomplish Its visionary to create a vocabulary that creates unimagined customer value- printFile: what application does - fitDocumentOnPage: what user requests - summarizeAndSuggestRouting: stretch the envelope 13. Does the Conversation Lead to Its easy to devise an API that exposes functions of your product Its bolder to devise an API that invites interaction with customers Its leadership to devise an API that becomes the language of an ecosystemAction? 14. A Tiny Little Bit About Us September was another record month -- 31.5 billion transactions, up 50% from September12, with average response time of 253 ms - Today at 6:44 a.m. Redefining Done: GA Criteria for New Functionality UI will be built on top of public API Thus, the API is functionally complete with the UI 15. @petercoffee /in/petercoffee /peter.coffee pcoffee@salesforce.com