I recently decided to learn SQL and some advanced web-page programming, so I chose to make myself a cookbook program. As with everything else, I've turned this into an immensely complicated program; I've spent about 40 hours already, mostly data entry. I know cook-book programs have been done a thousand times before. I also know that there are some out there that are going to be quite well-programmed AND/OR already full of recipes, but I'm doing this for my own benefit.
I've almost completed my ingredient list: 1217 items so far. I suspect it will be about 1500 when I finish. Every ingredient can have both parent(s) and child(ren), making it easy to call up similar ingredients or search to find a particular item. Each ingredient also includes:
Default Child: i.e. "White Sugar" is most probable when you select "Sugar" and "Granulated Sugar" is most probable when you select "White Sugar." This can be helpful in determining how close your ingredients match those listed in the recipe.
Alternate names for each ingredient (about 300): i.e. "Oleo" for "Margarine"
Brand names (about 40): i.e. "Jim Beam" is a brand name of Bourbon Whiskey
Common Substitutions (about 75 sets): i.e. 1 cup Cake Flour for 14 tablespoons All-Purpose Flour
Description: something that describes something, Duh
And, if I ever get around to it, nutritional information, weight/volume ratio, and weight/unit ratio. This would make it possible to do complex conversions (between 1 egg and 2 cups of egg white, for example) as well as allow the estimation of the total nutritutional value of any given recipe. Also, if I ever get around to it, I'm going to tie this into a barcode scanner to keep track of your current inventory.
Recipes will be able to be searched by name, category (i.e. Appetizer or Thanksgiving), genre (i.e. Southern), ingredient list, contributor, rating, date added, total time, serving sizes, special considerations (i.e. "Kosher" excludes Pork Products), etc. If you wanted to display a list of your Aunt Etna's Christmas Recipes, it would show just those. After you've finished the recipe, there will be a place to add a rating (i.e. 4/5) and comments (Too Much Salt).
And, of course, I want everything to be entirely controllable by mouse OR keyboard OR remote control. I'm going to hook up my server computer to a whole-house video distribution system, so that it can display on the TV in the kitchen. I'll also set up a web server to make it available to friends and family. I'm thinking I'll have an alpha version in about a week and a finished version after a month. The database will be largely complete in another 2 days.
-Biscuits