Slide 1

Slide 1 text

Programming Workout

Slide 2

Slide 2 text

Bear with me ... for a moment.

Slide 3

Slide 3 text

Who am I Michał Taszycki @mehowte

Slide 4

Slide 4 text

My journey

Slide 5

Slide 5 text

My journey

Slide 6

Slide 6 text

My journey

Slide 7

Slide 7 text

My journey

Slide 8

Slide 8 text

My journey

Slide 9

Slide 9 text

My journey

Slide 10

Slide 10 text

My journey

Slide 11

Slide 11 text

My journey

Slide 12

Slide 12 text

Programmers... ... perfectly normal people.

Slide 13

Slide 13 text

Good programmers

Slide 14

Slide 14 text

Bad programmers

Slide 15

Slide 15 text

Exceptional programmers

Slide 16

Slide 16 text

Exceptional programmers

Slide 17

Slide 17 text

When you see one...

Slide 18

Slide 18 text

They are talented

Slide 19

Slide 19 text

Exceptional qualities •Clear vision •Smart goals •Know how •Work hard

Slide 20

Slide 20 text

Hard work underrated *obligatory cat picture

Slide 21

Slide 21 text

Exceptional athletes ?

Slide 22

Slide 22 text

Exceptional athlete

Slide 23

Slide 23 text

Exceptional athlete

Slide 24

Slide 24 text

Exceptional athlete

Slide 25

Slide 25 text

Exceptional athlete

Slide 26

Slide 26 text

Exceptional athletes What can we learn from them?

Slide 27

Slide 27 text

How to work out? Pick exercises Group them Do them Rest

Slide 28

Slide 28 text

When to work out? Whenever you are comfortable.

Slide 29

Slide 29 text

How often? Couple of times a week.

Slide 30

Slide 30 text

How long? 0.5 - 1.5 hour *1-3 pomodoros

Slide 31

Slide 31 text

How? Now this is interesting...

Slide 32

Slide 32 text

Primary skills? Debugging TDD Paradigms Refactoring Dealing with legacy code Language mastery Proficiency with framework

Slide 33

Slide 33 text

Secondary skills? IDE mastery Touch typing shell commands source control mouse-less navigation tool proficiency quick reading/skimming

Slide 34

Slide 34 text

Sample workout Monday Wednesday Friday touch typing - 15 minute accuracy touch typing - 15 minute speed touch typing - 15 minute {}()[]<> Refactoring - 5x3 extract method Legacy code - 5x3 sprout class OOD - Tell don’t ask 3x3 refactoring Vim - 5x3 latest vimgolf challenge Roman Numbers Kata - 3 times Language mastery - 5x3 latest rubygame

Slide 35

Slide 35 text

Measure • Time • Reps • Time & Reps • Record yourself

Slide 36

Slide 36 text

Scale to your needs • find your level • make small progresses • stick to it until it gives you results

Slide 37

Slide 37 text

Find inspiration rubykoans.com rubyquiz.com katacasts peepcode.com (play by play especially)

Slide 38

Slide 38 text

One more thing... ... to model after gym community.

Slide 39

Slide 39 text

The community! Support Competition Gym buddies Knowledge sharing Let’s build The Community!

Slide 40

Slide 40 text

Want to know more? visit programmingworkout.com

Slide 41

Slide 41 text

No content