Main Content

Using metric_fu to Make Your Rails Code Better

About the Talk

May 6, 2009 6:45 AM

Las Vegas, NV

Las Vegas, NV

You’ve got yourself a Rails project and a bunch of developers. Some of those devs are awesome and others are… not so awesome. How can you make sure that your beautiful code doesn’t degrade over time as more people join the project and deadlines loom? Or maybe you’re on a project that has lots of “bad parts of town” and you want to make it better – how will you know if you’re really making a difference? And where to start? Well, the growing field of code metrics is here to help. There are tools to measure test coverage, code complexity, churn (code that needs to change whenever anything changes), bad practices, duplication, and code smells. And all of these various open source projects have been mashed together in metric_fu – a Ruby gem that makes measuring the quality of your code easy (or at least easier).

During this talk I’ll be covering the various projects used by metric_fu to produce its reports:

Rcov – Measures test coverage Flog – Measures code complexity Saikuro – Measures cyclomatic complexity Flay – Finds duplication (both copy/paste and structural) Reek – Spots code smells Roodi – Finds lots of general problems Churn – Identifies files that change too often

I’ll discuss what the reports mean, how to fix the problems they uncover (with code examples), and setting up a Cruise Control build to generate these reports automatically once a day so you can have historical data.

JakeScruggs.blogspot.com metric_fu homepage metric_fu on github

Ratings and Recommendations

This Talk hasn't been rated yet. Sign In to rate Talks.

comments powered by Disqus