Software Craftsmanship<br />Meeting #4<br />http://www.flickr.com/photos/renfield/17375998/in/set-388814/<br />
Software Craftsmanship Group<br /><ul><li>Software Craftsmanship in Israel
http://www.linkedin.com/groups?gid=2578449</li></li></ul><li>Follow Here:<br /><ul><li>http://www.irefactor.net
http://twitter.com/urilavi</li></ul>#SCIL<br />
Agenda<br />Short Lectures<br />Mentorship/Apprenticeship<br />Structure 101<br />Effective Code Review<br />Unit Testing ...
Mentorship / Apprenticeship<br />Software Craftsmanship as a medieval Craftsmanship evolves Apprenticeship<br />For Effect...
Why Mentorship / Apprenticeship?<br />Area of expertise<br />Architecture & Design<br />Code Reviews & Code Readings<br />...
Mentorship / Apprenticeship Program<br />At least Four(4) months of commitment<br />By a Mentor<br />By a Mentee<br />At l...
How Mentorship / Apprenticeship?<br />Mentors:<br />List of Mentors<br />Community Based<br />Mentors & Mentees<br />Feedb...
What’s there for me?<br />Community Benefit<br />Personal Benefit<br />Opens Doors<br />What goes around comes around<br /...
Legacy Code + Unit Tests<br />Slideshare.net<br />Working Effectively with Legacy Code<br />http://www.slideshare.net/nash...
Hands On<br />Coding Dojo<br />http://www.flickr.com/photos/renfield/351556388/in/photostream/<br />
Bowling Kata<br />
Scoring Bowling.<br />The game consists of 10 frames as shown above.  In each frame the player has<br />two opportunities ...
The Requirements.<br />Write a class named “Game” that has two methods<br />roll(pins : int) is called each time the playe...
Upcoming SlideShare
Loading in …5
×

Software craftsmanship - 4

893
-1

Published on

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
893
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • Affects career:Choosing&gt;2 year “rule” – Stay longer in a company, but learn in a broader aspect
  • Software craftsmanship - 4

    1. 1. Software Craftsmanship<br />Meeting #4<br />http://www.flickr.com/photos/renfield/17375998/in/set-388814/<br />
    2. 2. Software Craftsmanship Group<br /><ul><li>Software Craftsmanship in Israel
    3. 3. http://www.linkedin.com/groups?gid=2578449</li></li></ul><li>Follow Here:<br /><ul><li>http://www.irefactor.net
    4. 4. http://twitter.com/urilavi</li></ul>#SCIL<br />
    5. 5. Agenda<br />Short Lectures<br />Mentorship/Apprenticeship<br />Structure 101<br />Effective Code Review<br />Unit Testing Legacy Code<br />Hands On<br />Coding Dojo<br />
    6. 6. Mentorship / Apprenticeship<br />Software Craftsmanship as a medieval Craftsmanship evolves Apprenticeship<br />For EffectiveApprenticeship a strong Mentor is required<br />
    7. 7. Why Mentorship / Apprenticeship?<br />Area of expertise<br />Architecture & Design<br />Code Reviews & Code Readings<br />Exchange of Information<br />Management Dilemmas<br />
    8. 8. Mentorship / Apprenticeship Program<br />At least Four(4) months of commitment<br />By a Mentor<br />By a Mentee<br />At least Two(2) hours offrontal meeting during a week<br />2*4*4 = 32H<br />
    9. 9. How Mentorship / Apprenticeship?<br />Mentors:<br />List of Mentors<br />Community Based<br />Mentors & Mentees<br />Feedback to Community<br />
    10. 10. What’s there for me?<br />Community Benefit<br />Personal Benefit<br />Opens Doors<br />What goes around comes around<br />Affects Careers<br />Creates (Business) Opportunities<br />Deeping the knowledge<br />
    11. 11. Legacy Code + Unit Tests<br />Slideshare.net<br />Working Effectively with Legacy Code<br />http://www.slideshare.net/nashjain/working-effectively-with-legacy-code-presentation<br />
    12. 12. Hands On<br />Coding Dojo<br />http://www.flickr.com/photos/renfield/351556388/in/photostream/<br />
    13. 13. Bowling Kata<br />
    14. 14. Scoring Bowling.<br />The game consists of 10 frames as shown above. In each frame the player has<br />two opportunities to knock down 10 pins. The score for the frame is the total<br />number of pins knocked down, plus bonuses for strikes and spares.<br />A spare is when the player knocks down all 10 pins in two tries. The bonus for<br />that frame is the number of pins knocked down by the next roll. So in frame 3<br />above, the score is 10 (the total number knocked down) plus a bonus of 5 (the<br />number of pins knocked down on the next roll.)<br />A strike is when the player knocks down all 10 pins on his first try. The bonus<br />for that frame is the value of the next two balls rolled.<br />In the tenth frame a player who rolls a spare or strike is allowed to roll the extra<br />balls to complete the frame. However no more than three balls can be rolled in<br />tenth frame.<br />
    15. 15. The Requirements.<br />Write a class named “Game” that has two methods<br />roll(pins : int) is called each time the player rolls a ball. The argument is the number of pins knocked down.<br />score() : int is called only at the very end of the game. It returns the total score for that game.<br />
    16. 16. 4th Meeting of the Software Craftsmanship Group<br />http://www.flickr.com/photos/psd/2086641/<br />

    ×