SlideShare a Scribd company logo
1 of 13
Software Craftsmanship Meeting #3 http://www.flickr.com/photos/renfield/17375998/in/set-388814/
Software Craftsmanship Group ,[object Object]
http://www.linkedin.com/groups?gid=2578449,[object Object]
Software Craftsmanship Variety of Technologies http://www.flickr.com/photos/tristanf/4426805689/sizes/m/
Software Craftsmanship Software Craftsmanship Manifesto http://manifesto.softwarecraftsmanship.org/ Manifesto: >comprehensive documentation > following a plan > processes  & tools > contract negotiation That is, in pursuit of the items on the left we have found the items on the right to be indispensable
Software Craftsmanship How? Short Iterations Readable Code (OOP Best Practices) Test Driven Development (TDD), Unit Testing & Acceptance Tests Iterative Design (SOLID & OOD Best Practices) Refactoring Automatic Builds / Continuous Integration Automate Every Possible Process IDE & Tools Code Reviews / Pair Programming  Apprenticing  Exercising  Deliberate Practice Learning Techniques Code Katas Productive Partnership Well-crafted Steadily adding value Community of Professionals
What? Craftsmen http://www.flickr.com/photos/34094515@N00/2554591721/
Software Craftsmanship High Level Low Level Architecture Code Smells TDD Design Clean Code CI Data Centers Pair Programming CD Cloud Systems Code Reviews . . . . . . . . .
Software Craftsmanship I Lectures, Talks, Demonstrations II Coding Dojo
Hands On Coding Dojo http://www.flickr.com/photos/renfield/351556388/in/photostream/
IsLychrel() Lychrel Number    A natural number which cannotform palindrome through the iterative process of repeatedly reversing its base 10 digits and adding the resulting numbers 56 isn’t Lychrel after one iteration: 56+65 = 121 57 isn’t Lychrelafter two iterations: 57+75 = 132, 132+231 = 363. 59 is not a Lychrelafter 3 iterations: 59+95 = 154, 154+451 = 605, 605+506 = 1111
IsLychrel() Suspected Lychrel Number 196,  295,  394,  493,  592 . . . 196 reached 300 million digit mark while trying to form a palindrome, but without any success
3id Meeting of the Software Craftsmanship Group http://www.flickr.com/photos/psd/2086641/

More Related Content

Viewers also liked (8)

JavaScript TDD
JavaScript TDDJavaScript TDD
JavaScript TDD
 
Web Performance 101
Web Performance 101Web Performance 101
Web Performance 101
 
Software craftsmanship - 4
Software craftsmanship - 4Software craftsmanship - 4
Software craftsmanship - 4
 
Software Craftsmanship - 2
Software Craftsmanship - 2Software Craftsmanship - 2
Software Craftsmanship - 2
 
Intro to Mahout
Intro to MahoutIntro to Mahout
Intro to Mahout
 
Cloud Aware Architecture
Cloud Aware ArchitectureCloud Aware Architecture
Cloud Aware Architecture
 
API Best Practices
API Best PracticesAPI Best Practices
API Best Practices
 
Effective Code Review
Effective Code ReviewEffective Code Review
Effective Code Review
 

Similar to Software Craftsmanship - 3

Passing The Joel Test In The PHP World
Passing The Joel Test In The PHP WorldPassing The Joel Test In The PHP World
Passing The Joel Test In The PHP World
Lorna Mitchell
 
Code Review
Code ReviewCode Review
Code Review
rantav
 
How To Do Kick-Ass Software Development, by Sven Peters
How To Do Kick-Ass Software Development, by Sven PetersHow To Do Kick-Ass Software Development, by Sven Peters
How To Do Kick-Ass Software Development, by Sven Peters
ZeroTurnaround
 

Similar to Software Craftsmanship - 3 (20)

Peer Code Review An Agile Process
Peer Code Review An Agile ProcessPeer Code Review An Agile Process
Peer Code Review An Agile Process
 
Agile Austin - Peer Code Review An Agile Process
Agile Austin -  Peer Code Review An Agile ProcessAgile Austin -  Peer Code Review An Agile Process
Agile Austin - Peer Code Review An Agile Process
 
Developing an Ember Test Strategy - EmberConf 2019
Developing an Ember Test Strategy - EmberConf 2019Developing an Ember Test Strategy - EmberConf 2019
Developing an Ember Test Strategy - EmberConf 2019
 
Agile Development From A Developers Perspective
Agile Development From A Developers PerspectiveAgile Development From A Developers Perspective
Agile Development From A Developers Perspective
 
Passing The Joel Test In The PHP World
Passing The Joel Test In The PHP WorldPassing The Joel Test In The PHP World
Passing The Joel Test In The PHP World
 
8 Tips To Write A Quality Code
8 Tips To Write A Quality Code8 Tips To Write A Quality Code
8 Tips To Write A Quality Code
 
