Telefonica

Post on 16-May-2015

307 views 4 download

Tags:

transcript

Brendan McAdams10gen, Inc.

brendan@10gen.com@rit

The Care & Feeding of Software

Tuesday, November 27, 12

Open Source Scales

0

25,000

50,000

75,000

100,000

125,000

150,000

May ‘10Jul ‘10Sep ‘10Nov ‘10

Jan ‘11Mar ‘11

May ‘11Jul ‘11

Sep ‘11Nov ‘11

Jan ‘12Mar ‘12

Tuesday, November 27, 12

"In short, software is eating the world."- Marc Andreesen Wall Street Journal, Aug. 2011 http://on.wsj.com/XLwnmo

Tuesday, November 27, 12

Software is Eating the World

• Amazon.com (and .uk, .es, etc) started as a bookstore• Today, they sell just about everything - bicycles, appliances, computers, TVs, etc.• In some cities in America, they even do home grocery delivery• No longer as much of a physical goods company - becoming fixated and surrounded by software• Pioneering the eBook revolution with Kindle• EC2 is running a huge percentage of the public internet

Tuesday, November 27, 12

Software is Eating the World

• Netflix started as a company to deliver DVDs to the home...

Tuesday, November 27, 12

Software is Eating the World

• Netflix started as a company to deliver DVDs to the home...• But as they’ve grown, business has shifted to an online streaming service• They are now rolling out rapidly in many countries including Ireland, the UK, Canada and the Nordics• No need for physical inventory or postal distribution ... just servers and digital copies

Tuesday, November 27, 12

Disney Found Itself Forced To Transform...

From This...

Tuesday, November 27, 12

Disney Found Itself Forced To Transform...

... To This

Tuesday, November 27, 12

But What Does All This Software Do?

• Software always eats data – be it text files, user form input, emails, etc

• All things that eat, must eventually excrete...

Tuesday, November 27, 12

Ingestion = Excretion

+ =

Yeast Ingests Sugars,

and Excretes Ethanol

Tuesday, November 27, 12

Ingestion = Excretion

=

Cows, er...

well, you get the point.

Tuesday, November 27, 12

So What Does Software Eat?

• Software always eats data – be it text files, user form input, emails, etc

• But what does software excrete?• More Data, of course...• This data gets bigger and bigger• The solutions become narrower for storing & processing this data• Data Fertilizes Software, in an endless cycle...

Tuesday, November 27, 12

Feed & Cultivate Your Software

• If we think of Software & Data this way, cultivation, care & feeding become crucial

• The way we cultivate good software and data?• Good Practices• Good Skills• Hard Work

Tuesday, November 27, 12

Don’t Tilt At Windmills...

Tuesday, November 27, 12

... Or Shave Too Many Yaks

Tuesday, November 27, 12

Don’t Tilt At Windmills...

• It is easy to get distracted in today’s environment

• Keep it simple• Use tools you (and your team) can understand• Use tools and techniques that can scale• Try not to reinvent the wheel

Tuesday, November 27, 12

... And Definitely Don’t Bite Off More Than You Can Chew

• Break work into smaller pieces• You can’t fit a whole pig into your mouth... • ... slice it into small parts that you can consume.

Tuesday, November 27, 12

My Beginning...

Tuesday, November 27, 12

Learn. Constantly.

Tuesday, November 27, 12

Would You Go To a Doctor Who

Doesn’t Learn New Things?

Tuesday, November 27, 12

Lack of Planning != Agile

Tuesday, November 27, 12

Let’s Remember The Rules

Tuesday, November 27, 12

This Includes Default Settings

Tuesday, November 27, 12

https://jeffpeachey.wordpress.com/2010/07/19/measure-twice-cut-once/

The Rule is “Measure Twice, Cut Once”

Tuesday, November 27, 12

Lead From The Front

Tuesday, November 27, 12

Community Matters

Tuesday, November 27, 12

Eat Your Own Dog Food

Tuesday, November 27, 12

• 15 years as a developer taught me this: “Tests seem like a really good idea... I’m tired of fixing my broken crap in production”

for (i <- 1 to ∞) println(“Tests. Matter.”)

Eating Your Own Dog Food

Tuesday, November 27, 12

Bugs... and how to avoid them.

Tuesday, November 27, 12

Continuous Integration Testing

Tuesday, November 27, 12

Learn To Relax

Tuesday, November 27, 12

¿QUESTIONS?

Tuesday, November 27, 12