• Home
  • About
    • Ahmed DAMMAK photo

      Ahmed DAMMAK

      Full Stack Developer

    • Learn More
    • Twitter
    • LinkedIn
    • Github
  • All Posts
  • All Tags
  • Projects

DevoxxFR 2019 - Sonar Smash

18 Apr 2019

Reading time ~2 minutes

Talk de Helen Wallace @helenfindslife et James Mac Mahon @jmacrac de Murex Dublin.

Abstract

Have you ever run code quality analysis on a legacy code base? How much technical debt did you have? SonarQube can be an invaluable tool for providing visibility on the quality of your code base. But when it reports 6 years of technical debt, where do you start? Often issues are tucked away in seldom visited corners of the code base, hiding real bugs. How do you know which issues to fix? How do you get time to fix code that isn’t necessarily broken? How do you motivate developers to work on messy code? In Murex, we created Sonar Smash: A competition to crack the mountain of technical debt, thus motivating developers to fix these issues and to write new tests WITHOUT taking away from their day to day work. Come and learn how to run it yourself! Whether you have 2 days or 20 years of technical debt; Sonar Smash will

  • Get rid of the bed bugs in your code
  • Raise awareness of code quality
  • Help you identify and pitch larger refactoring projects
  • Get a grip on legacy code in a meaningful way Be Fun!

Notes

Fuelling the removal of technical debt through competition

Legacy code

  • Untested
  • Confusing / unclear

Metrics :

  • Smels
  • Black Duck
  • Jacoco (code coverage)
  • Fast feedback
  • Metrics

Found something that engages every one and make it fun —> Make competition

Quick wins

  • Filter metrics
  • Update sonar rules
  • Detect dead code

How to build competition ?

  • Don’t do it rule by rule base
  • Do it class by class level
  • Team based competition (Other person that sprint team)
  • Every body loves comebacks

When

  • Every day

Feed back

  • How to explain to other persons
  • Motivating developers : How to motivate ? (free launch)
  • Challenge trash tag
  • People want this to happen
  • Visibility of competition
  • Winner in Demo
  • Being a part of a team
  • Developers like to code
  • Competition was fun

Focus effort

  • Trust developer
  • Let developer choose their class to clean
  • Select using Sonar
  • Code Maat : Class changing almost the time
  • List class to be refactored
  • People assign refactor to themselves

Make many competitions and envolve even non technical

Make it fun to work !

How to fix sonar smash :

Refactor makes you better developer :)



DevoxxFRconferencesSonar