Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

Software Craftsmanship

1 791 vues

Publié le

A presentation about Software Craftsmanship. Inspired by 'Uncle Bob' and his books.

Publié dans : Technologie, Business
  • DOWNLOAD FULL BOOKS, INTO AVAILABLE FORMAT ......................................................................................................................... ......................................................................................................................... 1.DOWNLOAD FULL. PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. doc Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. doc Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ......................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Répondre 
    Voulez-vous vraiment ?  Oui  Non
    Votre message apparaîtra ici
  • Want to preview some of our plans? You can get 50 Woodworking Plans and a 440-Page "The Art of Woodworking" Book... Absolutely FREE ♣♣♣ http://tinyurl.com/y3hc8gpw
       Répondre 
    Voulez-vous vraiment ?  Oui  Non
    Votre message apparaîtra ici
  • Get access to 16,000 woodworking plans, Download 50 FREE Plans... ♥♥♥ http://ishbv.com/tedsplans/pdf
       Répondre 
    Voulez-vous vraiment ?  Oui  Non
    Votre message apparaîtra ici
  • There are over 16,000 woodworking plans that comes with step-by-step instructions and detailed photos, Click here to take a look ●●● http://ishbv.com/tedsplans/pdf
       Répondre 
    Voulez-vous vraiment ?  Oui  Non
    Votre message apparaîtra ici

Software Craftsmanship

  1. 1. Professional Software Craftsmanship<br />2011-10-13<br />Andreas Enbohm<br />Twitter: enbohm<br />
  2. 2. The Clean Coder by @unclebobmartin<br />13 oktober 2011<br />Sida 2<br />
  3. 3. 13 oktober 2011<br />Sida 3<br />Craftsmanship<br />”A software craftman is a experiencedprofessionalwho quickly, butwithoutrushing, provides resonable estimates and meetscommitments. A person whichbrings to mind skill, competence and quality. A craftmanknowswhen to say no, buttrieshard to sayyes. [Software] Craftmanship is the mindsetheld by craftsmen.”<br />
  4. 4. Professionalism<br />Professional vs. Nonprofessional<br />It’s all abouttakingresponsibility!<br />First, do no harm!- you must NOT createbugs! - butthatsvirtuallyimpossible<br />All means to createbugfreecode- QA shouldfindnothing- iftheydo, learn from it to prevent it from happendagain<br />13 oktober 2011<br />Sida 4<br />
  5. 5. Professionalism<br />Howdo you know your codeworks?<br />Easy;- test- test again- test it up- test it down- test ALL of it- automated test suites- test upsidedown- test insideout- test left to right- TEST DRIVE IT!<br />13 oktober 2011<br />Sida 5<br />
  6. 6. Professionalism<br />13 oktober 2011<br />Sida 6<br />Boy Scout Rule<br />or <br />MercilessRefactoring<br />
  7. 7. Professionalism<br />Work ethics- 40/20 h week- read blogs, tweets, conferences, try languages…<br />Know your field!- Nassi-Schneidermancharts- Mealy and Moore statemachines- Quicksort withoutlooking it up- Parnastables- Tramp data- Jackson StructuredProgramming<br />13 oktober 2011<br />Sida 7<br />
  8. 8. Professionalism<br />Practice!- Code Katas<br />Mentoring!<br />Know your domain!- no need to be expert- unprofessional to ’just code’<br />13 oktober 2011<br />Sida 8<br />
  9. 9. Saying No<br />”Do; or do not. There is no try”<br />13 oktober 2011<br />Sida 9<br />
  10. 10. Saying No<br />Neversay ”I’ll try” - otherswill interpret as ”Yes”- avoid (unprofessional) pleasantconversation- butwhatwould the world be ifwedidn’t try things?<br />Try == to apply extra effort- ifthere is extra effort, whyhasn’t the team applied it before?- have you/team beenholdingeffort in reserve?- by trying, the previous plans you made are insufficient- whatbehaviorwill you change by ’trying’?<br />Cut the scope! Negotiate – butnever try!<br />13 oktober 2011<br />Sida 10<br />
  11. 11. Handling Pressure<br />13 oktober 2011<br />Sida 11<br />
  12. 12. Handling Pressure<br />Overtimeif, and onlyif, 1) you canpersonallyafford it 2) it is short term 3) you boss has a fallbackplan<br />3) is a deal breaker- if your boss don’thave a backup plan, you should not agree on overtime<br />13 oktober 2011<br />Sida 12<br />
  13. 13. Handling Pressure<br />Stayinclean- dirtycode ALWAYS means slow!- a professional NEVER toleratemesses<br />Trust your disciplines!- followthem at ALL times. Best way to avoidcrisis- practivethemevenharder (more tests, smallermethods..) <br />You won’t go faster without test<br />You won’tgo faster withoutrefactoring<br />You won’tgo faster withoutrunning full regressions test<br />Butit’s tempting for a novice…<br />13 oktober 2011<br />Sida 13<br />
  14. 14. Handling Pressure<br />Commitments- do not accept unrealisticcommitments (never ’try’)- commit ONLY when you are certain<br />Don’tpanic- eat, sleepwell- pair programming / ask for help<br />13 oktober 2011<br />Sida 14<br />
  15. 15. Time Estimates<br />AffinityEstimation<br />Wideband Delphi<br />Flying Fingers<br />Planning Poker<br />PERT- a way to convertestimates to probability distributions suitable for managers<br />13 oktober 2011<br />Sida 15<br />
  16. 16. Time Estimates<br />Program Evaluation and Review Technique- US Navy’s Polaris Submarine project (1957)<br />Three number for each task- Optimistic (wildly)- Normal- Pessimistic (wildly)<br /> µ = (O + 4N + P) / 6, where µ is expected duration (’väntevärde’)<br />σ = (P – O) / 6, whereσ is the standard deviation <br />13 oktober 2011<br />Sida 16<br />
  17. 17. PERT<br />13 oktober 2011<br />Sida 17<br />
  18. 18. Clean Coder<br />Questions?<br />http://slideshare.net/enbohm<br />http://codekata.pragprog.com/<br />13 oktober 2011<br />Sida 18<br />

×