SlideShare una empresa de Scribd logo
1 de 28
Descargar para leer sin conexión
Copyright, Open
Source and APIs
Steven Willmott, 3scale networks
    steve@3scale.net / @njyx
http://www.3scale.net
       @3scale



http://apistrategyconference.com
        21-22 Feb, 2013
IANAL
(& This is Not Legal Advice)
Outline

• Copyright and APIs don’t mix
• Alsup to the rescue
• But there’s still a problem
• Share rather than copyright - towards an
  Interface Commons
Copyright & APIs




                                          From: app.net API



 Copyright would imply, no reuse of whole or (possibly) fragments
Copyrighting APIs?


          v’s




          v’s
Bad News for Everybody
• Copyrighting the Idea of something rather than
  its Expression

• Copyrighting every possible implementation
  of that thing

• Makes
  • Building almost any new language or API
     hard

  • Integrating systems impossible
Copyright Gridlock

        API 2                  Bad news even if you
                  API 3           are the original
                                copyright claimant

API 1      API 1.1 ?            Even worse if the
                               APIs / Fragments are
                                      generic

                       API 5   Leads to widespread
                                    paralysis
          API 4
Luckily...
Recent Judgements
 => No Copyright
US Verdict

So long as the specific code used to
implement a method is different, anyone is
free under the Copyright Act to write his or
her own code to carry out exactly the same
function or specification of any methods
used in the Java API. It does not matter
that the declaration or method header lines
are identical.
European Verdict

[... the Court holds that neither the
functionality of a computer program nor the
programming language and the format of
data files used in a computer program in
order to exploit certain of its functions
constitute a form of expression.
Accordingly, they do not enjoy copyright
protection.]
So, All Clear?
Not so Fast!


     • There is still uncertainty (EFF Appeal)
     • “Copyright” is still everywhere
     • Reuse can still be Plagiarism
     • There may be patents...

https://www.eff.org/deeplinks/2012/11/no-copyrights-apis-
                    help-us-make-case
E.g. Bad Behaviour



Copy/Paste? ->




 Copyright still applies to some things +
        can still be plaigiarism
So What to do?

• What should we do when designing
  APIs?

• Should we be sharing rather than
  copyrighting?

• What if you actually want to protect
  something?
And more
importantly...
Actually Sharing would
be very powerful

• Reduces coding hassle
• Ups Re-use
• Makes Better Interfaces

           Remind you of Open Source?


   But there is little API Interface sharing today
Things to think about
If you publish APIs

• Think about how you feel about re-use
• If you’re cool with sharing, find a way to
  signal it

• If you think the technology is genuinely
  unique and worthy of protection: patent
  rather than copyright
If you want to “Re-use”
         APIs
• Ask!
• Attribute!
• Contribute!
• Get clarification on status of re-use
• Figure out who the original Author is
As a Community

• Think about how to better share interfaces
• Consider an “interface commons” (or an
  creative commons for interfaces)

• Play nice when re-using, attributing and sharing
• Encourage clarity
• Encourage convergence in interfaces
Ready to Share

                  Creative
                 Commons


                  Public
                  Github

                 WADL /
                 Swagger
                   etc.
There are inherent
 Tensions in this...
It’s Hard
          +
Difficult to Achieve
        but..
It’s Worth it

• Start building a culture of open / reusable
  interfaces [100’s, 1000’s, ...]

• Make API design better
• Speed up pretty much everything



  Interested in people thoughts on how to get there!
Thank You &
 Discussion
        Contact:

   Steven Willmott
   steve@3scale.net
http://www.3scale.net
        @njyx

Más contenido relacionado

La actualidad más candente

API Design - When to buck the trend (Webcast)
API Design - When to buck the trend (Webcast)API Design - When to buck the trend (Webcast)
API Design - When to buck the trend (Webcast)
Apigee | Google Cloud
 

La actualidad más candente (20)

Enterprise ecommerce-webinar 1
Enterprise ecommerce-webinar 1Enterprise ecommerce-webinar 1
Enterprise ecommerce-webinar 1
 
APIs 101: What are they? What do they have to do with genealogy?
APIs 101: What are they? What do they have to do with genealogy?APIs 101: What are they? What do they have to do with genealogy?
APIs 101: What are they? What do they have to do with genealogy?
 
APIdays Zurich 2019 - API management for event driven microservices, Fran Men...
APIdays Zurich 2019 - API management for event driven microservices, Fran Men...APIdays Zurich 2019 - API management for event driven microservices, Fran Men...
APIdays Zurich 2019 - API management for event driven microservices, Fran Men...
 
