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