Androides y Mazmorras. Part I (dungeons & robots)
Androides y Mazmorras. Part I (dungeons & robots)Androides y Mazmorras. Part I (dungeons & robots)
Androides y Mazmorras. Part I (dungeons & robots)
 
Introduction to Django
Introduction to DjangoIntroduction to Django
Introduction to Django
 
Tdd 왜 배우기 어려운가
Tdd 왜 배우기 어려운가Tdd 왜 배우기 어려운가
Tdd 왜 배우기 어려운가
 
Agile contract for working software
Agile contract for working softwareAgile contract for working software
Agile contract for working software
 
How Spotify reaches the 80%+ of satisfaction of the techies making developers...
How Spotify reaches the 80%+ of satisfaction of the techies making developers...How Spotify reaches the 80%+ of satisfaction of the techies making developers...
How Spotify reaches the 80%+ of satisfaction of the techies making developers...
 
MobSecCon 2015 - Dynamic Analysis of Android Apps
MobSecCon 2015 - Dynamic Analysis of Android AppsMobSecCon 2015 - Dynamic Analysis of Android Apps
MobSecCon 2015 - Dynamic Analysis of Android Apps
 
Code Review
Code ReviewCode Review
Code Review
 
One Engine Two Tools
One Engine Two ToolsOne Engine Two Tools
One Engine Two Tools
 
Clean Software Design - DevNot Summit Istanbul 2017
Clean Software Design - DevNot Summit Istanbul 2017Clean Software Design - DevNot Summit Istanbul 2017
Clean Software Design - DevNot Summit Istanbul 2017
 
Applied Data Science: Building a Beer Recommender | Data Science MD - Oct 2014
Applied Data Science: Building a Beer Recommender | Data Science MD - Oct 2014Applied Data Science: Building a Beer Recommender | Data Science MD - Oct 2014
Applied Data Science: Building a Beer Recommender | Data Science MD - Oct 2014
 
SCA in an Agile World | June 2010
SCA in an Agile World | June 2010SCA in an Agile World | June 2010
SCA in an Agile World | June 2010
 
How To Do Kick-Ass Software Development, by Sven Peters
How To Do Kick-Ass Software Development, by Sven PetersHow To Do Kick-Ass Software Development, by Sven Peters
How To Do Kick-Ass Software Development, by Sven Peters
 
DF Global Gathering PuneWIT
DF Global Gathering PuneWITDF Global Gathering PuneWIT
DF Global Gathering PuneWIT
 
Web Development in Django
Web Development in DjangoWeb Development in Django
Web Development in Django
 

Recently uploaded

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 

Recently uploaded (20)

ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 

Software Craftsmanship - 3

  • 1. Software Craftsmanship Meeting #3 http://www.flickr.com/photos/renfield/17375998/in/set-388814/
  • 2.
  • 3.
  • 4. Software Craftsmanship Variety of Technologies http://www.flickr.com/photos/tristanf/4426805689/sizes/m/
  • 5. Software Craftsmanship Software Craftsmanship Manifesto http://manifesto.softwarecraftsmanship.org/ Manifesto: >comprehensive documentation > following a plan > processes & tools > contract negotiation That is, in pursuit of the items on the left we have found the items on the right to be indispensable
  • 6. Software Craftsmanship How? Short Iterations Readable Code (OOP Best Practices) Test Driven Development (TDD), Unit Testing & Acceptance Tests Iterative Design (SOLID & OOD Best Practices) Refactoring Automatic Builds / Continuous Integration Automate Every Possible Process IDE & Tools Code Reviews / Pair Programming Apprenticing Exercising Deliberate Practice Learning Techniques Code Katas Productive Partnership Well-crafted Steadily adding value Community of Professionals
  • 8. Software Craftsmanship High Level Low Level Architecture Code Smells TDD Design Clean Code CI Data Centers Pair Programming CD Cloud Systems Code Reviews . . . . . . . . .
  • 9. Software Craftsmanship I Lectures, Talks, Demonstrations II Coding Dojo
  • 10. Hands On Coding Dojo http://www.flickr.com/photos/renfield/351556388/in/photostream/
  • 11. IsLychrel() Lychrel Number A natural number which cannotform palindrome through the iterative process of repeatedly reversing its base 10 digits and adding the resulting numbers 56 isn’t Lychrel after one iteration: 56+65 = 121 57 isn’t Lychrelafter two iterations: 57+75 = 132, 132+231 = 363. 59 is not a Lychrelafter 3 iterations: 59+95 = 154, 154+451 = 605, 605+506 = 1111
  • 12. IsLychrel() Suspected Lychrel Number 196, 295, 394, 493, 592 . . . 196 reached 300 million digit mark while trying to form a palindrome, but without any success
  • 13. 3id Meeting of the Software Craftsmanship Group http://www.flickr.com/photos/psd/2086641/