APIs: the Glue of Cloud Computing
APIs: the Glue of Cloud ComputingAPIs: the Glue of Cloud Computing
APIs: the Glue of Cloud Computing
 
APIS for Startups - Running your Business Inside Out
APIS for Startups - Running your Business Inside OutAPIS for Startups - Running your Business Inside Out
APIS for Startups - Running your Business Inside Out
 
APIs for biz dev 2.0 - Which business model?
APIs for biz dev 2.0 - Which business model?APIs for biz dev 2.0 - Which business model?
APIs for biz dev 2.0 - Which business model?
 
How Open is Your API Future?
How Open is Your API Future?How Open is Your API Future?
How Open is Your API Future?
 
APIs and Unlocking the Value of Your Data - Strata Barcelona 2014
APIs and Unlocking the Value of Your Data - Strata Barcelona 2014APIs and Unlocking the Value of Your Data - Strata Barcelona 2014
APIs and Unlocking the Value of Your Data - Strata Barcelona 2014
 
Building Successful API Programs in Higher Education
Building Successful API Programs in Higher EducationBuilding Successful API Programs in Higher Education
Building Successful API Programs in Higher Education
 
API Design - When to buck the trend (Webcast)
API Design - When to buck the trend (Webcast)API Design - When to buck the trend (Webcast)
API Design - When to buck the trend (Webcast)
 
API as a Growth Tool
API as a Growth ToolAPI as a Growth Tool
API as a Growth Tool
 
How to Evaluate an API Without Writing a Line of Code
How to Evaluate an API Without Writing a Line of CodeHow to Evaluate an API Without Writing a Line of Code
How to Evaluate an API Without Writing a Line of Code
 
ProgrammableWeb's eSignature API Research Report
ProgrammableWeb's eSignature API Research ReportProgrammableWeb's eSignature API Research Report
ProgrammableWeb's eSignature API Research Report
 
Open APIs and the Semantic Web 2011
Open APIs and the Semantic Web 2011Open APIs and the Semantic Web 2011
Open APIs and the Semantic Web 2011
 
Creating Datadipity
Creating DatadipityCreating Datadipity
Creating Datadipity
 
Api for dummies
Api for dummiesApi for dummies
Api for dummies
 
Postman Platform Overview: Be API-First, Not API-Last
Postman Platform Overview: Be API-First, Not API-LastPostman Platform Overview: Be API-First, Not API-Last
Postman Platform Overview: Be API-First, Not API-Last
 
WSO2Con EU 2015: Towards a Winning API Strategy
WSO2Con EU 2015: Towards a Winning API StrategyWSO2Con EU 2015: Towards a Winning API Strategy
WSO2Con EU 2015: Towards a Winning API Strategy
 
Is there an API in that (IoT)?
Is there an API in that (IoT)?Is there an API in that (IoT)?
Is there an API in that (IoT)?
 
API 101 - Understanding APIs
API 101 - Understanding APIsAPI 101 - Understanding APIs
API 101 - Understanding APIs
 

Destacado

Apis power MVC for the Web
Apis power MVC for the WebApis power MVC for the Web
Apis power MVC for the Web
3scale
 
How To Design A Good A P I And Why It Matters G O O G L E
How To Design A Good  A P I And Why It Matters    G O O G L EHow To Design A Good  A P I And Why It Matters    G O O G L E
How To Design A Good A P I And Why It Matters G O O G L E
guestbe92f4
 

Destacado (9)

Apis power MVC for the Web
Apis power MVC for the WebApis power MVC for the Web
Apis power MVC for the Web
 
Unlock your Digital Content & Expand beyond your Website
Unlock your Digital Content & Expand beyond your WebsiteUnlock your Digital Content & Expand beyond your Website
Unlock your Digital Content & Expand beyond your Website
 
APIs for Biz Dev 2.0 - Which Business Model?
APIs for Biz Dev 2.0 - Which Business Model?APIs for Biz Dev 2.0 - Which Business Model?
APIs for Biz Dev 2.0 - Which Business Model?
 
5 Anti-Patterns in Api Design - buildstuff
5 Anti-Patterns in Api Design - buildstuff5 Anti-Patterns in Api Design - buildstuff
5 Anti-Patterns in Api Design - buildstuff
 
API Versioning in the Cloud
API Versioning in the CloudAPI Versioning in the Cloud
API Versioning in the Cloud
 
Api anti patterns
Api anti patternsApi anti patterns
Api anti patterns
 
