open source business model design patterns - … · open source business model design patterns ......

24
1 Open Source Business Model Design Patterns Tim O’Reilly O’Reilly Media, Inc. www.oreilly.com EclipseCon March 1, 2005 What I’m Going to Talk About Business models for an industry shaped by open source. NOT Business models for “open source businesses.”

Upload: tranhanh

Post on 12-Apr-2018

223 views

Category:

Documents


3 download

TRANSCRIPT

1

Open SourceBusiness ModelDesign Patterns

Tim O’Reilly

O’Reilly Media, Inc.www.oreilly.com

EclipseConMarch 1, 2005

What I’m Going to Talk About

Business models for an industry shaped byopen source.

NOT

Business models for “open source businesses.”

2

A Pattern Language

A Memory-Prediction Engine

“Patterns are allthe brain knowsabout.”

- Jeff Hawkins

3

But What if the Patterns Are Wrong?

“The map is notthe territory.”--Alfred Korzybski

Pattern Failure In The PC Revolution

• 1981: IBM PC built of commoditycomponents

• Market expands a million-fold, breakingIBM’s industry dominance

• Dell becomes #1 by embracing commodityeconomics; IBM eventually abandons market

• Software separate from hardware: IBMsigns away future to Microsoft

4

(Control by API)

Desktop ApplicationStack

Proprietary Software

Hardware Lock InBy a Single-Source Supplier

System Assembled fromStandardized

Commodity Components

Pattern Failure at Work!

•How many of you use Linux?

•How many of you use Google?

•Where are the user-friendlyapplications on Linux?

5

User Friendly Applications onGNU/Linux (or BSD)

Another Pattern Failure?

These applications are created by opensource developers and run on an opensource platform, but…

–Companies are fiercely proprietary

–Source code is not distributed

–Licenses have no effect

–Value is in data, not just code

6

Free and Open Source Software

Cheap Commodity PCs

Intel Inside

ProprietarySoftware As a Service

Subsystem-Level Lock In

Integration of CommodityComponents

Internet ApplicationStack

Apache

7

"The Law of Conservationof Attractive Profits"

"When attractive profits disappear at onestage in the value chain because a productbecomes modular and commoditized, theopportunity to earn attractive profits withproprietary products will usually emerge atan adjacent stage."

-- Clayton ChristensenAuthor of The Innovator's Solution

In Harvard Business Review, February 2004

(Control by API)

Desktop ApplicationStack

Proprietary Software

Hardware Lock InBy a Single-Source Supplier

System Assembled fromStandardized

Commodity Components

8

ProprietarySoftware As a Service

Subsystem-Level Lock In

Integration of CommodityComponents

Internet ApplicationStack

Apache

What Is a Pattern?

“Each pattern is a three-part rule, which expressesa relation between a certain context, a problem,and a solution.” (Christopher Alexander)

– Context: Previously High-Value Industry BeingCommoditized

– Problem: Build or maintain value– Solutions: The subject of this talk

9

Three Business Model Contexts

• Integration of commodity components

• Internet application services “up the stack”

• Subsystem-level lock-in

Integration and Assembly

10

Format of Design Patterns

• Brief statement of situation or problem.

• Examples and discussion that demonstratethe generality of the situation.

• A prescription that expresses the solution.

Design for ParticipationAn open source operating system consists of“small pieces loosely joined.”

Discussion: Linux, Apache, Perl and CPAN

Therefore: Architect your software in such away that it can be used easily as acomponent of a larger system. Use alicense that does not hinder such acombination. Keep your software modular,and make certain that you document all ofthe interfaces.

11

User-Centered Development

The benefits of open source come fromsharing your development efforts andprocesses with your users

Therefore: Release early and release often.Set up mechanisms for users to submit bugsand patches. Promote your most activeusers into roles of greater responsibility.

Don’t Differentiate on Features

When useful components are abundant andfree, adding proprietary features will onlyslow you down.

