Becoming a Better Programmer (2013)

10,640 views
9,842 views

Published on

A talk given at the ACCU 2013 software development conference.

Published in: Technology, Business
1 Comment
38 Likes
Statistics
Notes
No Downloads
Views
Total views
10,640
On SlideShare
0
From Embeds
0
Number of Embeds
414
Actions
Shares
0
Downloads
0
Comments
1
Likes
38
Embeds 0
No embeds

No notes for slide

Becoming a Better Programmer (2013)

  1. accu 2013 bristol, aprilbecoming abetter programmer PETE GOODLIFFE pete@goodliffe.net @petegoodliffe
  2. @petegoodliffepete@goodliffe.netgoodliffe.blogspot.comwww.goodliffe.net PE TE G OODL PROGRAMME IFFE R / AUTHOR / COLUMN IST / TEACHER ★ CON SCIENTIOUS CODER
  3. you
  4. this
  5. We all want to be better programmers, right?This entertaining session will help you to work out how.With the help of a number of special guests, we will provide a series of practical, simple methods tobecome a better programmer. Well gain some real insights from respected developers.There will be plenty of hand-waving and jumping, a little philosophy, and some twists. Be the best programmer you can!
  6. We all want to be better programmers, right?This entertaining session will help you to work out how.With the help of a number of special guests, we will provide a series of practical, simple methods tobecome a better programmer. Well gain some real insights from respected developers.There will be plenty of hand-waving and jumping, a little philosophy, and some twists. Be the best programmer you can!
  7. the plan
  8. people & wrap up intro(set the scene) stuff (what have we learnt?) (exploring themes) you are here you leave entertained and educated
  9. becoming abetter programmer
  10. ?what does it mean? better than what? how do we do it?
  11. does it matter?
  12. yes
  13. yes
  14. yes!
  15. why?
  16. but why be better?
  17. financialbuild // rework // repurpose // maintain
  18. professionalism / craft
  19. personal pride
  20. what does better look like?
  21. better than what?you are now // programmers around you // industry average
  22. super awesome you?liability
  23. super awesome you?liability
  24. super awesome skill bskill a skill c you?liability
  25. skills designattitudes communication technologies inter-personal politics techniques
  26. a long learning process
  27. useful models
  28. FOUR THE LEVELS OF ★INCOMPETENCE
  29. four levels of (in)competence compe tence Unc onscious in ten ce om pe us inc Co ns cio ce p eten co m en ce c io us p et Co ns c om io us n sc Un co
  30. THEDREYFUSMODEL SKILLS OFACQUISITION
  31. expert proficient competentadvanced beginner novice
  32. expert // authority, interlinked with other skills, intuitionproficient // corrects previous errors, learn from others, interprets maxims has TACIT knowledgecompetent // mental model, plan routes, solves unknown problemsadvanced beginner // breaks from rules, gets stuck, can get answers, can’t filternovice // rule-centric
  33. super awesome liabilitywhere are you aiming? (competent is good)
  34. comparisons are dangerous
  35. who do you want to be? (today)
  36. how do you get better?
  37. 10,000
  38. 10,000 expe rt8,000 s ho w s p ot entia l 4,000 also- ran
  39. 10,000 = 10 years * 3 hours
  40. 10,000 hours of what?
  41. be mindful that you want to improve
  42. determine what’s important to you? work-required skills skills for your personal pleasure
  43. ?know where you are now
  44. ?know where you want to be
  45. work out how you’ll get there
  46. people & wrap up intro(set the scene) stuff (what have we learnt?) (exploring themes) you are now here
  47. ALL★ U? CASTSteve Love Chris OldwoodFrances Buontempo Anthony WilliamsDidier Verna Matt TurnerPhil Nash Anna-Jayne MetcalfeSeb Rose Greg Law
  48. AS YOU LISTEN... U? does this apply to me which is most appropriate to a novice?which is most appropriate to a competent?
  49. matt turner become a manager! @mt_inside
  50. steve love automation @IAmSteveLove
  51. didier vernathe music of programming @didierverna
  52. frances “dr love” buontempo good feedback @fbuontempo
  53. phil nashthe art of balancing forces @phil_nash
  54. seb rosedeveloping using examples deliberate practice talking to your testers @sebrose
  55. greg lawrealism // the motorbike rider <strangely behind the times>
  56. chris oldwood the social programmer @chrisoldwood
  57. anthony williams do things mindfully @a_williams
  58. anna-jayne metcalfe if it ain’t broken do fix it @annajayne
  59. U anyone else?things and stuff and stuff and things @audience//participation
  60. QA ★★★ & ★★★Pete Goodliffe @petegoodliffe pete@goodliffe.net
  61. @petegoodliffepete@goodliffe.netgoodliffe.blogspot.comwww.goodliffe.net
  62. BUMPH DULL, but important ★THIS DOCUMENT WAS CREATED BY PETE GOODLIFFE IT IS COPYRIGHT // © 2013 PETE GOODLIFFE>> ALL RIGHTS RESERVED>> ALL THOUGHTS ARE OWNED>> IMAGE CREDITS FOLLOWTHANK YOU FOR READING // I HOPE IT WAS USEFUL Version 1.0 2013-03-05
  63. IMAGE CREDITS ★ENGAGED http://stockarch.com/images/abstract/concept/engaged-toilet-2776ANNOYED http://www.sxc.hu/photo/1327383CAR http://www.sxc.hu/photo/1351165EXIT http://www.sxc.hu/photo/9237TEETH http://www.morguefile.com/archive/display/46415LABCOAT http://www.flickr.com/photos/cannongod/3749758602/sizes/z/in/photostream/PEN http://www.sxc.hu/photo/1380083BUS http://www.sxc.hu/photo/1363811DILBERT http://www.dilbert.com/strips/comic/2013-03-21/ (used without permission)GUAGE http://www.sxc.hu/photo/1382510TWIST http://www.sxc.hu/photo/1026751SCIENTIST http://commons.wikimedia.org/wiki/File:Scientist.jpgHIPSTER http://hidari-pnk.deviantart.com/art/HIPSTER-347873661POINTY-HAIRED BOSS http://en.wikipedia.org/wiki/File:Pointy-Haired_Boss.jpgTHE FONZ http://thegoodgreatsby.com/2011/04/19/happy-birthday-apollo-fonzarelli/WINE http://www.sxc.hu/photo/1337577CHEESE http://www.sxc.hu/photo/750248EWE http://www.sxc.hu/photo/1174028
  64. the dreyfus model ★ expert proficient competent advanced beginner novice
  65. novicehave no k nowledge (yet) want results (fast) hav e no experience need rules can ’t judge rules
  66. a dvanced beginner s ome experience some learngieng explicit knowled can break free fro m rules a little will g et quickly stuck know where t o get answers c ant focus out ir relevant details
  67. competent menta l model made associa tions formed und erstand relative importance of aspects can approach unkno wn problems thi go s is od pla a ethodical routes into problems to be ceplans m
  68. proficient be yond competency understand big picturefrustrated by n ovice simplifications can corr ect previous errors & re flect on experiences maxims focus on important issues tacit knowledge
  69. expert the pinnacleth ere are very few have authority interlink skills can teach others have intuition natura lly see an answer

×