I agree with Joel; your best bet is to provide a highly detailed design spec with complete API, and also provide guidance on what components to extend, etc. The downside is that it takes a lot of time to do all of this work, and depending on your particular situation, it may be unrealistic.
Another option is to provide a best-practices document (such as you did), and then specify the framework / architecture that you want them to use. The danger here (as I have found out the hard way) is that if the developers you choose are not familiar with the framework you specify, you may end up with enough spaghetti to feed your family for about a year. For me, the most helpful practice is performing frequent code reviews during the development process. If you can deal with their code in modest-sized chunks and give them detailed feedback on what should be done to improve it, you can dramatically improve the final product. Again, this takes time, but it also pays big dividends. HTH - Jim _______________________________________________ Flashcoders mailing list Flashcoders@chattyfig.figleaf.com http://chattyfig.figleaf.com/mailman/listinfo/flashcoders