Your SlideShare is downloading. ×
SW Craftsmanship in Sioux Embedded Systems
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

SW Craftsmanship in Sioux Embedded Systems

814
views

Published on

Published in: Technology, Business

0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

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

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • Intro:Craftsmanship is eenbenadering van SW ontwikkelingdatnadruklegt op programeerkwaliteiten van de ontwikkelaars. Het is eenantwoord op de benaderingwaarbijontwikkelaarszichzienalsingenieurs, waarbij de nadrukligt op goedgedefinieerdestatistischanalyse en processen en daaraangekoppeldelicenties en certificering. De agile manifesto gaathier al tegenin door individuen en interactiebovenprocessen en tools testellen. SW craftsmanship breidtditverderuit door tekijkennaar het Middeleeuwse ‘apprenticeship’ model van leerling-gezel-meester.De bewegingheeftzijnwortels in boeken (pragmatic programmer, SW craftsmanship, clean coder).
  • Vraagpubliekomdingentenoemen.Schrijf die op. 5 minutenIntroductie tot de volgendeoefening
  • 10 minuten
  • Loop rondomuitlegtegevenbij de ‘skills’Nietalleenskills: ook tools of activitiesStop oefeningom 15:45
  • Time 15:45In Februari 2009werd de eersteinternationale SW craftsmanship conferensie in Londengehouden.Eenmaand later, nawatdiscussies, werdereensamenvattinggemaakt, en werdditgepubliceerdals manifesto.Origineelgetekend dooro.a. Robert Martin (clean code), Dave Hoover (patterns), Ron Jeffries (XP)Ikheb ‘m ookgetekend.Read out the first part: as aspiring SW craftsmen4 values …. Zoals agile manifesto.
  • SW craftsmanship manifesto is eenuitbreiding van de Agile manifesto.
  • McBreen, Pete (2001). Software Craftsmanship: The New Imperative. Addison Wesley. ISBN 0201733862. Crisis -> over budget, over time, low qualityHijsteltvoordat SW ontwikkelaarszichzelfniethoeventezienalsingenieurs, maardateenanderemetafoorbeter op z’nplaatszouzijn.
  • Hijkijksnaar de gildesuit de Middeleeuwen.Picture: Houtbewerking.Nietalleen KENNIS, maarook VAARDIGHEDEN en zelfs SCHOONHEID/CREATIVITEITMeester – gezel - leerling
  • Doel …Verbeteringalsindividu …Leren door doen …Het gaatomvaardighedenopdoen en verbeteren, en nietmeeromprocesverbetering.
  • Applicatiesopleveren, en daarmeeeengoedereputatieopbouwen.Nietalleen managing, maar is betrokkenbijalleaspecten van programmeren.
  • Gezel is de basis waaropkleineeffectieve teams zijngebouwd, en die geleidworden door eenmeester.Picture: verhuizennaareenanderemeester met eenrugzakvolkennis en vaardighedenSommigegezellenwordennaverloop van tijdmeester, maarveleblijvengezelvoor de rest van huncarriere.
  • Tijd 15.55Situated learning: Oefenvaardigheden in eenrealistisch project onderbegeleiding van eenervarengezel die veel feedback geeft.Review: leerlingleest code van eenmeester en leertzo indirect.Belangrijksteeigenschap van eenleerling is de houdingomvaardighedenteleren en verbeteren.
  • TrotsOnderteken je werkZoalsookarchitecteneentegel in eengebouwplaatsenZoalsgebruikelijk is in de open source gemeenschap- Zoalsgebruikelijk in Hollywood met de ‘credit list’ aan het eind van elke film.Licensie en certificering is eenillusie, omdat het veronderstelddat het mogelijk is omkwaliteit in eenproduktteinspecteren.Persoonlijk: Behandeliederafzonderlijk met zijn/haarunieketalenten en mogelijkheden.
  • Pay them well: Nietalleen KENNIS (ervaring), maar VAARDIGHEDEN moetenbeterwordenbeloondPay: instead of 10 times 100k, pay 300k + 2x 200k + 3x 100k
  • Coach – coacheeplannenzelf de coach contact uren.
  • SOLID: OOD principles:SRP: single responsibility principle: object should only be responsible for one thing(Open/closed, Liskov substitution, interface segregation, dependency inversion)
  • Tijd: 16.05Loop rond en schrijf deverschillen op tussen de 2 groepen.Dit is startpunt van de discussie: schrijf 5 skills op de volgende sheet
  • Tijd: 16.15Schrijfhier 5 skills waar de 2 groepen het niet over eenszijn.Vraag de groepenhunkeuze toe telichten en de anderegroepteovertuigenHoud twee minuten per skill aan
  • Tijd 16:25 Wrap upCafetaria: UML, OOD, review, TDD, etcSpreker: KevlinHenney
  • Voorwiemeerwilweten, lees de boeken en online links.Als je geinteresseerd bent meetehelpenom SW craftsmanship binnen Sioux uitterollen, laat het me weten.
  • Transcript

    • 1. Sw Craftsmanship
      - Sioux weekend of code -
      Roy Nitert
      October 2011
    • 2. Agenda
      © Sioux Embedded Systems 2010 | Confidential |
      2
      What is SW craftsmanship ?
      Exercise 1
      Background craftsmanship based on Pete McBreens book
      SW Craftsmanship within Sioux
      Exercise 2
      Wrap-up
    • 3. What is SW Craftsmanship ?
      © Sioux Embedded Systems 2010 | Confidential |
      3
      What do you think that it is?
      What activities/skills/attitude belong to it?
      Lets make a list
    • 4. Exercise
      © Sioux Embedded Systems 2010 | Confidential |
      4
      Determine what belongs to SW craftsmanship and what not
      In two groups
      Use flipover and notes with ‘skills’
      You can make new notes
      10 minutes to cover all notes
      Keep discussions to a minimum
    • 5. Skills
      © Sioux Embedded Systems 2010 | Confidential |
      5
      active listening
      architecture
      ASD
      BDD/ATDD
      build automation
      C#
      C++
      clean code
      code review
      coding dojo/kata
      coding standard
      communiceren
      configuration management
      conflict management
      continuous integration
      design patterns
      document review
      documenting
      don’t repeat yourself
      eclipse
      estimating
      java
      kanban
      leadership
      mentoring
      model driven development
      OOA/D
      pair programming
      peer recognition
      presenteren
      projectmatigwerken
      reading
      refactoring
      requirements engineering
      retrospection
      RUP
      scrum
      SQS
      SVN
      TDD
      team building
      test automation
      testing
      UML
      unit testing
      Visual Studio
      V-model
    • 6. SW Craftsmanship manifesto
      © Sioux Embedded Systems 2010 | Confidential |
      6
    • 7. Agile Manifesto
      SW craftsmanship manifesto
      Two Manifestos
      © Sioux Embedded Systems 2010 | Confidential |
      7
      Individuals and interactions
      Working software
      Customer collaboration
      Responding to change
      Processes and tools
      Comprehensive documentation
      Contract negotiation
      Following a plan
      A community of professionals
      Well-crafted software
      Productive partnerships
      Steadily adding value
    • 8. Software Craftsmanship book The New Imperative (1)
      The software business resides in a constant crisis
      Engineering only considers development as science, but does not address the social aspects
      A different metaphor would be more suitable
      © Sioux Embedded Systems 2010 | Confidential |
      8
    • 9. Software Craftsmanship book The New Imperative (2)
      Traditional craft: Technical knowledge, practiced skill and aesthetics
      © Sioux Embedded Systems 2010 | Confidential |
      9
      • Roles: Master craftsman, Journeyman, Apprentice
    • Software Craftsmanship book The New Imperative (3)
      © Sioux Embedded Systems 2010 | Confidential |
      10
      Objective
      Obtain mastery over science and engineering so that we can continually refine our craft
      Raising the bar
      Continually work to improve your skills
      Perpetual learning
      • encourage participation in conferences
      • 10. create a learning environment
    • Software Craftsmanship book The New Imperative (4)
      © Sioux Embedded Systems 2010 | Confidential |
      11
      Master craftsman
      • Leads a team of journeymen and apprentices
      • 11. Infects the team with enthusiasm and passion for the craft
      • 12. Has delivered many successful, robust, high-quality applications
      • 13. Is recognized by users, customers and developers
      • 14. Is responsible for passing on the craft
      • 15. Chooses his own team
    • Software Craftsmanship book The New Imperative (5)
      Journeyman
      • Has worked for several years with a master
      • 16. Small teams
      • 17. Coach apprentices
      • 18. Learn from masters
      • 19. Spread knowledge between masters
      • 20. Focused on delivering applications
      • 21. Does not work without master or other journeyman
      © Sioux Embedded Systems 2010 | Confidential |
      12
    • 22. Software Craftsmanship book The New Imperative (6)
      © Sioux Embedded Systems 2010 | Confidential |
      13
      Apprentice
      • Contribute to simple tasks
      • 23. Learn from journeyman
      • 24. Situated learning
      • 25. Review work of the master
      • 26. Progression through demonstrated progress
    • Software Craftsmanship book The New Imperative (7)
      © Sioux Embedded Systems 2010 | Confidential |
      14
      Put back pride into SW development
      No licensing/certification
      • Craftsmanship is personal
      • 30. Peer recognition
      • 31. Peer recommendation
    • Software Craftsmanship book The New Imperative (8)
      © Sioux Embedded Systems 2010 | Confidential |
      15
      Management style
      • No horde of average programmers
      • 32. Small team of good developers
      • 33. No detailed instructions or command and control
      • 34. Facilitating and coordinating
      • 35. Knowledge workers
      • 36. Pay them well
      (3 times as much as average developers)
    • 37. More information
      © Sioux Embedded Systems 2010 | Confidential |
      16
      Books:
      • McBreen, Pete (2001). Software Craftsmanship: The New Imperative. Addison Wesley. ISBN 0201733862.
      • 38. Martin, Robert C. (2008). Clean Code: A Handbook of Agile Software Craftsmanship. Prentice Hall. ISBN 0132350882.
      • 39. Martin, Robert C. (2011). The Clean Coder: A Code of Conduct for Professional Programmers. Prentice Hall. ISBN 0137081073.
      • 40. Hoover, Dave; Oshineye, Adewale. (2009) Apprenticeship Patterns: Guidance for the Aspiring Software Craftsman. O'Reilly. ISBN 0596518382.
      • 41. Hunt, Andrew; Thomas, Dave (1999). The Pragmatic Programmer: From Journeyman to Master. Addison Wesley. ISBN 020161622X
      Manifesto: http://manifesto.softwarecraftsmanship.org/
      Wiki: http://en.wikipedia.org/wiki/Software_Craftsmanship
    • 42. Think tank
      © Sioux Embedded Systems 2010 | Confidential |
      17
      SW Craftsmanship Think tank
      Members: Duncan Stiphout, Roy Nitert, Tjakko Kleinhuis
      Goal: Improve SW engineering skills by creating a continuous learning environment
      Activities:
      • Define engineering skills
      • 43. Follow up on DC survey (Roy)
      • 44. Mentoring (Duncan)
      • 45. Lunch sessions (Tjakko)
    • Mentoring
      © Sioux Embedded Systems 2010 | Confidential |
      18
      Mentoring is a first step towards master-journeyman-apprentice model
      Facilitate pairs of coach and coachee
      List of potential coaches available
      Coachees are approached during PM talks
      You can also subscribe yourself
      Indication: 2 to 4 hours a month
      Paid by personal training budget
    • 46. Lunch sessions
      © Sioux Embedded Systems 2010 | Confidential |
      19
      Monthly session by different speaker
      Case driven / with code
      Possible subjects:
      • Explain one design pattern in depth
      • 47. Explain ‘don’t repeat yourself’
      • 48. Explain one of the SOLID principles
      • 49. Refactoring
      • 50. TDD
      • 51. BDD
      • 52. Code reviews
    • Exercise
      © Sioux Embedded Systems 2010 | Confidential |
      20
      Againdeterminewhatbelongs to SW craftsmanship and whatnot
      Add more skills
      5 minutes
    • 53. Discussion
      © Sioux Embedded Systems 2010 | Confidential |
      21
      Do these skillsbelong to SW craftsmanship?
      Skill1
      Skill2

    • 54. Coming up
      © Sioux Embedded Systems 2010 | Confidential |
      22
      Cursus cafetaria
      Hot-or-notCraftsmanship
      Premium courseCraftsmanship
      Lunch sessions
      Mentoring
      KevlinHenney
    • 55. SW Craftsmanship
      © Sioux Embedded Systems 2010 | Confidential |
      23
      Verbeter je skills,
      begin bijjezelf
    • 56. 24
      © Sioux Embedded Systems 2010 | Confidential |
      roy.nitert@sioux.eu
      +31 40 2677100
      roy.nitert

    ×