Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Euruko 2009 - Software Craftsmanship

379 views

Published on

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Euruko 2009 - Software Craftsmanship

  1. 1. Software Craftsmanship for better software Phillip Oertel @ EuRuKo 200912.05.2009 (Di)
  2. 2. Overview • Where does this term come from? • How does it help us? • What does it demand?12.05.2009 (Di)
  3. 3. We‘ve compared ourselves to ...12.05.2009 (Di)
  4. 4. artists12.05.2009 (Di)
  5. 5. musicians12.05.2009 (Di)
  6. 6. writers12.05.2009 (Di)
  7. 7. architects12.05.2009 (Di)
  8. 8. engineers12.05.2009 (Di)
  9. 9. We are professional software developers.12.05.2009 (Di)
  10. 10. craftsmen12.05.2009 (Di)
  11. 11. 12.05.2009 (Di)
  12. 12. schedule requirements code quality12.05.2009 (Di)
  13. 13. It‘s our fault.12.05.2009 (Di)
  14. 14. How does Software Craftsmanship fix this?12.05.2009 (Di)
  15. 15. Values12.05.2009 (Di)
  16. 16. Responsibility12.05.2009 (Di)
  17. 17. Practise12.05.2009 (Di)
  18. 18. Discipline12.05.2009 (Di)
  19. 19. Practises12.05.2009 (Di)
  20. 20. Iterative development12.05.2009 (Di)
  21. 21. Automated tests12.05.2009 (Di)
  22. 22. KISS keep it simple, stupid.12.05.2009 (Di)
  23. 23. Close customer collaboration12.05.2009 (Di)
  24. 24. Continuous small improvements12.05.2009 (Di)
  25. 25. 12.05.2009 (Di)
  26. 26. Code for other humans, not machines.12.05.2009 (Di)
  27. 27. Think of code in flux.12.05.2009 (Di)
  28. 28. Refactoring12.05.2009 (Di)
  29. 29. Hard, Basic skills12.05.2009 (Di)
  30. 30. Comments Classes Formatting Unit Tests Meaningful Names Systems Functions Error Handling Objects and Data Structures Concurrency Boundaries12.05.2009 (Di)
  31. 31. Functions12.05.2009 (Di)
  32. 32. Functions • small • prefer exceptions • do one thing • don‘t repeat yourself • one level of abstraction • use descriptive names • function arguments • have no side effects12.05.2009 (Di)
  33. 33. How we learn12.05.2009 (Di)
  34. 34. 12.05.2009 (Di)
  35. 35. learn like craftsmen: apprentice journeyman master12.05.2009 (Di)
  36. 36. we loose masters.12.05.2009 (Di)
  37. 37. values and skills are not enough.12.05.2009 (Di)
  38. 38. 12.05.2009 (Di)
  39. 39. 12.05.2009 (Di)
  40. 40. some books • Clean Code, Robert C. Martin, 2008 • The Pragmatic Programmer, Andy Hunt, Dave Thomas, 1999 • Refactoring, Martin Fowler, 1999 • Software Craftsmanship, Pete McBreen, 200212.05.2009 (Di)
  41. 41. photo credits • Musician: http://www.flickr.com/photos/tommarcello/2250681391/ • Fountain pen: http://www.flickr.com/photos/brightmeadow/281659324/ • Architecture model: http://www.flickr.com/photos/blahflowers/2613241979/ • F1 Engineers: http://www.flickr.com/photos/7480659@N06/2295266851/ • Craftsman: http://www.flickr.com/photos/andreasej/3120849218/ • Doctor: http://www.flickr.com/photos/orcoo/345583754/ • Monkeying around: http://www.flickr.com/photos/practicalowl/661094024/12.05.2009 (Di)

×