cloud native and its management

SOURCe

OPEN

and

“There isn’t a one size fits all model. I can’t stand up in front of a crowd and say, ’this is how you should do it,‘”

– Jeff McAffer, director of Open Source Programs Office at Microsoft.

And neither am I. This is how you "might" do it.

Creating an ospo

Why create an

open source

program office?

The Philadelphia Open Source Conference aims to connect open source developers, leaders, technologists, and community leaders to collaborate on the latest in open source innovation . It’s an environment for cross-collaboration between developers, operators, architects, leaders and others who are driving the technology forward .

That's great.
But, why?

Prominence of Open source

all major areas of software innovation are happening in open source

software

Open Source

cloud

world

Top Benefits

  1. Awareness of use

  2. Development velocity

  3. Compliance

  4. Influence

Those without an OSPO want to attract talent.
Those with an existing OSPO already have talent.

open source

program office strategy

a well-rounded open source strategy incorporates these 5 C's

...include not only consuming open source software and complying with licensing, but also participating in community, giving and receiving contributions as well as actively assuaging the competitive nature of popular projects.

Calcote's 5 C's

{

}

to open source strategy...

path to mastering open source

From bottom to top

Continual ingesting of software from multiple sources

Today's software products average 60% to 80% open source in their code.

COnsumption

WHY DO COMPANIES USE OPEN SOURCE SOFTWARE?

There are many compelling reasons for using Open Source:

All of these reasons add up to a competitive advantage for organizations for using OSS.

  • Faster - speed up the delivery of software solutions.
     

  • Shared cost - less expensive than commercial software and in-house development.
     

  • Flexibility - with source code in-hand, you can make needed modifications and licensing flexibility can allow changes to the code and deployment strategies without impediment.
     

  • Innovation - often the leading edge of development comes from open source communities.
     

  • Influence - within a project; across related projects.
     

  • Talent - both attraction and retention.

Solid Compliance tooling and process is key to reducing risk:

Why should I comply with licenses?

CompliancE

  • Legal injunction that prevents shipping product.
     
  • Customer service headaches.
     
  • Loss of Intellectual Property.
     
  • Engineering rework.
     
  • Punitive damages.
     
  • Embarrassment.

Compliance Goals

  1. Ensure license requirements are upheld.

  2. Shipped products and delivered services have secure components and approved open source licenses.

  3. Vulnerabilities are tracked and remediations incorporated.

  4. Attribution within code.

  5. Redistribution of code.

Process Goals

  1. Empower engineering teams to self-service as much as possible.

  2. Acknowledge on-prem and SaaS has different needs.

    1. Hold each to same rigor and process, augmenting tooling as needed.

  3. Account for multi-source development model.

    1. Enable and streamline continuous execution.

2 C's deep. Quit here?

Inner Sourcing

Inner sourcing before or after open sourcing?

Is this step necessary for your organization?

  • Establish open source-like culture within org.
  • More efficient development; standardize tools.
  • Overcome organizational boundaries.
  • Promote reuse and avoid not-invented here complex.
  • More flexible utilization of developers.

Leverage the benefits of open source development methodologies internally

How do I give and receive?

Contribution

Inbound and Outbound

Need to:

  • Delineate what is and isn't IP.

  • Consider a license agreement.

    • Contribution License Agreement (CLA)

    • Developer Certificate of Origin (DCO)

  • Provide contribution guidelines.

  • Define project governance.

Community

 

  • Formulate and communicate - your end-user and developer community support strategies and guidelines.
     

  • Anyone in your company who wants to start or participate in an existing project should understand what a well-run community looks like.

Support, governance, velocity are all measures used to decide whether to use open source software.

PURPOSEFUL ENGAGEMENT KEY TO GAINING MOMENTUM

 

COMPETE?

  • Race 
  • Deeper 

  • Broader

Complement?

  • Integrations

  • Ingestion

  • Interoperability

Displace or integrate?

Competition

ASSUAGE COMPETITIVE NATURE?

role of an OSPO

the center of the universe for a company’s open source operations and structure

The role of an OSPO

Much to encompass

Where to land one

Engineering

Legal

Program Management

(Operations)

Corp Dev

