32
Sebastian Marek Continuous Inspection Fight back the 7 deadly sins of a developer!

Continuous Inspection: Fight back the 7 deadly sins of a developer!

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Continuous Inspection: Fight back the 7 deadly sins of a developer!

Sebastian Marek

Continuous InspectionFight back the 7 deadly sins of a developer!

Page 2: Continuous Inspection: Fight back the 7 deadly sins of a developer!

✤ a Pole living in Sheffield

✤ over 12 years in development

✤ Pascal, C++, PHP, perl, python, Java

✤ co-author of 2 PHP Books

✤ big fan of process automation

✤ TDD and CI

✤ occasionally contributes to open-source projects

✤ wants to be a knight@proofek

h"ps://joind.in/7802

Page 3: Continuous Inspection: Fight back the 7 deadly sins of a developer!

LUST

WRATH

PRIDE

GREED

ENVYSLOTH

GLUTTONY

7DEADLYSINS

© beartoons.com

Page 4: Continuous Inspection: Fight back the 7 deadly sins of a developer!

1. Lust

✤ Over-engineering

✤ Design patterns

✤ Abstraction

© beartoons.com

Page 5: Continuous Inspection: Fight back the 7 deadly sins of a developer!

2. Gluttony

✤ Over-engineering

✤ Refactoring

✤ “Spaghetti code”

✤ Feature-rich

✤ Inefficiency© beartoons.com

Page 6: Continuous Inspection: Fight back the 7 deadly sins of a developer!

3. Greed

✤ Competing across teams

✤ (Don’t) Reinvent the wheel

✤ Power struggle

© beartoons.com

Page 7: Continuous Inspection: Fight back the 7 deadly sins of a developer!

5. Wrath

✤ A vehement denial of the truth

✤ Documentation

✤ Coding standards

✤ Unit tests

✤ Commit messages

✤ Rushing to production© beartoons.com

Page 8: Continuous Inspection: Fight back the 7 deadly sins of a developer!

4. Sloth

✤ Input validation

✤ Duplications

✤ Coding standards

✤ Lazy coding

✤ Self-development

✤ Configuration “out-of-the-box”

© beartoons.com

Page 9: Continuous Inspection: Fight back the 7 deadly sins of a developer!

6. Envy

✤ Not using version control

✤ Not needed features

✤ Contributions to open source projects

© beartoons.com

Page 10: Continuous Inspection: Fight back the 7 deadly sins of a developer!

7. Pride

✤ (Don’t) Reinvent the wheel

✤ Unit tests

✤ Acceptance tests

✤ Software metrics

✤ Documentation

© beartoons.com

Page 11: Continuous Inspection: Fight back the 7 deadly sins of a developer!

Technical Debt under control

✤ drill down to source code

✤ coding rules

✤ unit tests

✤ standard metrics

✤ time machine

✤ plugins

Page 12: Continuous Inspection: Fight back the 7 deadly sins of a developer!

Sonar plugins - languages

Page 13: Continuous Inspection: Fight back the 7 deadly sins of a developer!

Sonar plugins - integration

Page 14: Continuous Inspection: Fight back the 7 deadly sins of a developer!

C I

vs

C I

Page 15: Continuous Inspection: Fight back the 7 deadly sins of a developer!

Continuous Integration

vs

C I

Page 16: Continuous Inspection: Fight back the 7 deadly sins of a developer!

Continuous Integration

vs

Continuous Inspection

Page 17: Continuous Inspection: Fight back the 7 deadly sins of a developer!

Running analysis

✤ Sonar runner

✤ Ant

✤ Maven

Page 18: Continuous Inspection: Fight back the 7 deadly sins of a developer!

Dynamic vs static analysis

Page 19: Continuous Inspection: Fight back the 7 deadly sins of a developer!

PHP Plugin

✤ PHPUnit

✤ PHP CodeSniffer

✤ PHP Depend

✤ PHP Mess Detector

Page 20: Continuous Inspection: Fight back the 7 deadly sins of a developer!
Page 21: Continuous Inspection: Fight back the 7 deadly sins of a developer!

Sonar widgets - Size metrics, Comments & Duplications, Unit tests coverage

Page 22: Continuous Inspection: Fight back the 7 deadly sins of a developer!

Sonar widgets - Time machine, Rules compliance, Complexity

Page 23: Continuous Inspection: Fight back the 7 deadly sins of a developer!

Sonar - Source code browser

Page 24: Continuous Inspection: Fight back the 7 deadly sins of a developer!

Sonar - Source code violations

Page 25: Continuous Inspection: Fight back the 7 deadly sins of a developer!

Sonar - Hotspots

Page 26: Continuous Inspection: Fight back the 7 deadly sins of a developer!

Sonar - Hotspots

Page 27: Continuous Inspection: Fight back the 7 deadly sins of a developer!

Sonar - Time machine

Page 28: Continuous Inspection: Fight back the 7 deadly sins of a developer!

Sonar - Time machine

Page 29: Continuous Inspection: Fight back the 7 deadly sins of a developer!

Sonar - Developers cockpit

Page 30: Continuous Inspection: Fight back the 7 deadly sins of a developer!

Links

✤ http://www.sonarsource.org/

✤ http://www.sonarsource.com/

✤ Sonar Demo - http://nemo.sonarsource.org/

✤ Sonar as a Service (SaaS) - http://www.cloudbees.com

Page 31: Continuous Inspection: Fight back the 7 deadly sins of a developer!

Credits

✤ http://beartoons.com (the little devils)

✤ http://www.flickr.com/photos/e_tavares/3499009813/sizes/l/in/photostream/

Page 32: Continuous Inspection: Fight back the 7 deadly sins of a developer!

Q & A

h"ps://joind.in/7802

Thank you!