Skip to main content.
 

Subscribe

 

Our Sponsors

Click Here

What Is a Platform?

John Musser, September 19th, 2007   Comments(10)

In an interesting, lenthy blog post, Marc Andreessen takes a look at Internet platforms and APIs:

One of the hottest of hot topics these days is the topic of Internet platforms, or platforms on the Internet. Web services APIs (application programming interfaces), web services protocols like REST and SOAP, the new Facebook platform, Amazon’s web services efforts including EC2 and S3, lots of new startups talking platform (including my own company, Ning)… well, “platform” is turning into a central theme of our industry and one that a lot of people want to think about and talk about … However, the concept of “platform” is also the focus of a swirling vortex of confusion — lots of platform-related concepts, many of them highly technical, bleeding together. This post is my attempt to disentangle and examine the topic of “Internet platform” in detail.

Let’s start with a basic definition: A “platform” is a system that can be programmed and therefore customized by outside developers — users — and in that way, adapted to countless needs and niches that the platform’s original developers could not have possibly contemplated, much less had time to accommodate.

This is followed by a good, more concise definition: “The key term in the definition of platform is ‘programmed’. If you can program it, then it’s a platform. If you can’t, then it’s not.

Marc then gets into detail by breaking platforms down into three fundamental approaches or levels:

  • Level 1: Access API “A Level 1 platform’s apps run elsewhere, and call into the platform via a web services API to draw on data and services — this is how Flickr does it.” The vast marjority, but not all, of the 515 APIs listed on ProgrammableWeb fall into this category. Marc argues that the issue with these is that “the entire burden of building and running the application itself is left entirely to the developer” requiring both technical expertise and financial resources.
  • Level 2: Plug-in API “This is the kind of platform approach that historically has been used in end-user applications to let developers build new functions that can be injected, or “plug in”, to the core system and its user interface.” Non-Internet examples include Photoshop and Firefox. The best online example of this is hottest “platform” going: the Facebook Platform.
  • Level 3: Runtime Environment: “In a Level 3 platform, the huge difference is that the third-party application code actually runs inside the platform — developer code is uploaded and runs online, inside the core system. For this reason, in casual conversation I refer to Level 3 platforms as ‘online platforms’.” Examples include Marc’s own Ning and Salesforce.com.

There lot’s to chew on in Marc’s post and the conversation was picked-up by Josh Catone at Read/WriteWeb and VC Fred Wilson. Check-out the lengthy comment stream following Fred’s post responding to his question “With providers like Amazon increasingly providing the infrastructure to host, deploy, and scale a web app, and with rapid development tools like Ruby, and with the web as your runtime environment, isn’t it possible to do much of what a Level 3 platform provides directly on the web?”

10 Responses to “What Is a Platform?”
  1. And now it looks like Facebook will be a level 3 platform, too.

  2. Hm, http://www.widgetplus.com has a platform that actually spans all three levels.

  3. I like the different levels that Mark uses to describe a platform. What is interesting about the list is how “specialized” and unique the data is for any given platform. The data in someone’s myspace and facebook might overlap.

    I’d like to extend the definition of platform.

    If data between two systems is similar enough, then only one of them is a platform.

  4. @Neil, I think you’re right. A bit more at

    http://www.allfacebook.com/2007/09/facebook-to-become-level-3-platform/

    @Barce, that’s a interesting question but not sure I follow, would that mean Google Maps and Yahoo Maps could not both be platforms?

    Comment by: John Musser - September 19th, 2007 at 10:46 pm
  5. [...] What Is a Platform? “The key term in the definition of platform is ‘programmed’. If you can program it, then it’s a platform. If you can’t, then it’s not.” (tags: marketing) [...]

  6. [...] build a platform, and promote all apps that are implementations of that platform including one’s own and ones [...]

  7. A platform is when you can build something on it to make money for yourself, on your own terms.
    Otherwise, the abstracts of it doesn’t matter.

  8. We are soon going live with a platform where users will be able to develop processes and deep semantic knowledge directly on the web. In other words no need to upload anything - development, testing and deployment happens on the web. I think this model does not corresponds to platforms level 1,2 or 3. I sugest that it be called level 4 - any views?

    Comment by: Pawel lubczonok - October 3rd, 2007 at 12:52 am
  9. Pawel, sounds interesting. I’d vote that would still be a level 3 platform, but with a specific set of hosted tools.

    Comment by: John Musser - October 3rd, 2007 at 1:08 am
  10. [...] Facebook facilitated the rapid adoption of the outside developer applications by building a plug-in style platform and having developers conform to a specific user experience, in the profile, the news feed, the [...]

 

Leave a Reply

Our Sponsors

Click HereEnterprise data masups with SnapLogicMonetize your music space
Forum Nokia -- Driving mobile innovation
Build mashups at openkapowTry Microsoft's Live Framework. By invite only.


      Blue Mountain Labs: Cloud strategy and services


Member of
Web 2.0 Workgroup

 

 
Close
E-mail It