Quote Originally Posted by Hartmann
I want to be able to "package" the system enough to where plugging it in to a site that has a different look and feel to it is not very hard.
Just as we thought this thread could not get any more complicated, I think I will throw another dimension into the mix? Have you ever thought about using UML to design your system? It sounds like what you may need to do is take a step back and really think about this framework which you seem to be putting together. I don't mean that you have to use UML, but I do see a need for your project to be thought out if your goal is reusability.

You will not be able to include all scenarios in version 1 of your framework, but you may be able to iron out just enough of the wrinkles in order to make it work for most of your projects. This is what projects like Jakarta Struts have been designed for.

The reason that I bring up UML or even just a paper and pencil approach is because sometimes it helps if you first write out all of the objects or code modules that will be involved in your application, be it object-oriented or procedural. Looking at your application as a picture may clue you in to its complexity or simplicity. It may also give you an idea as to what approach you may want to take (i.e. OO or Procedural).

Just as there are many religions in the world, there are probably just as many programming languages. They all have different belief systems. Which you choose is entirely up to you. There are even those that have mixed and matched, in order to make it work for the individual.

My advice is to learn as many ways of doing things as possible. Then take the best out of all of those and use the ones that makes sense to you on a case by case, or project by project basis.