How To Design A Good A P I And Why It Matters G O O G L E
How To Design A Good  A P I And Why It Matters    G O O G L EHow To Design A Good  A P I And Why It Matters    G O O G L E
How To Design A Good A P I And Why It Matters G O O G L E
 
How to Survive the API Copyright Apocalypse
How to Survive the API Copyright ApocalypseHow to Survive the API Copyright Apocalypse
How to Survive the API Copyright Apocalypse
 
Open API and API Management - Introduction and Comparison of Products: TIBCO ...
Open API and API Management - Introduction and Comparison of Products: TIBCO ...Open API and API Management - Introduction and Comparison of Products: TIBCO ...
Open API and API Management - Introduction and Comparison of Products: TIBCO ...
 

Similar a Copyright, Open Source and APIs (towards an Interface Commons)

Open Source Business Case
Open Source Business CaseOpen Source Business Case
Open Source Business Case
FITT
 
5 Keys to API Design - API Days Paris 2013
5 Keys to API Design - API Days Paris 20135 Keys to API Design - API Days Paris 2013
5 Keys to API Design - API Days Paris 2013
Daniel Feist
 
Intro to Open Cloud Initiative
Intro to Open Cloud InitiativeIntro to Open Cloud Initiative
Intro to Open Cloud Initiative
John Mark Walker
 

Similar a Copyright, Open Source and APIs (towards an Interface Commons) (20)

OpenAPI at Scale
OpenAPI at ScaleOpenAPI at Scale
OpenAPI at Scale
 
Open Source Business Case
Open Source Business CaseOpen Source Business Case
Open Source Business Case
 
Software Copyrights in an Evolving Digital World
Software Copyrights in an Evolving Digital WorldSoftware Copyrights in an Evolving Digital World
Software Copyrights in an Evolving Digital World
 
Building A Great API - Evan Cooke, Cloudstock, December 2010
Building A Great API - Evan Cooke, Cloudstock, December 2010Building A Great API - Evan Cooke, Cloudstock, December 2010
Building A Great API - Evan Cooke, Cloudstock, December 2010
 
FITT Toolbox: Open Source Business Case
FITT Toolbox: Open Source Business CaseFITT Toolbox: Open Source Business Case
FITT Toolbox: Open Source Business Case
 
Towards an API Commons
Towards an API CommonsTowards an API Commons
Towards an API Commons
 
Introduction to GraphQL (or How I Learned to Stop Worrying about REST APIs)
Introduction to GraphQL (or How I Learned to Stop Worrying about REST APIs)Introduction to GraphQL (or How I Learned to Stop Worrying about REST APIs)
Introduction to GraphQL (or How I Learned to Stop Worrying about REST APIs)
 
iText IP Review
iText IP ReviewiText IP Review
iText IP Review
 
Walter api
Walter apiWalter api
Walter api
 
Dean4j@Njug5
Dean4j@Njug5Dean4j@Njug5
Dean4j@Njug5
 
I broke what?!??!? Taking over maintenance on well loved projects
I broke what?!??!? Taking over maintenance on well loved projectsI broke what?!??!? Taking over maintenance on well loved projects
I broke what?!??!? Taking over maintenance on well loved projects
 
I broke what? Taking over maintenance on existing (well loved) projects, by B...
I broke what? Taking over maintenance on existing (well loved) projects, by B...I broke what? Taking over maintenance on existing (well loved) projects, by B...
I broke what? Taking over maintenance on existing (well loved) projects, by B...
 
Manage your Public API Like a Protocol
Manage your Public API Like a ProtocolManage your Public API Like a Protocol
Manage your Public API Like a Protocol
 
5 Keys to API Design - API Days Paris 2013
5 Keys to API Design - API Days Paris 20135 Keys to API Design - API Days Paris 2013
5 Keys to API Design - API Days Paris 2013
 
EMC World 2016 - code.10 Jumpstart your Open Source Presence through new Coll...
EMC World 2016 - code.10 Jumpstart your Open Source Presence through new Coll...EMC World 2016 - code.10 Jumpstart your Open Source Presence through new Coll...
EMC World 2016 - code.10 Jumpstart your Open Source Presence through new Coll...
 
Managing Open Source Licenses (Geeks Anonymes)
Managing Open Source Licenses (Geeks Anonymes)Managing Open Source Licenses (Geeks Anonymes)
Managing Open Source Licenses (Geeks Anonymes)
 
