The classic book "Joy of Cooking" is kind of recursive like this.
If you want to make a Reuben Sandwich, you turn to p. 272, and describes the bread, meat, cheese, and sauerkraut. Then it says to spread it with Russian Dressing and points you at p. 364 for that.
The Russian Dressing recipe includes horseradish and grated onion. It also includes Mayonnaise, and for that it points you at p. 363. Another ingredient for Russian dressing is either Chili Sauce or Catsup, and for each of those it points you to p. 847.
On p. 363, there are several paragraphs about Mayonnaise, and 3 recipes for hand-beaten, mixer, and blender versions.
On p. 847, neither the Chili Sauce nor Tomato Catsup recipes have any sub-recipes, but both of them point you to p. 841 for information about Pickling Equipment and Ingredients and they also both point you to p. 804 for a procedure for sealing sterile jars in boiling water.
The jar-sealing procedure on p. 804 points you to p. 165 for an illustration of a tool for lifting jars out of boiling water.
The pickling section on p. 841 mentions that water should be soft and refers to p. 519, the About Water section under Know Your Ingredients which discusses filtration among other things. It also mentions you should only use pickling or dairy salt, and refers you to About Salt on p. 568. And finally it mentions when pickling, you might want to used the Spiced Vinegar recipe on p. 527.
An Australian equivalent is Stephanie Alexander's The Cook's Companion. Almost every ingredient has a "goes with" list that makes it a great starting point when you have something to use up or that you've picked in the garden.
I do find sometimes it says it'll be cheaper to buy it, but in several cases I'm positive it's not, or the price of the product in store vs from the recipe isn't directly comparable.
The example of refried beans is complicated. If you buy a can of refried beans, it won't be as high quality as the recipe provided. The recipe is rich in butter and onions. A can will likely have lard or vegetable oil in it, and very little onion (likely powdered). It also claims it's cheaper to buy the can, but it's because initially the recipe suggests buying cans of beans. If you use dried beans, you're probably spending about the same amount but getting far nicer refried beans.
Anyway, it's a fun project, and the things I noticed aren't really problems and are easy enough to negotiate in the interface. I had fun with it.
Most constituent lard is made from a pig. And pigs (while quite social) take pretty good care of themselves even if simply/only fed and watered. Depending on your environment, that might well be done by letting the pig go wander about and find feed and water.
I made this for fun with React and Go, its open-source if you want to hack it yourself. [1]
I was inspired by the book "Make the Bread, Buy the Butter" by Jennifer Reese. I tried to continue the idea to see how much money+time it costs to continually substitute an ingredient for the recipe of that ingredient.
Sorry for the ads - I use them to make back the $ spent on the domain :). I just toned them down.
Please let me know if there are any other suggestions!
Fun, and the absurdity puts things in perspective.
Minor suggestions:
* Allow currency change (e.g. EUR instead of USD)
* Use + and - signs or green and red colors when hovering over the ingredients to show if money can be saved or not. Also put the amount of time in a different font size or color. (Site is very minimalist though which is great).
* Explain sources for price calculation (I'm skeptic about some, and curious who its based for).
Great suggestions. There are actually sources for the price calculations but I wasn't sure yet how to display them, or if they were wanted. If you want them then someone else probably does too so I can add that.
Perishability is a factor. Other factors are start-up cost (e.g. chickens require building a coop), time, and preferred taste (some things just taste better from a store and some are better homemade).
The book is more of a fun read. There's some funny anecdotes about trying to raise bees and chickens.
Wife: Can you bring me a glass of water ? Me: sure. One hour later ... Wife: What took you so long ? Me: I couldn't fill the glass because there where dishes, and the dishing machine was full, so I had to empty it, then I couldn't find the dishing tables, so I put the kitchen cabinet's in order, but accidentally spilled some flour, so I cleaned the floor and worktop while I where at it. Next day at work: Boss: Can you implement feature X ? Me: Sure ...
Very nice! Suggestions: don't break the back-button; and make it somehow clearer that one can expand the recipes. As others I was also confused about "buy cookies in the store".
Thanks. I realized I was pushing the history on every React render(). I've fixed that now.
The "buy cookies in the store" basically means that there is not enough time to make them so you should buy them (its a bit tongue in cheek). You can increase the time by using the slider or clicking on the cookies so you can get the actual directions. Also, if you hover your mouse over the "Chocolate Chip Cookies" ingredient you can see how much money you save (or lose!) by making them from scratch.
Yep, it does take time to go to the store (and heck, which store?). Heck, it might even cost energy (ie. kJ) too. However one can perhaps also order online and then it only costs the time to order the product plus the waiting time. Which is idle time, not active time. There's a nuance difference between that. Consider a gazpacho. It requires the soup to be served cold, so after it is basically prepared you need to put it in the freezer. Or consider you marinade something such as tempeh which you stir fry afterwards (the latter of which is active time, the former idle time). Whereas if you're an hour in the kitchen actively busy preparing things, that's active time.
For making the vegetables, you should have seeds as an ingredient. Then to make seeds you need the vegetables, so you could have a cycle in your dependency graph.
Also you should keep adding recipes for seawater and soil etc until you have a recipe for creating the universe. And use an apple pie as your example recipe.
Haha. Yeah this is the chicken-and-egg problem. There are no cycles here since I'm working from the basis of primordial practical ingredients, in that each recipe should ideally boil down to just sun, soil, water, and seeds (be they fungi spores, cow embryo, chicken eggs, vegetable seeds, etc.). It would be neat to expand this to the universe though :)
Except when I click "egg" in the recipe it gives me instructions on how to produces eggs from an egg-laying chicken, then how to produce an egg-laying chicken from a chick... "how to incubate a chick from a fertilized egg" doesn't seem too out of scope.
I would think the ingredients could be processed in parallel.
For example, the Chocolate Chip Cookies recipes quotes a total of 9 years 29 weeks to make everything, but really the longest lead item is the vanilla beans @ 4 years. So really it's a 4 year process isn't it?
You're right. I made the tool so that you could just make each recipe like you would normally do, doing one step at a time. In reality you would try to multitask, but that makes it more complicated to dictate as directions. At that point, I would actually try to generate a Gantt chart [1] which could make it easier to follow how to make things in parallel.
Also, as a sidenote - each recipe actually has its own "parallel" and "serial" time. The parallel time is independent of quantity, and the serial time is dependent on quantity. For example, growing vanilla beans has a parallel time of four years (each plant will grow simultaneously) and then they have a serial time of ~1/2 hr per plant to harvest.
This works for "passive" time but not for active time, i.e. you can do other things while the vanilla beans are infusing, but you can't churn butter and also grind wheat. So the site would have to differentiate between the two categories of time.
Vanilla grows best in warm temperatures, preferably in the 70’s to 90’s. Cooler temperatures will slow down the growth. Keep temperatures above 60˙F for the most part. Vanilla orchids benefit from regular applications of fertilizer.
It really is good for a laugh, but it’s also an interesting way to visualize just how much goes into something as “simple” as a chocolate chip cookie. It’s the labor of many people all around the world to grow the wheat, the vanilla, the cacao, process the cacao, raise the cows, churn the butter, etc.
I know I'm nitpicking here but I see that some elements have not been broken down ( ex : cocoa powder in cookies) even on absurdly longer time scale. Regardless, good work.
Intuitively, it can serve as a good resource to understand food composition for cooked items.
I always wanted to have something like this for math proofs. Like, when you’re reading a complicated derivation, where the author glosses over the details, you could click on the given step and see why it’s true. Then repeat it arbitrarily deep.
Recipe substitutions would be great so you can have multiple ways of making the same thing. Someone else mentioned seawater and soil substitutions until you have a recipe for the universe. Though there are other ways to also grow food without soil (hydroponics).
That tells you how much it costs to buy pancakes. If you click the pancakes box it'll tell you how much you can save by making them from scratch, and give you instructions.
Some things are cheaper and easier to buy; others are cheaper to make yourself.
This is very silly. I like it. I kinda compare this to an XKCD "what if" question about cooking. "What if i dont have eggs, but I have a chicken?" And so on...
Haha, sorry about that! Didn't mean to subvert everyone's back button. I am just learning React and I think I pushed the history too often in the page.
The recipes are pretty generic. The data is actually all in a configuration file on Github. [1] Its organized in terms of "reactions" as in, every recipe is a "product" of some process applied to a set of "reactants". This is useful for reactions that have multiple products.
I have a list of recipe "reactions" [1] which is compiled into a giant network of recipes. When a recipe is chosen, the directions are generated recursively from this network.
If you want to make a Reuben Sandwich, you turn to p. 272, and describes the bread, meat, cheese, and sauerkraut. Then it says to spread it with Russian Dressing and points you at p. 364 for that.
The Russian Dressing recipe includes horseradish and grated onion. It also includes Mayonnaise, and for that it points you at p. 363. Another ingredient for Russian dressing is either Chili Sauce or Catsup, and for each of those it points you to p. 847.
On p. 363, there are several paragraphs about Mayonnaise, and 3 recipes for hand-beaten, mixer, and blender versions.
On p. 847, neither the Chili Sauce nor Tomato Catsup recipes have any sub-recipes, but both of them point you to p. 841 for information about Pickling Equipment and Ingredients and they also both point you to p. 804 for a procedure for sealing sterile jars in boiling water.
The jar-sealing procedure on p. 804 points you to p. 165 for an illustration of a tool for lifting jars out of boiling water.
The pickling section on p. 841 mentions that water should be soft and refers to p. 519, the About Water section under Know Your Ingredients which discusses filtration among other things. It also mentions you should only use pickling or dairy salt, and refers you to About Salt on p. 568. And finally it mentions when pickling, you might want to used the Spiced Vinegar recipe on p. 527.