this one helps. If you are working with the web forms technology and want the ability to create a desktop application with the same code base I would suggest using the Model View Presenter pattern to break out the UI from the business coding. In addition to this approach, I would recommend creating a service layer that handles the logic beyond the Presenter class (including Data Access / Business Logic). I found that creating a class library to hold this UI agnostic code makes it very easy to reuse this code. This architecture also lends itself to a simple web service transition if you take that route because your service inputs/outputs should be the same in your class library as they would be in a web service (WCF or ASMX)
What is the recommended way to detect whether "suggested" packages are in fact installed via composer.phar?
I wish this help you PHP provides you with class_exists() for just that purpose. Check if the class is loaded with it - it will call the autoloader by default so no need to instantiate it with a try/catch block beforehand. If you are trying to test for an extension by the way you can also use extension_loaded() or function_exists().
Should I install cookbooks from the cookbooks from chef supermarket on server or chefdk?
it fixes the issue You cannot "install" cookbooks directly to a Chef Server, they always have to come indirectly from a workstation. The usual flow is that you download them locally from Supermarket and the re-upload to your Chef Server. Tools like Berkshelf and the Chef Policyfile system handle the heavy lifting for you so you don't have to do it one-by-one.
Error Resolving Cookbooks for runlist: missing cookbooks: No such Cookbooks