title: Over-use of require() in node.js, mongoose
body: <p>I'm new to Node.js, but quite like the module system and <code>require()</code>. 
  That being said, coming from a C background, it makes me uneasy seeing the same module being <code>require()</code>'d everywhere. All in all, it leads me to some design choices that deviate from how things are done in C. For example:</p>
  
  <ul>
  <li>Should I <code>require()</code> mongoose in <em>every</em> file that defines a mongoose model? Or inject a mongoose instance into each file that defines a model.</li>
  <li>Should I <code>require()</code> my mongoose models in every module that needs them? Or have a model provider that is passed around and used to provide these models.</li>
  </ul>
  
  <p>Ect. For someone who uses dependency injection a lot - my gut C feeling is telling me to <code>require()</code> a module only once, and pass it around as needed. However, after looking at some open-source stuff, this doesn't seem to be Node way of things. <code>require()</code> does make things super easy..</p>
  
  <p>Does it hurt to overuse this mechanism? </p>