Best Practices of a Software Craftsman
description
Transcript of Best Practices of a Software Craftsman
![Page 1: Best Practices of a Software Craftsman](https://reader035.fdocuments.net/reader035/viewer/2022062520/56815f18550346895dcde41e/html5/thumbnails/1.jpg)
Best Practices of a Software Craftsman
The skills it took years to learn to needDevlin Liles
Improving Enterprises
![Page 2: Best Practices of a Software Craftsman](https://reader035.fdocuments.net/reader035/viewer/2022062520/56815f18550346895dcde41e/html5/thumbnails/2.jpg)
Software Craftsman
• What does it mean?• What do they do?• How is that different?
![Page 3: Best Practices of a Software Craftsman](https://reader035.fdocuments.net/reader035/viewer/2022062520/56815f18550346895dcde41e/html5/thumbnails/3.jpg)
![Page 4: Best Practices of a Software Craftsman](https://reader035.fdocuments.net/reader035/viewer/2022062520/56815f18550346895dcde41e/html5/thumbnails/4.jpg)
Be Professional and Unflinching
•Have a minimum level of quality that is acceptable•Be Prepared to say “No” to people that can fire you•Friends don’t let friends code ….
![Page 5: Best Practices of a Software Craftsman](https://reader035.fdocuments.net/reader035/viewer/2022062520/56815f18550346895dcde41e/html5/thumbnails/5.jpg)
Image at xkcd
Drunk
![Page 6: Best Practices of a Software Craftsman](https://reader035.fdocuments.net/reader035/viewer/2022062520/56815f18550346895dcde41e/html5/thumbnails/6.jpg)
Without Tests
![Page 7: Best Practices of a Software Craftsman](https://reader035.fdocuments.net/reader035/viewer/2022062520/56815f18550346895dcde41e/html5/thumbnails/7.jpg)
Without Requirement
s
![Page 8: Best Practices of a Software Craftsman](https://reader035.fdocuments.net/reader035/viewer/2022062520/56815f18550346895dcde41e/html5/thumbnails/8.jpg)
How do we accomplish this?
• Treat your code like a child
![Page 9: Best Practices of a Software Craftsman](https://reader035.fdocuments.net/reader035/viewer/2022062520/56815f18550346895dcde41e/html5/thumbnails/9.jpg)
How do we accomplish this?
• Be a gamer at heart ( not the weird ones that never leave the house )
![Page 10: Best Practices of a Software Craftsman](https://reader035.fdocuments.net/reader035/viewer/2022062520/56815f18550346895dcde41e/html5/thumbnails/10.jpg)
Deploy, Deploy, Deploy
• Deploy Early, Deploy Often, Then Deploy some more• When you are done with that, use Robots to Deploy for you
while you sleep!• It is the only way to avoid….
![Page 11: Best Practices of a Software Craftsman](https://reader035.fdocuments.net/reader035/viewer/2022062520/56815f18550346895dcde41e/html5/thumbnails/11.jpg)
![Page 12: Best Practices of a Software Craftsman](https://reader035.fdocuments.net/reader035/viewer/2022062520/56815f18550346895dcde41e/html5/thumbnails/12.jpg)
How do we accomplish this?
• Do less work
![Page 13: Best Practices of a Software Craftsman](https://reader035.fdocuments.net/reader035/viewer/2022062520/56815f18550346895dcde41e/html5/thumbnails/13.jpg)
How do we accomplish this?
• Don’t manage the automated process
![Page 14: Best Practices of a Software Craftsman](https://reader035.fdocuments.net/reader035/viewer/2022062520/56815f18550346895dcde41e/html5/thumbnails/14.jpg)
Keeping up
• Technology• Skills• Changes in the Industry• How do we…
![Page 15: Best Practices of a Software Craftsman](https://reader035.fdocuments.net/reader035/viewer/2022062520/56815f18550346895dcde41e/html5/thumbnails/15.jpg)
Keep Up
![Page 16: Best Practices of a Software Craftsman](https://reader035.fdocuments.net/reader035/viewer/2022062520/56815f18550346895dcde41e/html5/thumbnails/16.jpg)
Find how you learn
• Reading• Listening• Doing• Etc…
![Page 17: Best Practices of a Software Craftsman](https://reader035.fdocuments.net/reader035/viewer/2022062520/56815f18550346895dcde41e/html5/thumbnails/17.jpg)
Take Time
• Schedule it, and don’t change that
![Page 18: Best Practices of a Software Craftsman](https://reader035.fdocuments.net/reader035/viewer/2022062520/56815f18550346895dcde41e/html5/thumbnails/18.jpg)
Tools we have talked about
• Nuget – http://www.nuget.org/ • BuildMaster - http://inedo.com/buildmaster/overview• PluralSight - http://www.pluralsight.com/training • Ncrunch - http://www.ncrunch.net/