On Fri, Sep 13, 2013 at 01:24:59PM -0700, Greg Lindahl wrote:

> Exercise gear is another source of naming inspiration:
> existing modules are WWW::Nike::NikePlus, WWW::Jawbone::Up,
> a top level of GPS:: for gps eqipment. And nothing for FitBit.
> Not so organized.

People search to find modules, they don't navigate hierarchies, so
having a rigourous hierarchy doesn't matter much.  However, having a
sensible name does a few things:

* the 'Tesla' in there makes it searchable;
* 'Device::Car' there serves to disambiguate from some hypothetical
  future module like WWW::Museum::Tesla (for searching the Nikola Tesla
  museum's archives, perhaps) or Net::TESLA (Timed Efficient Stream
  Loss-tolerant Authentication protocol) or Device::Earthquake::Tesla;
* a sensible name also helps someone maintaining code that uses your
  code to make a sensible guess about what your module does, and hence
  whether the bit of the application that uses your code is relevant to
  whatever he's trying to fix.

-- 
David Cantrell | A machine for turning tea into grumpiness

    Vegetarian: n: a person who, due to malnutrition caused by
      poor lifestyle choices, is eight times more likely to
      catch TB than a normal person

Reply via email to