Our tools are becoming ever more efficient...
Command line tools are becoming obsolete...
Programmers today don't need to touch-type...
Using the mouse to copy and paste is perfectly fine...
You can always look up those design patterns on the web...
Your IDE can do many things for you, so why do you even need to think?
Can you feel it? Can you feel that this is TRUE?
Then stop being UNPROFESSIONAL and think again!
In this talk, I'm going to convince you that learning seemingly obsolete skills can have huge impact on your productivity. I will show you how these skills and other seemingly unimportant factors can impact your career. I will help you find ways to improve these skills in order to become a better programmer. I will also show you tools that can facilitate this process.
In other words, I will show you how programmers WORK OUT.
You will either leave this talk with a strong resolution to level up, or curl up in your comfort zone with your lovely mouse and IDE.
I plan to make the theme motivational and thought provoking. Showing what developers can learn from professional athletes, bodybuilders and circus performers (sic!).
I'm going to introduce a concept of programming workout.
The idea in its core is really simple.
It consists of regular and methodical practice of following skills:
- programming building blocks/high level skills (OO design, TDD, refactoring, strategies for dealing with legacy code etc.)
- auxiliary skills/low level skills (touch typing, editor commands, shell scripting, git wizardry, creative thinking etc.)
In a similar way as bodybuilders, athletes and performers have routine workouts to train their muscles, primary and auxiliary skills.
In order to be successful they need to be consistent, persistent and smart about how they train.
The hard part lies in designing a routine that is challenging, effective and interesting enough to make sure you will still follow it after few weeks.
During the talk I'm going to show
- how can we design a routine like that
- how one can measure her own progress
- how can we engineer our habits to make sticking to the routine easier
I have three primary goals for the talk:
- To inspire fellow programmers to push their skills to the next level.
- To start a discussion about necessity of practice related to professionalism.
- To start a movement of programming workout so we can have supportive and competitive community that will facilitate growing of our skills.
Why should you choose this talk?
First of all, I am said to be a charismatic person, fluent in English (not horribly bad at Japanese) and experienced in public speaking and giving workshops. I will make sure the talk is entertaining as well as motivating. The talk itself is a unique take on software craftsmanship. It stresses the importance of hard work which is generally neglected among programmers. The concept of applying regular workout routine to programming practice has not been discussed enough.
The topic perfectly fits the theme of Sapporo Ruby Kaigi - We Code.
It falls into categories of self-improvement, career development and software craftsmanship. I believe it will complement other technical talks nicely.
- Preferred presentation day: [no preference]
- Presentation language: [English | Japanese]
After leaving the corporate universe and developing a few computer games (like Motorstorm or Saints Row 2) for the PS3, XBOX and PC, Michał entered the Ruby World. Today, he makes delicious software at Applicake, manages projects and trains fellow programmers during Code Retreats. Michał enjoys pushing people out of their comfort zones and into new rewarding experiences. He can also talk for hours about how seemingly unrelated skills (such as running, dancing, hand balancing or juggling) can help you become a better programmer.