Cooking with Database Ingredients
By Ken North
Most database applications are fundamentally a process of gathering and presenting data, validating data, applying rules, and accessing data stores. Multitier Web applications follow that model by partitioning logic across powerful database servers and application servers that serve multiple clients. All roads in the software industry have converged on standards and component-based development, so we are seeing a cookbook approach to development. Many recipes for a Web database application combine HTML, TCP/IP, scripts, business objects, and other components.
Software experts are like great chefs. As a person matures in either profession, he or she accumulates knowledge about ingredients and how to combine them. The great chef masters ingredients and recipes, whereas the developer masters components and algorithms. The chef's codified knowledge, or cookbook, saves us from having to innovate every time we prepare a meal. It comprises expert knowledge and communicates how to combine ingredients with (hopefully) consistent results. In the world of application building, our concerns are not unlike those of the master chef. We also want to communicate expert knowledge and achieve reproducible, consistent results. Because people learn in different ways, explaining fundamental concepts or basic information is often a challenge. In my experience, the cookbook approach works well for explaining how to integrate systems and software or build applications with a new tool.
Many Web database developers use products that support a cookbook approach of specifying rules, building databases, creating components and business objects, and presenting information.