Talent Acquisition

Marketing

IT

Documentation

Procurement

How centric to your business is OSS?

Cross-functional responsibilities

  • Open Source Executive Committee

    • Review and approve proposals to release IP / proprietary source code under OSS license.

    • Review and approve proposals to use non-approved license types.

  • Open Source Program Office (Review Board)

    • Drive all activities surrounding the 5'Cs.

    • Provide guidance on open source questions coming from company staff and engineers.

    • Develop community involvement policy, process, procedures, and guidelines.

    • Coordinate source code scans, audits and distribution of source code packages.

    • Contribute to compliance and OS training.

    • Contribute to creation of new tools to facilitate automation, discovery of OS in dev environment.

    • Host and maintain the company’s open source websites.

  • Engineering Operations

    • Review requests for the use, modification, and distribution of open source.

    • Handle compliance inquiries.

    • Maintain records of compliance for any given open source software component are up to date.

    • Review end-user documentation to ensure that appropriate copyright, attribution, and license notices are given to consumers.

    • Perform audits all software included in a product, which involves the following tasks:

      • Run a source code scanning tool over the software base and analyze results.

      • Address all flagged licensing conflicts flagged by the scanning tool.

      • Oversee the closure of all issues identified by scanning tools.

      • Create a final audit report and ensure that all identified issues have been closed.

  • Legal

    • Provide guidance on licensing.

    • Contribute to and approve training.

    • Review and approve list of obligations to fulfill.

    • Review and approve open source notices.

  • Engineering & Product Teams

    • Follow compliance policies and processes.

    • Integrate compliance practices in dev process.

    • Conduct design, architecture, and code reviews.

    • Prepare software packages for distribution.

  • IT & Supply Chain

    • Mandate third party software providers to disclose open source in licensed or purchased software components.

    • Assist w/ingress of third party software (commercial and open source software).

    • Support and maintenance for tools infrastructure used by the compliance program.

    • Create and/or acquire new tools based on OSPO requests.

  • Documentation & Localization

    • Include open source license information and notices in the product documentation.

    • Translate basic information in target languages about open source information related to the product or software stack.

  • Corporate Development

    • Request open source compliance be completed before a merger or acquisition.

    • Request open source compliance be completed when receiving source code from outsourced development centers or third-party software vendors.

  • Human Resources
    • Build, retain, and attract talent

Business alignment

 

 

  • Without the right legal counsel, an open source program office can end up placing undue risk on company management. Legal can also stifle innovation, so strike the right balance.
     

  • Align with product management. If your open source program office is not helping your product strategy, then it's not reaching its full potential.

Continual COmpliance process

Two points of ingest

74% of an OSPO's role

Request approval before using.

Initial and on-going scans of existing code bases.

inspired by Ibrahim Haddad

Top ways success is measured

Measuring and monitoring success.

OSPO dashboard

For your code and third-party code

Security

  • Identified security vulnerabilities
  • Static vulnerability analysis

Compliance

  • Flagged license compliance
  • Status of scans

Contribution

  • Missing contribution guides
  • Unsigned CLAs
  • Outstanding contribution requests
  • Community
    • Events
    • Repo stats: stars, PRs, commits, issues

Checklist

Establishing AN ospo

Hire a believer; a champion

Open source pragmatists are everywhere, but your innovative, forward-thinking, ambitious open source advocate is an extremely valuable rarity.

 

Hire them to run your open source programs if you want to make a difference.

Open source programs tend to start informally as a working group or a few key open source developers and then evolve into formal programs over time...

 

...typically within a company’s software engineering or development department (about 41% of programs).

Top challenges

  1. Strategy planning

  2. Defining policies

  3. Executive support

Challenge #3

Open source software is more than free software

 

Most don't understand many of the motivations for participants, nor do they understand the nuanced differences in licensing models, various types of productization and business models, or how proprietary and open source software can be used in conjunction to create a better product line.

Most tech company executives are far-removed from open source communities.

keep the faith

 70% of those without a program believe -

creating an OSPO would have a positive impact in their company, despite any barriers to creating it.

Teething is painful

Resources

many thanks to these open stewards

Lee Calcote

cloud native and its management