35
Deleting Code at Nokia Tom Coupland @tcoupland #0254

Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment

  • Upload
    others

  • View
    8

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment

Deleting Code at Nokia

Tom Coupland @tcoupland

#0254

Page 2: Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment

What happened when we set out for simplicity

Tom Coupland @tcoupland

#0254

Page 3: Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment

Nokia Entertainment Bristol

Page 4: Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment

The Journey

Page 5: Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment

Why did we set off?

Page 6: Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment

Why did we set off?

5751 40

Page 7: Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment

Why did we set off?

Page 8: Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment

Why did we set off?

Page 9: Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment

Why did we set off?

Page 10: Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment

The Journey

Page 11: Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment

Increased transparency Easier to reason about Can dive into the code

Less magic

Page 12: Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment

The Journey

Page 13: Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment

Simple configuration Faster boot time

Does less

Page 14: Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment
Page 15: Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment

The Journey

Page 16: Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment

Reduction in verbosity Scriptable

Easier to reason

Page 17: Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment

The Journey

Page 18: Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment

Reduction in verbosity Valid Java is valid Groovy

Functional concepts

Page 19: Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment

Immature at the time Lack of adoption drive

Cost/Benefit didn't add up

Page 20: Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment

The Journey

Page 21: Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment

Reduction in mapping code

Schema duplication Familiar query structure

Built in sharding support Similar write semantics

Page 22: Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment

Stalked project Engaged large group

Presented to department Devops style deployment

Page 23: Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment

The Journey

Page 24: Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment

Both OO and FP paradigms Developer satisfaction

Retains static types Information Density

Page 25: Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment

Both OO and FP paradigms Complexity

Covert adoption

Page 26: Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment

The Journey

Page 27: Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment

Functional

Immutable Dynamic

Declarative

Simple

Page 28: Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment

Sense of fun The Joy of Clojure

Embodied in Land of Lisp

Concise

Page 29: Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment

Local user-group Greenfield service

Early knowledge sharing Brown bag meetings

Page 30: Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment

The Journey

Page 31: Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment

71% ~100ms ~10ms 40 12 1674 5751

What about Deleting Code?

Page 32: Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment

How to escape

Think about what you want Educate yourself

& those around you Local user groups

Patience

Page 33: Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment

How to move on

Perform experiments Break down your system

Patience Be inclusive

Be brave

Page 34: Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment

Never make this mistake again?

You're going to Prepare for it instead

Relax

Break down your system Keep learning

Have fun

Time of 'The Stack' is over

Page 35: Tom Coupland @tcoupland #0254 · Deleting Code at Nokia Tom Coupland @tcoupland #0254 . What happened when we set out for simplicity Tom Coupland @tcoupland #0254 . Nokia Entertainment

Thank You

Refs: "Simple Made Easy"

RHickey @ QCon 2012 (and others)

"Six Months of MongoDB" TCoupland @ MongoUK 2012

"Clojure at Nokia Entertainment"

AJones & BGriffiths @ Skillsmatter 22/01/13

#0254