23
Product Development in the Age of Cloud Native John Mark Walker*, Founder, OSEN

Product Development in the Age of Cloud Native

Embed Size (px)

Citation preview

Page 1: Product Development in the Age of Cloud Native

Product Development in the

Age of Cloud NativeJohn Mark Walker*, Founder, OSEN

Page 2: Product Development in the Age of Cloud Native

What is Cloud Native?

“Cloud-native applications are purpose built for the cloud model. These

applications—built and deployed in a rapid cadence by small, dedicated

feature teams to a platform that offers easy scale-out and hardware

decoupling—offer organizations greater agility, resilience, and portability

across clouds.”

- pivotal.io

• Assumptions: Agile, devops, open source, comprehensive CI/CD

• Fully buzzword compliant

Page 3: Product Development in the Age of Cloud Native

What is Cloud Native?

…and fully buzzword compliant

Page 4: Product Development in the Age of Cloud Native

Let’s Unpack This - Waterfall

Beginning of development

Releases

Page 5: Product Development in the Age of Cloud Native

Let’s Unpack This – Waterfall-ish to Agile

Beginning of development

Releases

Cons:

• Narrowly focused on singular project/product

• Doesn’t account for reuse / collaboration

• Assumes only one endpoint or result

Pros:

• Fast-moving, rapid development

• Assumes CI/CD model

Page 6: Product Development in the Age of Cloud Native

Supply Chain Funnel

Cutting edge components

Finished Product

Integration + PM Process

Page 7: Product Development in the Age of Cloud Native

Open Source Software Supply Chain Funnel

Individual

Components

Open

Source

Distribution

Community “Product”

for End Users

Finished

Product

Page 8: Product Development in the Age of Cloud Native

2nd Stage: “Middle” Distribution

Open

Source

Distribution

Community “Product”

for End Users

• Artifact of BC (Before CI) era

• Required stopping point from leading edge to polished

• Great way to see if product design would hold together

• In the old days, components were individually packaged and maintained

• Source code repos were not easily distributed

• Don’t need 2nd stage if continuously improving and integrating along path to multiple releases

• In a linear development path, 2nd stage obsolete

Page 9: Product Development in the Age of Cloud Native

Cloud Native Supply Chain Funnel

Individual

Components

Released

ProductContinuous Improvement

Agile Processes

Page 10: Product Development in the Age of Cloud Native

Cloud Native Supply Chain Funnel

Open Source

Components

Release

Continuous Improvement

Agile Processes

Release Release

v1 v2 v3

…vN+1

Page 11: Product Development in the Age of Cloud Native

What Purpose Does the 2nd Stage Serve?

• The community distribution filled other purposes, perhaps unwittingly

• More relevant once you take a non-linear view

• It’s all about the ecosystem

• 1 code base serves many masters

Open Source Platform

Product

Community

Community Product

Community

Product

ProductCommunity

Page 12: Product Development in the Age of Cloud Native

It Was Never About Innovation

There is an art …or rather, a knack to flying. The knack lies in learning how to throw yourself at the

ground and miss.

The first part is easy. All it requires is simply the ability to throw yourself forward with all your weight,

and the willingness not to mind that it's going to hurt.

…Clearly, it is the second part, the missing, which presents the difficulties.

One problem is that you have to miss the ground accidentally. It's no good deliberately intending to

miss the ground because you won't. You have to have your attention suddenly distracted by

something else when you're halfway there, so that you are no longer thinking about falling, or about

the ground, or about how much it's going to hurt if you fail to miss it.

- Douglas Adams, Hitchhikers Guide to the Galaxy

Page 13: Product Development in the Age of Cloud Native

Innovation and Open Source

• Innovation was never the intent, but an interesting side benefit

• The intent was to create a fair system for creating and using software

• Innovation happened because of the rules governing open source systems

Old proprietary model

Vendor

Customer

Open source model

Vendor Customer

Page 14: Product Development in the Age of Cloud Native

Cloud Native Supply Chain Funnel - Issues

Open Source

Components

Release

Continuous Improvement

Agile Processes

Release Release

v1 v2 v3

…vN+1

● Assumes single product destination

● How can you try “crazy stuff” without

messing up release process?

● How do external communities collaborate?

Page 15: Product Development in the Age of Cloud Native

Orthogonal Innovation

Individual

Components

Open

Source

Distribution

Finished

Product

Communities in the Ecosystem

Products in the Ecosystem

Page 16: Product Development in the Age of Cloud Native

Orthogonal Innovation: Real World Examples

Individual

Components

CloudFoundry.orgPivotal Cloud

Foundry

Communities in the Ecosystem

Products in the Ecosystem

Page 17: Product Development in the Age of Cloud Native

Orthogonal Innovation: Real World Examples

Individual

Components

Debian Ubuntu

Communities in the Ecosystem

Products in the Ecosystem

Page 18: Product Development in the Age of Cloud Native

Orthogonal Innovation: Real World Examples

Individual

Components

Moby Docker

Communities in the Ecosystem

Products in the Ecosystem

Page 19: Product Development in the Age of Cloud Native

Orthogonal Innovation: Pros and Cons

Cons

• It’s messy, complicated

• Not every project needs to be a platform for the world

Pros

• Constant integration of new technology on multiple axes

• Build reliable supply chain, and influence multiple supply chains

• Core platform gets lots of extra testing and bug-fixing from multiple sources

• Reduces risk from external communities adding/changing code

Page 20: Product Development in the Age of Cloud Native
Page 21: Product Development in the Age of Cloud Native

Release ReleaseRelease

Page 22: Product Development in the Age of Cloud Native

Release ReleaseRelease

Page 23: Product Development in the Age of Cloud Native

Thank you!

How may we contact thee? Let me count the ways!

Web site: https://osenetwork.com/

Twitter: @osenetwork

Email: [email protected]

23