Agile2011

1,197 views

Published on

Published in: Technology, Education
  • Be the first to comment

  • Be the first to like this

Agile2011

  1. 1. INCREASING LEARNING IN AN AGILE ENVIRONMENT: LESSONS LEARNED IN AN AGILE TEAM Mauricio Aniche (@mauricioaniche) Guilherme Silveira (@guilhermecaelum)
  2. 2. MAURICIO ANICHE @mauricioaniche
  3. 3. GUILHERME SILVEIRA @guilhermecaelum
  4. 4. GUILHERME SILVEIRA @guilhermecaelum
  5. 5. GUILHERME SILVEIRA @guilhermecaelum
  6. 6. GUILHERME SILVEIRA @guilhermecaelum
  7. 7. BRAZIL!
  8. 8. BRAZIL!
  9. 9. BRAZIL!
  10. 10. BRAZIL!
  11. 11. CAELUM
  12. 12. TRAINING
  13. 13. OPEN SOURCE
  14. 14. OPEN SOURCE
  15. 15. OPEN SOURCE
  16. 16. OPEN SOURCE
  17. 17. OPEN SOURCE
  18. 18. CONFERENCE ORGANIZERS
  19. 19. CONFERENCE ORGANIZERS
  20. 20. CONFERENCE ORGANIZERS
  21. 21. CONFERENCE ORGANIZERS
  22. 22. Caelum’s goal is to improve the market’s knowledge.
  23. 23. DAILY WORK
  24. 24. it’s all about innovating in order to teach
  25. 25. EXPERIENCE
  26. 26. EXPERIENCE LEARN
  27. 27. EXPERIENCE LEARNADAPT EVOLVE
  28. 28. EXPERIENCE LEARNADAPT EVOLVE
  29. 29. EXPERIENCE LEARNADAPT EVOLVE AGILE
  30. 30. TEACHING LEARNADAPT EVOLVE AGILE
  31. 31. LEARNINGALLOWS ADAPTATION AND EVOLUTION, THE BASE FOR AGILE
  32. 32. how do we teach our coworkers?
  33. 33. LEARNING IS PART OF OUR JOBS
  34. 34. STUDYING AS A TASK
  35. 35. STUDYING AS A TASKwhen?
  36. 36. STUDYING AS A TASKwhen? what?
  37. 37. STUDYING AS A TASKwhen? what? how?
  38. 38. STUDYING AS A TASKwhen? what? how?“the person is sometimes guided and sometimes free to decide what to study”
  39. 39. IS IT POSSIBLE TO LEARN...
  40. 40. IS IT POSSIBLE TO LEARN...
  41. 41. IS IT POSSIBLE TO LEARN...
  42. 42. IS IT POSSIBLE TO LEARN... E ? T I M H E L T AL
  43. 43. HOW TO IMPROVELEARNING?
  44. 44. OPEN SPACES
  45. 45. You have no fixed positionThere are no partitions/walls
  46. 46. easy to discuss topics
  47. 47. easy to discuss topics
  48. 48. easy to discuss topics
  49. 49. DISCUSSIONS BECOMEBLOG POSTS
  50. 50. The discussion which is interesting to the team, will probably be interesting to others.
  51. 51. EVERYONE TALKS
  52. 52. EVERYONE TALKS
  53. 53. too much noise!
  54. 54. too much noise!
  55. 55. SILENTTHURSDAY
  56. 56. Leave the space open for people to share knowledge.
  57. 57. programming
  58. 58. pairprogramming
  59. 59. EXPERIENCED WITH NON-EXPERIENCED
  60. 60. EXPERIENCED WITH NON-EXPERIENCED
  61. 61. EXPERIENCED WITHEXPERIENCED
  62. 62. NON-EXPERIENCED WITH NON-EXPERIENCED
  63. 63. There are no fixed rules.
  64. 64. There are no fixed rules.No pairing can also be good.
  65. 65. some variations did not work
  66. 66. but some closedpairing groups are formed...
  67. 67. MATRIX
  68. 68. MATRIX
  69. 69. PAIRPROGRAMMING MATRIX
  70. 70. PAIRING IN DIFFERENT PROJECTS
  71. 71. anytime, anywhere
  72. 72. anytime, anywhereat your own discretion
  73. 73. anytime, anywhere at your own discretionwithout hindering your current project
  74. 74. Pair programming is not unilateral knowledge transfer. It’s mutual knowledge sharing.
  75. 75. Sunday Morning
  76. 76.
  77. 77. Programming Sunday
  78. 78. get developers together
  79. 79. get developers together discuss problems
  80. 80. get developers together discuss problems implement them
  81. 81. frequently?
  82. 82. some things
  83. 83. NOT VERY FREQUENT
  84. 84. ALSO FOCUSED ON PRODUCTIVITY
  85. 85. Get together topractice open source.
  86. 86. dojosessions
  87. 87. Self organized.
  88. 88. Not everything lasts forever.
  89. 89. MANY DROPOUTS
  90. 90. SOMETIMES CONSIDERED BORING
  91. 91. KATA FORMAT
  92. 92. Learn many different things.
  93. 93. BROWN BAGS
  94. 94. A R L U S P Y O A P D T A S O WM O N
  95. 95. Present any topic in any form.
  96. 96. Present any topic in any form.didactics
  97. 97. Present any topic in any form.didactics live refactoring
  98. 98. Present any topic in any form. didactics live refactoringempirical software engineering
  99. 99. Present any topic in any form. didactics live refactoring retrospectiveempirical software methods engineering
  100. 100. Present any topic in any form. lambda calculus didactics live refactoring retrospectiveempirical software methods engineering
  101. 101. Present any topic in any form. lambda calculus didactics live refactoring py calculus retrospectiveempirical software methods engineering
  102. 102. Present any topic in any form. lambda calculus didactics live refactoring py calculus retrospectiveempirical software methods engineering javascript
  103. 103. Present any topic in any form. flex lambda calculus didactics live refactoring py calculus retrospectiveempirical software methods engineering javascript
  104. 104. Present any topic in any form. flex lambda calculus didactics live refactoring py calculus scala retrospectiveempirical software methods engineering javascript
  105. 105. Present any topic in any form. flex lambda calculus didactics intense scala live refactoring py calculus scala retrospectiveempirical software methods engineering javascript
  106. 106. Present any topic in any form. flex lambda calculus didactics intense scala live refactoring py calculus scala retrospectiveempirical software methods engineering javascript testing methods
  107. 107. Present any topic in any form. flex lambda calculus didactics intense scala code shows live refactoring py calculus scala retrospectiveempirical software methods engineering javascript testing methods
  108. 108. VERY MOTIVATEDDURING LUNCH
  109. 109. EVERYONE PARTICIPATES
  110. 110. RETROSPECTIVE
  111. 111. Everyone has something to teach.
  112. 112. INTERNAL DISCUSSION LISTS
  113. 113. PEOPLE FROMOUTSIDE CAN PARTICIPATE
  114. 114. FRIENDS FROMOUTSIDE CAN PARTICIPATE
  115. 115. EVEN ACADEMIC PAPERS ARE MENTIONED
  116. 116. DECREASED DUE TO OUR POPULAR FORUMS posts
  117. 117. Asynchronous discussions allow research prior to response.
  118. 118. N T M E O P E L E V S D O SF
  119. 119. if it is bad code, we refactor it.
  120. 120. if it is good code...
  121. 121. if it is good code...we read and learn!
  122. 122. Our first contact with TDD and XPwas through open source in 2005.
  123. 123. Sharing code means sharing knowledge.
  124. 124. MANY APPEARIN INTERNAL DISCUSSIONS
  125. 125. OUR BLOG IS POPULAR (last 6 months)
  126. 126. ENGLISH BLOG
  127. 127. ENGLISH BLOGSTILL NOT THAT MUCH
  128. 128. Blogging exposes ideas and makesthe blogger reflect upon his subject.
  129. 129. CONFERENCES
  130. 130. CONFERENCES AGILE BRAZIL QCON SCALA DAYS DEVOXX WWW AGILE XP JAVAONE
  131. 131. in 2010 we sponsored all brazilian software dev events(that we were given the opportunity).
  132. 132. TALK TO PEOPLE++
  133. 133. share knowledge with new people, friends and old students
  134. 134. LIFEANDWORK
  135. 135. build relationships during and after work hours
  136. 136. INTERNALTRAINING
  137. 137. INTERNAL ONLINETRAINING
  138. 138. INTERNAL ONLINETRAINING
  139. 139. INTERNAL+EXTERNAL ONLINE TRAINING (SIGN THE LIST TO TRY IT)
  140. 140. ALL THESE PRACTICES MAY NOT WORK FOR YOU
  141. 141. BUT YOU SHOULD GIVE THEM A GO
  142. 142. BUT YOU SHOULD GIVE THEM A GOpositive emotions ☺☺☺
  143. 143. summing up
  144. 144. how to improvelearning in your company?
  145. 145. Learning is the base for adaptation.
  146. 146. Teaching is not unilateral knowledge transfer.It’s mutual knowledge sharing.
  147. 147. Sharing code means sharing knowledge.
  148. 148. Blogging exposes ideas and makesthe blogger reflect upon his subject.
  149. 149. Everyone has something to teach.
  150. 150. Leave the space open for people to share knowledge.
  151. 151. build relationships during and after work hours
  152. 152. share knowledge with new people, friends and old students
  153. 153. Asynchronous discussions allow research prior to response.
  154. 154. Sharing code means sharing knowledge.
  155. 155. Get together topractice open source.
  156. 156. There are no fixed rules.
  157. 157. offline and online
  158. 158. pick your practices
  159. 159. THANK YOU! www.caelum.com.br www.caelumobjects.comguilherme.silveira@caelum.com.br - @guilhermecaelum mauricio.aniche@caelum.com.br - @mauricioaniche

×