Second video recommended by my colleague and stubber friend @xala3pa. First, I have to say that I’ve enjoyed it quite a bit, probably because the speaker, Dan North, is very good at exposing his message. He starts talking about dojos (a.k.a. training rooms) and katas (a.k.a. sequences of movements), terms that sound familiar to many software developers seeking to perfect their programming skills. These concepts are used by analogy to their equivalents in martial arts or other practices (eg playing an instrument), in which the repetition of katas leads to mastery, to the automatic reproduction of movements. According to Dan, this metaphor is poorly applied to programming.
I can not disagree at all with Dan, although in my opinion the kata seems to me an interesting approach, sometimes useful to improve certain skills as a programmer. Anyway, complementary with what is discussed below…
North states that it is more useful for him to seek to maximize the discovery and expressly talks about koans, questions or problems with impossible or ambiguous or not very clear answer. One learns much more in the process of trying to answer the question, than by knowing the answer itself. What I have also liked (and has confirmed my suspicions) is that it has referenced the work of Zed Shaw, Learn Python the Hard Way. This work has a free web version as well as a book of the same name, and it seems that the objective of the author (Zed Shaw) is to pose a problem and only provide the reader enough information (and no more) to solve it. A challenge. Also, a book I’m adding to my Amazon’s wishlist 😉 and that has seen the light in this version a few days ago (a future purchase for me!).
Finally, one of the last questions that Dan North left to the audience is this:
“How do I know what is the most useful thing I should learn next?”
Someone from the audience attending the conference has given the key: Learn to learn. Well, in that path we are now…