Intro to Open Cloud Initiative
Intro to Open Cloud InitiativeIntro to Open Cloud Initiative
Intro to Open Cloud Initiative
 
Leverage the power of Open Source in your company
Leverage the power of Open Source in your company Leverage the power of Open Source in your company
Leverage the power of Open Source in your company
 
JUC Europe 2015: Continuous Integration and Distribution in the Cloud with DE...
JUC Europe 2015: Continuous Integration and Distribution in the Cloud with DE...JUC Europe 2015: Continuous Integration and Distribution in the Cloud with DE...
JUC Europe 2015: Continuous Integration and Distribution in the Cloud with DE...
 
Introduction To Open Source Licenses
Introduction To Open Source LicensesIntroduction To Open Source Licenses
Introduction To Open Source Licenses
 

Más de 3scale

Kill the fail whale for your API
Kill the fail whale for your APIKill the fail whale for your API
Kill the fail whale for your API
3scale
 

Más de 3scale (20)

APISTRAT KEYNOTE: Surfing the Wave between Chaos and Innovation
APISTRAT KEYNOTE:  Surfing the Wave between Chaos and InnovationAPISTRAT KEYNOTE:  Surfing the Wave between Chaos and Innovation
APISTRAT KEYNOTE: Surfing the Wave between Chaos and Innovation
 
A Connector, A Container and an API Walk into a Bar… Microservices Edition
A Connector, A Container and an API Walk into a Bar… Microservices EditionA Connector, A Container and an API Walk into a Bar… Microservices Edition
A Connector, A Container and an API Walk into a Bar… Microservices Edition
 
Inside mind of a successful platform architect / Gartner APPS 2016
Inside mind of a successful platform architect / Gartner APPS 2016 Inside mind of a successful platform architect / Gartner APPS 2016
Inside mind of a successful platform architect / Gartner APPS 2016
 
The Fundamentals of Platform Strategy: Creating Genuine Value with APIs
The Fundamentals of Platform Strategy: Creating Genuine Value with APIsThe Fundamentals of Platform Strategy: Creating Genuine Value with APIs
The Fundamentals of Platform Strategy: Creating Genuine Value with APIs
 
Build and Manage Serverless APIs (APIDays Nordic, May 19th 2016)
Build and Manage Serverless APIs (APIDays Nordic, May 19th 2016)Build and Manage Serverless APIs (APIDays Nordic, May 19th 2016)
Build and Manage Serverless APIs (APIDays Nordic, May 19th 2016)
 
APIs and the Bot Revolution (APIDays Nordic, May 18)
APIs and the Bot Revolution (APIDays Nordic, May 18)APIs and the Bot Revolution (APIDays Nordic, May 18)
APIs and the Bot Revolution (APIDays Nordic, May 18)
 
Take Control of your APIs in a Microservice Architecture
Take Control of your APIs in a Microservice ArchitectureTake Control of your APIs in a Microservice Architecture
Take Control of your APIs in a Microservice Architecture
 
API workshop by AWS and 3scale
API workshop by AWS and 3scaleAPI workshop by AWS and 3scale
API workshop by AWS and 3scale
 
The Swagger Format becomes the Open API Specification: Standardizing descript...
The Swagger Format becomes the Open API Specification: Standardizing descript...The Swagger Format becomes the Open API Specification: Standardizing descript...
The Swagger Format becomes the Open API Specification: Standardizing descript...
 
Entering the Platform Age: How to create genuine value for internal and exter...
Entering the Platform Age: How to create genuine value for internal and exter...Entering the Platform Age: How to create genuine value for internal and exter...
Entering the Platform Age: How to create genuine value for internal and exter...
 
APIs and the Creation of Wealth in the Digital Economy - APIDays Paris 2015 K...
APIs and the Creation of Wealth in the Digital Economy - APIDays Paris 2015 K...APIs and the Creation of Wealth in the Digital Economy - APIDays Paris 2015 K...
APIs and the Creation of Wealth in the Digital Economy - APIDays Paris 2015 K...
 
API Model Canvas for successful API strategies and programs
API Model Canvas for successful API strategies and programsAPI Model Canvas for successful API strategies and programs
API Model Canvas for successful API strategies and programs
 
Microservices in action: How to actually build them
Microservices in action: How to actually build themMicroservices in action: How to actually build them
Microservices in action: How to actually build them
 
The API-Application Semantic Gap
The API-Application Semantic GapThe API-Application Semantic Gap
The API-Application Semantic Gap
 