Therefore: Focus your development effortson speed of testing, assembly, andintegration so that your users can alwayshave the best components that themarketplace has to offer.

12

Follow Industry Standards

Users want choice, but not too much of it.

Therefore: Offer your products in a numberof proven, industry-standard configurations,and let your users choose between them.As new application domains emerge,develop configurations to support them.

Software as a Service

Users don’t want computers, they want theservices they provide.

13

The Perpetual Beta

When devices and programs are connectedto the internet, applications are no longersoftware artifacts, they are ongoing services.

Therefore: Do not package up new featuresinto monolithic releases, but instead addthem on a regular basis as part of thenormal user experience. Engage your usersas real-time testers, and instrument theservice so that you know how people usethe new features.

Leverage Commodity Economics

Scale matters. A successful internet servicemay need to scale up rapidly, at low cost.

Therefore: Use Linux, Apache, and otheropen source components running oncommodity PC hardware as the basis forany internet service. Arrange thesecomponents in fault-tolerant arrays, withmanagement tools that minimize the numberof required sysadmins.

14

Users Add Value

The key to competitive advantage in internetapplications is the extent to which users addtheir own data to that which you provide.

Amazon - JavaScript

15

BN - JavaScript

Users Add Value

The key to competitive advantage in internetapplications is the extent to which users addtheir own data to that which you provide.

Therefore: Don’t restrict your “architecture ofparticipation” to software development.Involve your users both implicitly andexplicitly in adding value to your application.

16

Network Effects by Default

Only a small percentage of users will go tothe trouble of adding value to yourapplication.

Therefore: Set inclusive defaults foraggregating user data as a side-effect oftheir use of the application.

The Long TailMany limiting factors from the physical worldare absent from the internet.

Source: Wired Magazine

17

The Long Tail

Many limiting factors from the physical worldare absent from the internet.

Therefore: Use the power of the computer tomonetize niches that formerly were too smallto be commercial.

The Mechanical Turk

Services need to be robust, but because theyare typically data-driven, they also need tobe updated constantly.

Therefore: Build your core servicesinfrastructure with traditional softwarecomponents written in languages like Java,C, and C++, but build your interfaces withtemplating systems and with dynamiclanguages like Perl, Python, and PHP.Think of your programmers, designers, andadmins as part of the application.

18

Von Kempelen's Mechanical Turk

Software Above the Level of a SingleDevice

The PC is no longer the only access devicefor internet applications, and applicationsthat are limited to a single device are lessvaluable than those that are connected.

Therefore: Design your application from theget-go to integrate services across handhelddevices, PCs, and internet servers.

19

Platforms and Tools(The Eclipse Pattern)Third party developers are an essential partof the success of new platforms.

Therefore: Reduce complexity for developersby building tools that specifically supportnew classes of application, and use thosetools to simplify access to underlyingcomponents and services.

Component-Level Lock-In

20

Intel Inside

Inside every open system there areproprietary, single-source components. Theopen PC architecture has Intel Inside; theopen internet has Cisco Inside.

Therefore: Look for opportunities to be thesingle source for an essential subsystem ofan open system.

Dual Licensing

The GPL allows special rights to the creatorof the software to distribute the softwareunder other terms.

Therefore: Make sure to obtain copyrightassignment for all contributed code.

21

Data is the Next “Intel Inside”

Applications are increasingly data-driven.

Therefore: Owning a unique, hard-to-recreate source of data may lead to an Intel-style single-source competitive advantage.

MapQuest

22

Navteq

NavTeq Since IPO

23

Own the Namespace

Some data is a commodity and impossible forany one party to own, but access to the datacan be controlled through legal means.

Therefore: If you can’t own the data, uselegal means to own the namespace orregistry for the data.

“I’m an inventor.I became interested inlong term trends becausean invention has to makesense in the world inwhich it is finished, notthe world in which it isstarted.”

-Ray Kurzweil

24

For more information

http://www.oreilly.comhttp://tim.oreilly.comhttp://conferences.oreilly.comhttp://www.oreillynet.com