Top Banner
Code Katas March 13, 2015
29
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Code Katas

Code KatasMarch 13, 2015

Page 2: Code Katas

We’ll Do It Live!

I

Page 3: Code Katas

QUESTIONS?

Page 2

Page 4: Code Katas

TAKEAWAYS

Page 2

Test First Simple Solution

Judicious Refactoring

Elegance Emerged

Page 5: Code Katas

Page 2

Elegance Emerged

Page 6: Code Katas

Page 2

“...we have so far beset ourselves with rules, and concepts, and ideas...that we have

become afraid of what will happen naturally, and convinced that we must work within a

“system” and with “methods” [or] our surroundings will come tumbling down in

chaos.” Christopher Alexander - The Timeless Way of Building

Page 7: Code Katas

Page 2

Page 8: Code Katas

Page 2

"How do we get great designers? Great designers design, of course."

"So how are we supposed to get great architects, if they only get the chance to architect fewer than

a half-dozen times in their career?" Ted Neward

Fred Brooks

Page 9: Code Katas

CODE KATAS

Page 2

Page 10: Code Katas

Page 2

Dave Thomas

Page 11: Code Katas

Page 2

But in the software industry we take developers trained in the theory and throw

them straight in to the deep-end. 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 12: Code Katas

Page 2

Page 13: Code Katas

Page 2

Advanced Beginner

Competent

Proficient

Novice

Expert

Dreyfus Model of Skills Acquisition

Page 14: Code Katas

Fog vs Straight Stream

Left Hand Search

“10 PSI drop - the fire is spreading”

“Put the wet stuff on the red stuff”

“Don’t enter that house”

Page 15: Code Katas
Page 16: Code Katas
Page 17: Code Katas
Page 18: Code Katas

Cognitively Undemanding

Cognitively Demanding

Context Embedded

Context Reduced

Basic Interpersonal Communication Skills

Cognitive/Academic Language Processing

Copy from the board Telephone Conversation

Science Experiments Listening to a Lecture

Page 19: Code Katas

Applications of Code Katas

IIII

Page 20: Code Katas

PERSONAL GROWTH

Page 2

Test First

Vim vs Emacs

No TestsNew Language

TMUX vs multiple windows

IDE vs Command Line

Page 21: Code Katas

TEAM GROWTH

Page 2

Page 22: Code Katas

Page 2

Page 23: Code Katas

Page 2

Page 24: Code Katas

Page 2

https://archkatas.herokuapp.com/kata.html

ARCHITECTURE KATAS

Page 25: Code Katas

HIRING

Page 2

Page 26: Code Katas

KATAS FOR HIRING

Page 2

Clear Goal Fun Exercise

Room for Exploration Minimal Barrier to Entry

Quick to Understand the Whole Thing

Page 27: Code Katas

Page 2

Page 28: Code Katas

Page 2

http://www.codekatas.org

http://www.codekata.com

http://www.codingdojo.org/cgi-bin/index.pl?KataCatalogue

http://katas.softwarecraftsmanship.org/

KATA SITES

Page 29: Code Katas

Thanks!

FiCory Foy

[email protected] http://blog.coryfoy.com

Smashing Boxes smashingboxes.com

We’re Hiring!