Slide 21
Slide 21 text
of
EVALUATION TECHNIQUES
Popularity
SO, HN, Google
•Evaluate code directly (Github)
•Evaluate the tests (Github)
Interface
README,
use gem
Activity
Commits, issues, PRs,
releases, docs
Familiarity
Look at code
So there’s our last group. These are, broadly speaking, the four categories of data that we
consider when we’re evaluating a gem.
Interestingly, only one of these is purely technical data and that’s the Interface. All of the
other 3 have a social component. Popularity and Activity are almost purely social. And
Familiarity is partially a technical judgement because you’re spelunking through the internals
of the code, and partially a social judgement, because you’re doing that in order to find out
how much the maintainer thinks like you do.
So certainly by volume, we consider more social data than technical data.
What happens pretty often in Ruby, actually, is that you have two gems that both have a
sufficient interface, are about as popular, and are about as active. So the judgement comes
down to Familiarity. Does the code feel good? Let’s talk a little bit about what that means.