A little more context on what I'm considering.

I work in a team of about 10 developers on a Clojure project. In the larger
enterprise there are mainly Java applications.

I'm interested in a way to visualise which parts of the codebase are
getting sticky and might require intervention. As well as being a
non-subjective measure of relative tech debt for our internal purposes,
this is also about communicating with the rest of the enterprise in terms
similar to ones they already understand.

Linting tools are very useful, and of course the subjective impressions of
those who work with the codebase are very important too.

Cheers,

Chris


On 2 July 2014 12:38, Paul deGrandis <paul.degran...@gmail.com> wrote:

> Hi Chris,
>
> I have long collected metrics on various Clojure code bases, and have had
> grand plans for automating the process with an open source tool.
>
> The metrics you look at depend heavily on what you care about - the most
> telling metrics I've used recently are Assertion Density [1], an adaption
> of LSCC [2], and an attempt at cognitive load [3].  Typical things I look
> at are namespace manipulation/jumps per file,
> docstring-on-function-percentage, distribution of defn size, distribution
> of anonymous function size, number of functions per namespace, number of
> symbols per namespace.  In the past I've looked at an adaptation of
> cyclomatic complexity, distribution of all functions used, and namespace
> fan-in/fan-out.
>
> I'll echo what others have said above: eastwood, dynalint, and basic `lein
> check` are good approaches for general lint activities.
>
> Cheers,
> Paul
>
> [1] http://cacm.acm.org/magazines/2014/2/171689-mars-code/fulltext
> [2]
> http://139.141.170.133/drjehad/A%20precise%20method-method%20interaction%20based%20cohesion.pdf
> [3] http://www.ucalgary.ca/icic/files/icic/59-JECE-IEEE919.pdf
>
>  --
> You received this message because you are subscribed to the Google
> Groups "Clojure" group.
> To post to this group, send email to clojure@googlegroups.com
> Note that posts from new members are moderated - please be patient with
> your first post.
> To unsubscribe from this group, send email to
> clojure+unsubscr...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/clojure?hl=en
> ---
> You received this message because you are subscribed to the Google Groups
> "Clojure" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to clojure+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to