19
World of Services The Software Architecture That is Eating the World John R. Rymer, Principal Analyst, Forrester Solomon Hykes, CEO, dotCloud December 10, 2012

World of Services: Software Architecture That is Eating the World

Embed Size (px)

DESCRIPTION

The Software Architecture that is Eating the World Marc Andreessen famously stated that "software is eating the World". In every industry the rules are being rewritten by companies leveraging new software tools and online services to their advantage. This is a massive, game-changing trend that will have transformative effects for decades to come. But how does it work? What makes certain tools and technologies more successful than others? What is the secret weapon of those most productive and disruptive IT organizations? Will this cambrian explosion of tools and services continue exponentially, or will it converge towards a handful of dominant platforms? Join Solomon Hykes, founder and CEO of dotCloud and a pioneer of the PaaS space, and John Rymer, Forrester's Principal Analyst serving Application Development and Delivery Professionals, in an exploration of the architectural blueprint behind the biggest technology shift since the industrial revolution.

Citation preview

Page 1: World of Services: Software Architecture That is Eating the World

World of ServicesThe Software Architecture That is Eating the World

John R. Rymer, Principal Analyst, Forrester

Solomon Hykes, CEO, dotCloud

December 10, 2012

Page 2: World of Services: Software Architecture That is Eating the World

2

Agenda

• Adoption of Cloud Platforms• 7 Rules of Cloud-Native Development• Examples • Conclusion• Q&A

Page 3: World of Services: Software Architecture That is Eating the World

Adoption Of Cloud Platforms Is Changing Applications

John R. Rymer, Vice President, Principal AnalystDecember 10, 2012

Page 4: World of Services: Software Architecture That is Eating the World

© 2012 Forrester Research, Inc. Reproduction Prohibited

The shift begins with the Open WebNEW TECHNOLOGIES COUPLED WITH NEW THINKING

HTML5 & Mobile

Web APIs

Open culture

Cloud

Page 5: World of Services: Software Architecture That is Eating the World

© 2012 Forrester Research, Inc. Reproduction Prohibited

2010 was the ‘year of the cloud’

Before 2007 2007 2008 2009 2010 2011 20120%

5%

10%

15%

20%

25%

30%

35%

5%6%

8%

15%

28%

32%

7%

CLOUD DEVELOPMENT ALMOST DOUBLED THAT YEAR

“In what year did you first build and deploy an application to one of the cloud platforms you mentioned in the prior question?”

Source: Forrester Global Cloud Developer Online Survey, Q3 2012Base: 106 developers with direct experience developing applications using cloud computing environments

Page 6: World of Services: Software Architecture That is Eating the World

© 2012 Forrester Research, Inc. Reproduction Prohibited

New code in the cloud will grow

0%-20% 20%-39% 40%-59% 60%-79% 80%-99% 100%0

5

10

15

20

25

30

35

A GRADUAL SHIFT TOWARD 50% TO 60% NEW CODE; FEW REPORT 100%

“How much of the code you deploy to the cloud environments of your choice is new? How do you expect that to change in the future?”

Source: Forrester Global Cloud Developer Online Survey, Q3 2012Base: 106 developers with direct experience developing applications using cloud computing environments

TodayNext year

In 2 years

New code as percentage of total application

Nu

mb

er

of

res

po

nd

en

ts

Page 7: World of Services: Software Architecture That is Eating the World

November 2010 “Best Practices: Building High-Performance Application Development Teams”

Teams moving to empowerment

Page 8: World of Services: Software Architecture That is Eating the World

8

7 RULES OF CLOUD-NATIVE DEVELOPMENT

Solomon Hykes

Page 9: World of Services: Software Architecture That is Eating the World

9

7 Rules of Cloud-Native Development

1. Think services, not servers

2. Don’t reinvent the wheel

3. Don’t create silos

4. Don’t get in the way of the developer

5. Cookie-cutter first, customize later

6. Experiment quickly

7. Ship every day

Page 10: World of Services: Software Architecture That is Eating the World

10© 2012 Forrester Research, Inc. Reproduction Prohibited

1. Think services, not servers

Break down your application

in discrete, reusable components

Libraries that run themselves

Do it from day one

Page 11: World of Services: Software Architecture That is Eating the World

11© 2012 Forrester Research, Inc. Reproduction Prohibited

2. Don’t Reinvent the Wheel

Requirement: Ship product fast with only 3 employees

“Without these ready-to-use cloud services we never would have launched so fast with a team so small”

Justin Kan, Justin.TV, Twitch, Ycombinator, Exec

+ + +

Page 12: World of Services: Software Architecture That is Eating the World

12

3. Don’t create silos

frontendbackend data securitydesign ops

frontend

backend

data

ops

security

design

performance

Page 13: World of Services: Software Architecture That is Eating the World

13

3 rules of software teams

• Ownership + Focus + Responsibility– Ownership: 1 team per product– Focus: 1 product per team– Responsibility: if you wrote it you fix it– Don’t form specialized teams. EMBED

specialists into your teams

Page 14: World of Services: Software Architecture That is Eating the World

14© 2012 Forrester Research, Inc. Reproduction Prohibited

4. Don’t get in the way of your developers

Functional Requirements

• “It has to work for 100,000 simultaneous connections”

• “We need to go Live by Christmas”

• “It has to pass next quarter’s infosec audit”

• “This can’t go down during next week’s demo. Do whatever it takes”

Implementation Requirements

• “It has to be Java”• “If you need more servers,

ask Bob for it and wait”• “I heard Node.js is the

future, rewrite it all in Node.js”

• “Your performance will be measured by the number of lines of code written”

Page 15: World of Services: Software Architecture That is Eating the World

15© 2012 Forrester Research, Inc. Reproduction Prohibited

5. Cookie-cutter first, customize later

Requirement: Monitoring at massive scale“We started with plain old Nagios. Not perfect but

familiar and reliable.”

“Once we hit scale problems, we located the bottleneck (NRPE) and replaced it with ZERORPC”

“It’s still Nagios, with just enough customization. Investing that time upfront would have been a waste of precious time.”

Scott VandenPlas, Lead Devops, Obama for America

Page 16: World of Services: Software Architecture That is Eating the World

16© 2012 Forrester Research, Inc. Reproduction Prohibited

6. Experiment quickly

Isaac Wolkerstorfer, CTO, 6Wunderkinder

“1 million users in 9 months. How do we keep shipping fast without breaking?”

“Service-oriented means we choose the best tool for each feature.”

“I can use Ruby for one service and PHP for another. I only refactor when I decide to”

Page 17: World of Services: Software Architecture That is Eating the World

17© 2012 Forrester Research, Inc. Reproduction Prohibited

7. Ship every day

• Replicate your stack in a sandbox that mirrors the production environment.

• Deploy to that sandbox every day.

• Give each developer his own sandbox

Start Shipping on Day 1. Don’t wait for the launch

Page 18: World of Services: Software Architecture That is Eating the World

18

QUESTIONS?We will unmute all attendees to ask questions

Page 19: World of Services: Software Architecture That is Eating the World

19

Thank you

John R. Rymer

• @forrester

Solomon Hykes

• @solomonstre• @dot_cloud