Database per Developer and Environment
While it’s pretty easy to convince people about the efficacy of not having a single development server that everybody work on, and to instead have seperate development workstations and use source control. But doing the same with database is another matter. I guess the only way to do it is to store the schema and sample data as text files, and modify these, and rebuild the various databases whenever they’re changed during the build or when a developer checks out the updated schema/database. It’s a hard problem though, and I know a lot of people who don’t like the idea of doing that though. Maybe the problem is that the RDBMSs we have today just aren’t up to the task of being developer-friendly?