Designing a Database
tom_b: Do you need your system to be transaction-oriented (think ATMs and banking) or analytic (for doing slice and dice reporting of data)?  You'll do well to check out normalization for the first and understand star schemas for the second.It's awesome you are thinking about db design upfront, just think about what your data will be, how it will be used, and how you will want to move it around for your app.  Don't discount not using a db at all (and I'm a db guy for work) - for one of my current projects, I'm simply dumping small data objects into individual JSON files.  Easy to fetch with Ruby/Sinatra and easy for the GUI part of the app to play with (Javascript eats up JSON on that side).  Not to discount Rails at all, but going with a minimal toolset like Ruby/Sinatra/Sequel might be just the ticket for you roll simple web apps really quickly.Heck, this forum uses flat files for storing submissions, comments, and user data.