craftsman learns
play

Craftsman Learns ... o r L e a r n i n g t h e C r a f t Pete - PowerPoint PPT Presentation

QCon 2010 The Craftsman Learns ... o r L e a r n i n g t h e C r a f t Pete Goodliffe pete@goodliffe.net the craftsman learnslearning the craft pete goodliffe Pete Goodliffe A programmer, a columnist, an author, a teacher. Someone who


  1. QCon 2010 The Craftsman Learns ... o r L e a r n i n g t h e C r a f t Pete Goodliffe pete@goodliffe.net

  2. the craftsman learnslearning the craft pete goodliffe Pete Goodliffe A programmer, a columnist, an author, a teacher. Someone who cares about code. www.goodliffe.net goodliffe.blogspot.com

  3. the craftsman learnslearning the craft pete goodliffe Pete Goodliffe A programmer, a columnist, an author, a teacher. Someone who cares about code. www.goodliffe.net goodliffe.blogspot.com

  4. the craftsman learnslearning the craft pete goodliffe talk synopsis Software developers should be perennial students. Exceptional programmers aren't the ones who know it all. No one possibly can, no matter what the self-professed gurus would have you believe. Truly great software developers know their limits, and constantly strive to push them, to learn new skills and amass a catalogue of new techniques that can be applied to their craft. As a programmer you constantly face fresh challenges; you will frequently be forced to learn a new language, a new technology, or a new project. And you will have to know it all by... yesterday. It's both our responsibility and, hopefully, our pleasure. I this talk we'll investigate: ‣ how the software craftsman approaches learning ‣ what information to learn, and what to ignore ‣ how to learn new things effectively ‣ techniques for quickly picking up new technology ‣ healthy attitudes towards learning ‣ the craftsman’s curiosity , and how to assuage it

  5. the craftsman learnslearning the craft pete goodliffe plan of attack ‣ preliminaries: the facts of life ‣ what to learn ‣ how to learn ‣ conclusions

  6. the craftsman learnslearning the craft pete goodliffe plan of attack ‣ preliminaries: the facts of life ‣ what to learn ‣ how to learn ‣ conclusions

  7. » The Facts of Life « The prologue

  8. LEARNING:.. We all do it ‣ Software developers should be perennial students. all humans are ‣ Some people do it better than others ‣ Some people do it more than others Here are some keys ‣ Our profession requires that we constantly learn to help us improve

  9. LEARNING:.. is frightening ‣ It’s hard work ‣ It’s extra effort ‣ Change is good ‣ Learning is good LEARNING:.. is difficult ‣ The problem is getting worse ‣ There is always a new new thing ‣ Increase in code size ‣ More legacy code ‣ Increased inter-connectedness ‣ Career progression → increased expectations

  10. 10,000

  11. 10,000 expert 8,000 shows potential 4,000 also-ran

  12. 10,000 expert = 10 years * 3 hours

  13. = hard work

  14. » The Facts of Life « Categorising knowledge

  15. everything there is to know

  16. everything everything you everything you you’ve forgotten don’t know know

  17. “ Reports that say that something hasn't happened are always interesting to me, because as we know, there are known knowns ; there are things we know we know. We also know there are known unknowns ; that is to say we know there are some things we do not know. But there are also unknown unknowns - the ones we don't know we don't know. And if one ” looks throughout the history of our country and other free countries, it is the latter category that tend to be the difficult ones. Donald H. Rumsfeld February 12, 2002 Department of Defense News Briefing

  18. everything you know you don’t know everything you everything you know don’t know everything you don’t know you don’t know everything you’ve forgotten

  19. everything everything you you know you know well don’t know everything you know everything everything you you don’t know a bit know you don’t know everything you’ve forgotten In the actual presentation, this jumble makes perfect sense. Here are more keys Animations, to help us dontchaknow... improve

  20. everything everything you you know you know well » Beware of the « don’t know Four levels of incompetence everything everything you you don’t know a bit know you don’t 1.Conscious incompetence know 2.Conscious competence 3.Unconscious competence 4.Unconscious incompetence everything you’ve forgotten Here are more keys to help us improve

  21. » The Facts of Life « The ethics of learning

  22. study is not something that a teacher does to you it is something you do

  23. study is not something that responsibility a teacher does to you it is something you do

  24. professionalism

  25. “ Learning is like rowing upstream : not to ” advance is to drop back. Chinese proverb

  26. Learning: You’ve either got to, or you ought to.

  27. the craftsman learnslearning the craft pete goodliffe plan of attack ‣ preliminaries: the facts of life ‣ what to learn ‣ how to learn ‣ conclusions

  28. the craftsman learnslearning the craft pete goodliffe plan of attack ‣ preliminaries: the facts of life ‣ what to learn ‣ how to learn ‣ conclusions

  29. your knowledge portfolio the pragmatic programmer

  30. problem domain technology ? new codebase

  31. problem domain ‣ Users ‣ Domain knowledge ‣ Who are the experts? technology ‣ Programming language ‣ Library ‣ Framework/API ‣ Software tools ‣ Build system ‣ Issue tracker new codebase ‣ Architecture ‣ Design ‣ Structure ‣ Idioms ‣ How to build ‣ How to run tests ‣ Development practices

  32. new technology technical skills how to work with others how to learn the “leftfield”

  33. ‣ What is the next big new technology thing ? ‣ Different language paradigms technical skills ‣ New tools ‣ Libraries how to work ‣ Frameworks with others how to learn the “leftfield”

  34. ‣ How to read code new technology ‣ How to write technical documentation technical skills ‣ How to manage software projects how to work ‣ New techniques and with others methodologies (TDD, BDD, code how to learn generation, lean) the “leftfield”

  35. ‣ How to understand new technology others ‣ How to communicate ‣ How to listen (and technical skills understand) ‣ Understand the how to work with others customer how to learn the “leftfield”

  36. ‣ That’s why you’re new technology here! ‣ New learning techniques technical skills how to work with others how to learn the “leftfield”

  37. ‣ Foreign language new technology ‣ Musical instrument ‣ Martial art ‣ New branch of technical skills science ‣ Art how to work ‣ Philosophy with others ‣ Spirituality how to learn the “leftfield”

  38. the craftsman learnslearning the craft pete goodliffe plan of attack ‣ preliminaries: the facts of life ‣ what to learn ‣ how to learn ‣ conclusions

  39. the craftsman learnslearning the craft pete goodliffe plan of attack ‣ preliminaries: the facts of life ‣ what to learn ‣ how to learn ‣ conclusions

  40. apprentice → journeyman master → → → shu ha ri → → → →

  41. dreyfus model cone of learning expert proficient competent advanced beginner novice

  42. “ Effort is one of the things that gives meaning to life. Effort means you care about something, that something is important to you and you are ” willing to work for it. Carol Dweck Social Pyschologist Self-theories: Their role in motivation, personality and development (1999)

  43. attitude

  44. attitude Responsibility Continuous learning Hunger Curiosity Humility Self-belief

  45. » How to learn « Learning tools Learning processes Plans

  46. The ? Ultimate Learning Machine

  47. » the user’s manual «

  48. » Maintenance « Use the correct fuel * Amino acids from protein- rich food (meat, fish, cheese) * Vitamins/minerals (B, sodium, potassium, calcium, omega-3) * Keep hydrated Keep running smoothly * Avoid stress * Adequate rest

  49. Right brain Left brain PCI Bus Person Control Interconnect

  50. Right brain Left brain PCI Bus Person Control Interconnect

  51. Right brain Left brain * Verbal * Non-verbal * Rational * Non-rational * Analytic * Intuitive * Linear * Spatial * Logical * Relational * Temporal * Perceptive * Symbolic * Holistic * Single-threaded * Multithreaded * Synchronous * Asynchronous PCI Bus Person Control Interconnect

  52. Right brain Left brain the trick: harness both sides PCI Bus Person Control Interconnect

  53. listen: music The describe Ultimate Learning twiddle Machine doodle/draw meditate

  54. » multimode learning «

  55. practice practice is not a noun

  56. practice practice is not a noun deliberate practice katas dojo

  57. “ Tell me, and I will forget. Show me, and I may remember. Involve me , ” and I will understand. Confucius

  58. TDD L test driven learning ‣ Planned study ‣ How will you know you’ve successfully learnt? ‣ Repeated test and recall ‣ Not repeated study ‣ Real experience aids recall ‣ If you can’t demonstrate it, you don’t know it

  59. your notes cpu cache your reference materials books, notebooks, web, etc swap space where to get more info new downloads; not processed yet future input

Recommend


More recommend