Lean software

Preview:

Citation preview

Lean Software Development

Monday, March 25, 13

`whoami`=> Cyril David

Monday, March 25, 13

twitter.com/cyxgithub.com/cyx

Monday, March 25, 13

Monday, March 25, 13

Monday, March 25, 13

engineer at citrusbyte

Monday, March 25, 13

Lean

Monday, March 25, 13

1. Eliminate Waste2. Amplify Learning3. Decide as late as possible4. Deliver as fast as possible5. Empower the team6. Build integrity in7. See the whole

Monday, March 25, 13

1. Eliminate Waste2. Amplify Learning3. Decide as late as possible4. Deliver as fast as possible5. Empower the team6. Build integrity in7. See the whole

Monday, March 25, 13

1. Eliminate Waste2. Amplify Learning3. Decide as late as possible4. Deliver as fast as possible5. Empower the team6. Build integrity in7. See the whole

Monday, March 25, 13

1. Eliminate Waste2. Amplify Learning3. Decide as late as possible4. Deliver as fast as possible5. Empower the team6. Build integrity in7. See the whole

Monday, March 25, 13

1. Eliminate Waste2. Amplify Learning3. Decide as late as possible4. Deliver as fast as possible5. Empower the team6. Build integrity in7. See the whole

Monday, March 25, 13

1. Eliminate Waste2. Amplify Learning3. Decide as late as possible4. Deliver as fast as possible5. Empower the team6. Build integrity in7. See the whole

Monday, March 25, 13

1. Eliminate Waste2. Amplify Learning3. Decide as late as possible4. Deliver as fast as possible5. Empower the team6. Build integrity in7. See the whole

Monday, March 25, 13

1. Eliminate Waste2. Amplify Learning3. Decide as late as possible4. Deliver as fast as possible5. Empower the team6. Build integrity in7. See the whole

Monday, March 25, 13

Monday, March 25, 13

1. Eliminate Waste ✓2. Amplify Learning3. Decide as late as possible4. Deliver as fast as possible5. Empower the team6. Build integrity in7. See the whole

Monday, March 25, 13

unnecessary code and functionality

Monday, March 25, 13

Trivia$ cloc bundler/lib bundler/bin

Monday, March 25, 13

Bundler Isolate dep

9020 453 145

10MB 8MB N/A

Monday, March 25, 13

Rails Sinatra Cuba

230K 5K 201

70MB 20MB 10MB

500 req/sec 1000 req/sec 3000 req/sec

Monday, March 25, 13

How much of that do we actually use?

Monday, March 25, 13

Hypothesis: 50-90% WASTE

Monday, March 25, 13

What if we started to use simple tools?

Monday, March 25, 13

cuba ~ rails

Monday, March 25, 13

ohm ~ mongoidredis ~ mongodb

Monday, March 25, 13

ost ~ resque

Monday, March 25, 13

dep ~ bundler

Monday, March 25, 13

previously : 230K++ LOCnow : 14K LOC

Monday, March 25, 13

UP TO 94% WASTE

Monday, March 25, 13

Cons

Monday, March 25, 13

Steeper learning curve?

Monday, March 25, 13

Monday, March 25, 13

Relearning

Monday, March 25, 13

Monday, March 25, 13

Slower development?

Monday, March 25, 13

Pros

Monday, March 25, 13

Performance(as a consequence of simplicity)

Monday, March 25, 13

A deeper understanding(closer to the metal)

Monday, March 25, 13

Control(you are now the master)

Monday, March 25, 13

Our Toolkit

Monday, March 25, 13

cubaohmost

moteshieldcutest

Monday, March 25, 13

$ gem i gn$ gn -i git://github.com/soveran/app$ gn app

Monday, March 25, 13

Monday, March 25, 13

Monday, March 25, 13

Monday, March 25, 13

Questions?

Monday, March 25, 13

Recommended