Some programmers look at programming as more than their day job. They want to deepen their understanding, develop #skills and learn #techniques that will make them better programmers. Many invest their time outside of work or college in coding #dojos practising “code #katas” where they learn to fluently #solve a Tower of Hanoi problem in Ruby or a Harry Potter book store problem in Python. I admire their dedication but I’m not convinced this is the best #approach to making anyone a better programmer.
The metaphor of dojos and katas for improving programming skills is misleading. #Learning martial arts - and musical scales for that matter - is about deliberate practise whereas programming skills are developed through deliberate learning . In the former, you aspire to flawlessly reproduce a given sequence of moves or perform a piece of music. You want to perform the perfect ippon seo nage or play Rachmaninoff’s 3rd Symphony without a single error. Deliberate learning on the other hand is about developing #discovery and problem-solving skills in unfamiliar contexts .
In this talk Dan argues the case for deliberate learning with some techniques for improving your programming, and explains why Foo Café is such an important idea.
Dan North uses his deep technical and organisational knowledge to help CIOs, business and software teams to deliver quickly and successfully. He puts people first and finds simple, pragmatic solutions to business and technical problems, often using lean and agile techniques. He believes most technology #problems are really about #communication and #feedback, which explains his interest in organisational #design, systems #thinking and how people learn.