Eric Hodel wrote: > On Nov 16, 2007, at 21:53 , Austin Ziegler wrote: >> I don't think that I'm really understanding the value of flog. Heckle, I >> get. What am I supposed to do with a report like this: >> >> Total score = 2264.64752355478 >> >> RGB#none: (486.2) >> 169.4: freeze >> 160.6: new >> 135.5: lit_fixnum >> 9.9: from_percentage >> 6.0: sclass >> 4.8: alias >> [snippage] >> >> What does this really tell me? > > Total complexity of your project is 2264ish. 20% (486/2264) of your > complexity lies in RGB, and I'm guessing that its all building up your > constants (from the names in your report). > > What does `flog ... | grep -v '^ '` give (just the top-level stuff) > > For RubyGems: > > Total score = 7318.5427518653 > > Server#run: (203.9) > OpenURI#open_http: (161.0) > Policy#verify_gem: (135.9) > main#none: (118.0) > Validator#alien: (105.8) > > Server#run is a good candidate for refactoring (3% of complexity!), as > is Policy#verify_gem (2%!). main#none is just toplevel code. (OpenURI > is in there for fixing proxy stuff :/) > > Note: values are an arbitrary, they only matter relative to the total, > and relative to other modules or methods. Ah ... so it's a "complexity profile". Couldn't flog display its report with percentages and cumulative percentages? So, for your example, you'd get: Total 7318.54 Percent Cumulative Server#run: 203.9 2.79% 2.79% OpenURI#open_http: 161 2.20% 4.99% Policy#verify_gem: 135.9 1.86% 6.84% main#none: 118 1.61% 8.46% Validator#alien: 105.8 1.45% 9.90% ...