Here's the deal, I'm in charge of creating a website that will host small web apps. This apps will be photo contests, creatives sentences and other similar gibberish. The deal is, since apps we'll be constantly changing and some new ones will come up what's the best way to save the config specs for each one? Should I create new tables and fields as I need? Or should I serialize this data and put it on one field?

In this case instead of having a table apps, I was thinking having a table for each app, this way I could have a more modular way of dealing with apps, making changes more easy, or more painful (in case of the changes apply to all the apps)

Or if I serialize everything, then I would only have one table and I won't have the need to make changes to the table, but this option seems a bit lame to me.


Ever heard of the windows registry? Put something like that into your database. A hierarchy of folders for key/value pairs. Simple to do with some changes. Do NOT serialize anything more complex than primitive types - that will come back to haunt you - or hand crafted XML structures (i.e. classes that output XML that is clear to read).


The questions to answer

  • Are the applications related to each other, or to a common user?
  • Do the applications share data between each other?
  • Are there any common data and functions that are common to all?

If the answer to any of the above questions is yes, then probably one application per table may not be the best approach since there will be lots of duplication that can be resolved in a more detailed design.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.