Legacy Coderetreat Bologna @ CodersTUG

24
Coderetrea t Legacy Matteo Baglini @matteobaglini #lcrb14

description

 

Transcript of Legacy Coderetreat Bologna @ CodersTUG

Page 1: Legacy Coderetreat Bologna @ CodersTUG

CoderetreatLegacy

Matteo Baglini@matteobaglini#lcrb14

Page 2: Legacy Coderetreat Bologna @ CodersTUG

Dave Thomas, Pragmatic Programmers

Become a Better DeveloperUltimately, greatness comes from practicing; applying the theory over and over again, using feedback to get better every time.

In software we do our practicing on the job, and that’s why we make mistakes on the job.

We need to find ways of splitting the practice from the profession.

We need practice sessions.

Page 3: Legacy Coderetreat Bologna @ CodersTUG

The secret is life-long period of deliberate effort to improve performance in a specific domain. The secret is what researcher calls Deliberate Practice.

Deliberate PracticeContrary to what you might believe, merely doing your job every day doesn’t qualify as real practice.

Page 4: Legacy Coderetreat Bologna @ CodersTUG

Corey Haines

Page 5: Legacy Coderetreat Bologna @ CodersTUG

J. B. Rainsberger

Page 6: Legacy Coderetreat Bologna @ CodersTUG

10:00 - 11:00 Session #1

11:00 - 12:00 Session #2

12:00 - 13:00 Session #3

13:00 - 14:00Lunch

14:00 - 15:00 Session #4

15:00 - 16:00 Session #5

16:00 - 17:00 Session #6

17:00 - 18:00Retrospective

Structure of the Day

}}

Page 7: Legacy Coderetreat Bologna @ CodersTUG

Structure of a Session

45’ Coding10’ Retrospective

5’ Break

Page 8: Legacy Coderetreat Bologna @ CodersTUG
Page 9: Legacy Coderetreat Bologna @ CodersTUG
Page 10: Legacy Coderetreat Bologna @ CodersTUG

Experiment

Page 11: Legacy Coderetreat Bologna @ CodersTUG

Pair Programming

Page 12: Legacy Coderetreat Bologna @ CodersTUG

Change Pair

Page 13: Legacy Coderetreat Bologna @ CodersTUG

Test-Driven Development

Page 14: Legacy Coderetreat Bologna @ CodersTUG

Delete Your Code

Page 15: Legacy Coderetreat Bologna @ CodersTUG
Page 16: Legacy Coderetreat Bologna @ CodersTUG

Put Your Code Under Test

Page 17: Legacy Coderetreat Bologna @ CodersTUG

Find Bad Code Smell

Page 18: Legacy Coderetreat Bologna @ CodersTUG

• Duplicated Code• Long Method• Large Class• Long Parameter

List• Divergent

Change• Shotgun Surgery• Feature Envy• Data Clumps• Lazy Class

Find Bad Code Smell• Primitive

Obsession• Switch

Statements• Temporary Field• Message Chains• Middle Man• Inappropriate

Intimacy• Data Class• Comments

Page 19: Legacy Coderetreat Bologna @ CodersTUG

Simple Design

• Passes all the tests• Contains no duplication• Express developer intent• Contains as little code as possible

Page 20: Legacy Coderetreat Bologna @ CodersTUG

Simple Design

Page 21: Legacy Coderetreat Bologna @ CodersTUG

Simple Design

Page 22: Legacy Coderetreat Bologna @ CodersTUG

Refactor

Page 23: Legacy Coderetreat Bologna @ CodersTUG
Page 24: Legacy Coderetreat Bologna @ CodersTUG

Let’s code

together