title: Node.js convention for module require variable names
body: <p>Just about all the Node.js code I’ve seen on the internet uses this convention for requiring modules, where the return value of <code>require</code> is assigned to a variable with the same name as the module:</p>
  
  <pre><code>var path = require('path');
  var url = require('url');
  </code></pre>
  
  <p>The trouble is that that many module names are quite common words that we would like to use for variable names elsewhere in our code—e.g. <code>var path = path.join(basePath, fileName)</code>—which will probably cause problems due to name shadowing.</p>
  
  <p>Of course, we could choose a different name for the module variable to avoid name clashes (e.g. <code>pathModule</code> or uppercase <code>Path</code>), but that seems to break with the convention.  Or we could choose a different name for variables elsewhere in the code—e.g. <code>var thePath = path.join(...)</code>.  What is most commonly done in this case?</p>