title: Can someone explain the right way to use SBT?
body: <p><em>I'm getting out off the closet on this! I don't understand SBT. There, I said it, now help me please.</em></p>
  
  <p>All roads lead to Rome, and that is the same for SBT: To get started with <code>SBT</code> there is <code>SBT</code>, <code>SBT Launcher</code>, <code>SBT-extras</code>, etc, and then there are different ways to include and decide on repositories. <strong>Is there a 'best' way?</strong></p>
  
  <p>I'm asking because sometimes I get a little lost. The SBT documentation is very thorough and complete, but I find myself not knowing when to use <code>build.sbt</code> or <code>project/build.properties</code> or <code>project/Build.scala</code> or <code>project/plugins.sbt</code>.</p>
  
  <p>Then it becomes fun, there is the <code>Scala-IDE</code> and <code>SBT</code> - <em>What is the correct way of using them together?</em> What comes first, the chicken or the egg?</p>
  
  <p><strong>Most importantly is probably, how do you find the right repositories and versions to include in your project?</strong> Do I just pull out a machette and start hacking my way forward? I quite often find projects that include everything and the kitchen sink, and then I realize - I'm not the only one who gets a little lost.</p>
  
  <p>As a simple example, right now, I'm starting a brand new project. I want to use the latest features of <code>SLICK</code> and <code>Scala</code> and this will probably require the latest version of SBT. <em>What is the sane point to get started, and why?</em> In what file should I define it and how should it look? I know I can get this working, but I would really like an expert opinion on where everything should go (why it should go there will be a bonus).</p>
  
  <p>I've been using <code>SBT</code> for small projects for well over a year now. I used <code>SBT</code> and then <code>SBT Extras</code> (as it made some headaches magically disappear), but I'm not sure why I should be using the one or the other. I'm just getting a little frustrated for not understanding how things fit together (<code>SBT</code> and repositories), and think it will save the next guy coming this way a lot of hardship if this could be explained in human terms.</p>