Integrating, exposing and managing distributed data with RESTful APIs and op...
Integrating, exposing and managing distributed data with RESTful APIs and op...Integrating, exposing and managing distributed data with RESTful APIs and op...
Integrating, exposing and managing distributed data with RESTful APIs and op...
 
APIs.JSON: Bootstrapping The Web of APIs
APIs.JSON: Bootstrapping The Web of APIsAPIs.JSON: Bootstrapping The Web of APIs
APIs.JSON: Bootstrapping The Web of APIs
 
API Model Canvas (APIDays Mediterranea 2015)
API Model Canvas (APIDays Mediterranea 2015)API Model Canvas (APIDays Mediterranea 2015)
API Model Canvas (APIDays Mediterranea 2015)
 
APIsBerlin 3scale Data for a Web of APIs
APIsBerlin 3scale Data for a Web of APIs APIsBerlin 3scale Data for a Web of APIs
APIsBerlin 3scale Data for a Web of APIs
 
Kill the fail whale for your API
Kill the fail whale for your APIKill the fail whale for your API
Kill the fail whale for your API
 
Enhance Mobile Dev with APItools
Enhance Mobile Dev with APItoolsEnhance Mobile Dev with APItools
Enhance Mobile Dev with APItools
 

Último

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 

Último (20)

Introduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMIntroduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDM
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 

Copyright, Open Source and APIs (towards an Interface Commons)

  • 2. Steven Willmott, 3scale networks steve@3scale.net / @njyx
  • 3. http://www.3scale.net @3scale http://apistrategyconference.com 21-22 Feb, 2013
  • 4. IANAL (& This is Not Legal Advice)
  • 5. Outline • Copyright and APIs don’t mix • Alsup to the rescue • But there’s still a problem • Share rather than copyright - towards an Interface Commons
  • 6. Copyright & APIs From: app.net API Copyright would imply, no reuse of whole or (possibly) fragments
  • 7. Copyrighting APIs? v’s v’s
  • 8. Bad News for Everybody • Copyrighting the Idea of something rather than its Expression • Copyrighting every possible implementation of that thing • Makes • Building almost any new language or API hard • Integrating systems impossible
  • 9. Copyright Gridlock API 2 Bad news even if you API 3 are the original copyright claimant API 1 API 1.1 ? Even worse if the APIs / Fragments are generic API 5 Leads to widespread paralysis API 4
  • 11. Recent Judgements => No Copyright
  • 12. US Verdict So long as the specific code used to implement a method is different, anyone is free under the Copyright Act to write his or her own code to carry out exactly the same function or specification of any methods used in the Java API. It does not matter that the declaration or method header lines are identical.
  • 13. European Verdict [... the Court holds that neither the functionality of a computer program nor the programming language and the format of data files used in a computer program in order to exploit certain of its functions constitute a form of expression. Accordingly, they do not enjoy copyright protection.]
  • 15. Not so Fast! • There is still uncertainty (EFF Appeal) • “Copyright” is still everywhere • Reuse can still be Plagiarism • There may be patents... https://www.eff.org/deeplinks/2012/11/no-copyrights-apis- help-us-make-case
  • 16. E.g. Bad Behaviour Copy/Paste? -> Copyright still applies to some things + can still be plaigiarism
  • 17. So What to do? • What should we do when designing APIs? • Should we be sharing rather than copyrighting? • What if you actually want to protect something?
  • 19. Actually Sharing would be very powerful • Reduces coding hassle • Ups Re-use • Makes Better Interfaces Remind you of Open Source? But there is little API Interface sharing today
  • 21. If you publish APIs • Think about how you feel about re-use • If you’re cool with sharing, find a way to signal it • If you think the technology is genuinely unique and worthy of protection: patent rather than copyright
  • 22. If you want to “Re-use” APIs • Ask! • Attribute! • Contribute! • Get clarification on status of re-use • Figure out who the original Author is
  • 23. As a Community • Think about how to better share interfaces • Consider an “interface commons” (or an creative commons for interfaces) • Play nice when re-using, attributing and sharing • Encourage clarity • Encourage convergence in interfaces
  • 24. Ready to Share Creative Commons Public Github WADL / Swagger etc.
  • 25. There are inherent Tensions in this...
  • 26. It’s Hard + Difficult to Achieve but..
  • 27. It’s Worth it • Start building a culture of open / reusable interfaces [100’s, 1000’s, ...] • Make API design better • Speed up pretty much everything Interested in people thoughts on how to get there!
  • 28. Thank You & Discussion Contact: Steven Willmott steve@3scale.net http://www.3scale.net @njyx