54
Hello

Pairing, fast and slow

  • Upload
    tai-su

  • View
    257

  • Download
    2

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Pairing, fast and slow

Hello

Page 2: Pairing, fast and slow
Page 3: Pairing, fast and slow

PAIRING,FAST and SLOW

Page 4: Pairing, fast and slow

i18n蘇泰安 f taiansu

README.mdaboutćmeftaiansu

logdo Ŷćyear 電腦雜誌技術編輯 endgem install railsvalidates čhaveYscjp Ṡẞ truemvim jćrbĉ jćjsworkYat OptimisDevrfronYend j ẄćỶ Ś backYend j ẄćŶ

Page 5: Pairing, fast and slow

What is pair programming

Page 6: Pairing, fast and slow

Two programmers at one computerOne drivesċ the other navigatesSwitching roles fluidlyThey constantly communicate

Page 7: Pairing, fast and slow

Why Pairing

Page 8: Pairing, fast and slow

Ỳć reduction in defect rates of ỲẎỜ to ẎẄỜÝć better designĉ simplerĉ moreQmaintainable codeŶć impossible problems become easy or even quick

Page 9: Pairing, fast and slow

Way more fun then it sounds

Page 10: Pairing, fast and slow

productivity && fun

Page 11: Pairing, fast and slow

Ninja( feel like )

Page 12: Pairing, fast and slow

Herbert Simon:I 情境提供了線索ĉ

線索讓專家得以提取記憶中的訊息ĉ而訊息提供了答案。

專家直覺就是辨識,不多也不少,就是它。 J

Page 13: Pairing, fast and slow
Page 14: Pairing, fast and slow
Page 15: Pairing, fast and slow
Page 16: Pairing, fast and slow

Two system

Page 17: Pairing, fast and slow
Page 18: Pairing, fast and slow

System 1automaticllyquicklylittle or no effortno sense of voluntart control

Page 19: Pairing, fast and slow

17 * 24

Page 20: Pairing, fast and slow

CPU bound

Page 21: Pairing, fast and slow

Pay attention

Page 22: Pairing, fast and slow

System 2conscious and resoningallocates attentionslowhave boundrylazyĉ lazyĉ lazy

Page 23: Pairing, fast and slow

Cache things to System 1

Page 24: Pairing, fast and slow

system_1 += system_2take 10,000 hours

Page 25: Pairing, fast and slow
Page 26: Pairing, fast and slow

Müller Lyer illusion

Page 27: Pairing, fast and slow
Page 28: Pairing, fast and slow
Page 29: Pairing, fast and slow

Think pair programmingthis way

Page 30: Pairing, fast and slow

The driverfocuses on tactics:

writing clean code that runs and pass the testć

Page 31: Pairing, fast and slow

The navigatorfocuses on strategy:

how the code fits into the overall designwhich tests will drive the code forwardwhich refactorings will improve the entire codebase

Page 32: Pairing, fast and slow

Our Case

Page 33: Pairing, fast and slow

Goal

Page 34: Pairing, fast and slow

Discuss

Page 35: Pairing, fast and slow

& Code

Page 36: Pairing, fast and slow
Page 37: Pairing, fast and slow

What we found

Page 38: Pairing, fast and slow

Set up a goal everytime

Page 39: Pairing, fast and slow

TDD is great for pairing

Page 40: Pairing, fast and slow

Stay talking

Page 41: Pairing, fast and slow

shared knowledgeboth technique

and your application

Page 42: Pairing, fast and slow

You'll know your partner more

Page 43: Pairing, fast and slow

improve communicationability

Page 44: Pairing, fast and slow

rest frequently

Page 45: Pairing, fast and slow

Result

Page 46: Pairing, fast and slow

3 days30 LOC

plus test

Page 47: Pairing, fast and slow

U no pair?

Page 48: Pairing, fast and slow

Office settingBoss

Culture

Page 49: Pairing, fast and slow

ToolsScreenHero with Skypetmux

Page 50: Pairing, fast and slow

It's an insurance

Page 51: Pairing, fast and slow

名為'信賴'的模型

martz 松本行弘的程式世界, 2009

I 但是,從前面的的討論也能發現,會發生這些問題的「大規模開發」,

顯然也不是什麼幸福的狀況。

是不是應該先改善專案內的信賴關係,直到足以採用Ruby的程度為止。就算最後決定不使用Ruby也一樣 J

Page 52: Pairing, fast and slow

Fear

Page 53: Pairing, fast and slow

How to doOEREILLYč The Art of Agileĉ Chć ẎćỲ

How they doPeepCodeč play by play series

bitćlyfWbAÝbH

Page 54: Pairing, fast and slow

Thank youany questions?