Hacker News new | past | comments | ask | show | jobs | submit | more joshdickson's comments login

Your other comment is too deep in the thread for me to reply, but just wanted to say I appreciate you checking out the project and commenting, and appreciate the many years of effort you've undertaken in this space. How OpenNutrition can work with OpenFoodFacts is something I have thought a lot about (I think MacroFactor set a great example) and it's certainly something I'll consider moving forward.


Thank you very much for your feedback. Building a great product that did not have variable usage costs that allowed for a generous free tier was my primary motivation for undertaking this project. While there is a need to monetize, I also believe there is a niche for an app with a more expansive free tier than exists in the space currently.

Only using the OFF database would be untenable to me as an end user. I think most people do not want to know or care about where the data is coming from, they just want it to be accurate and easy to use. I've listed the usability reasons here for why I can't offer that how I want with only OFF (and that's no dig to OFF, it is a fantastic project, and a primary motivator for this project and its license structure).

https://news.ycombinator.com/item?id=43570775


Some kind of fall-back mechanism would be nice, then, maybe? As someone who does indeed want it to be accurate, I would prefer to use OFF for any food which exists within their database, since it tends to be much more accurate (and maybe fall back to "AI search" if I want to look up "apple" or whatever).

I understand that most people probably consume more whole foods that might not have the cut-and-dry numbers on OFF. It just does feel like a big lacking feature to just categorically exclude OFF, if I wanted to use it.


Thank you for the feedback.

Have you asked one of the LLMs used to tell you about the choline content of a food, even ungrounded? They are surprisingly good at reasoning about what kinds of foods tend to contain large amounts of choline because their training datasets will include all kinds of similar data points, even if the single food you're looking for doesn't have it listed explicitly.


Thank you for your feedback. This would be a great dataset to include -- my next priority is the Japanese government dataset which would expand food coverage for more traditional Asian diets, but this is a great resource.

https://www.mext.go.jp/en/policy/science_technology/policy/t...


Would you mind posting/messaging me in some way (links in bio) what you expected it to show?

It looks like for unsweetened oat milk:

https://www.opennutrition.app/search/unsweetened-oat-milk-mt...

...it is leaning into a citation from the Australian Nutrient Database (e.g. Oat beverage, fluid, unfortified. Australian Nutrient Database. Public Food Key F006132. ), which is what I instructed it to do if it thought there was an exact match from a governmental database.

It's possible this is a poor general source for oat milk or that's not the beverage intended for the entry to stand for. I'll check it out, thank you for the report.


I'll check it later to give more constructive feedback, also it seems like you are hammering a backend request with each keystroke (?), cant verify it on mobile but you might consider debouncing the user input a bit to ease off the load


Thank you! The images are created via Flux (Schnell, due to cost). An LLM (currently Gemini Flash) creates the prompt, Flux generates the images, a rembg lambda that I open-sourced trims the background out, and then a vision-based LLM (also currently Gemini Flash) grades the resulting output for prompt adherence, background removal artifacts, etc. A lot get thrown away but the cost is so low that even a 25-50% success rate is adequate.

Background removal lambda if you want to check that out: https://github.com/joshdickson/rembg-lambda


Which country would you like it available in?


Both products show a 1 cup (41g) and 160 calorie serving size to me?

OpenNutrition: https://www.opennutrition.app/search/honey-bunches-of-oats-h...

Via Manufacturer: https://www.honeybunchesofoats.com/product/honey-bunches-of-...

If you wouldn't mind DM'ing me the barcode you're looking at that would be helpful to understand what the nature of the discrepancy is.


so the dataset published is different from the data on the website.

line 13669: fd_AX4PUMF1h0RU Honey Bunches of Oats Honey Roasted by Post ["Post Honey Bunches of Oats Honey Roasted Cereal"] Honey Bunches of Oats Honey Roasted is a popular breakfast cereal combining crispy whole grain flakes with clusters of honey-roasted oats. This Post cereal features a distinctive mix of textures and a sweet honey flavor profile, created through a specialized roasting process. While providing some dietary fiber, it contains a relatively high sugar content typical of sweetened breakfast cereals, with honey-roasted clusters being its signature component. grocery [] {"common":{"unit":"cup","quantity":1},"metric":{"unit":"g","quantity":41}} {"iron":39.5,"zinc":3.66,"water":3.6585,"biotin":4.878,"copper":0.4878,"iodine":4.878,"lysine":0.3902,"niacin":19.5,"serine":0.3171,"sodium":463,"valine":0.5366,"alanine":0.3171,"calcium":24,"choline":12.1951,"cystine":0.0976,"glycine":0.2195,"leucine":0.6341,"omega_3":0,"omega_6":0,"omega_9":2.44,"proline":0.4146,"protein":7.32,"taurine":0,"thiamin":1,"xylitol":0,"arginine":0.4146,"caffeine":0,"calories":390,"chlorine":0,"chromium":2.439,"cysteine":0.0976,"selenium":12.1951,"sorbitol":0,"tyrosine":0.2195,"histidine":0.2195,"magnesium":59,"manganese":0.7317,"potassium":146,"threonine":0.3171,"total_fat":4.88,"vitamin_a":243.9024,"vitamin_c":0,"vitamin_d":5,"vitamin_e":1.2195,"vitamin_k":0.4878,"folate_dfe":243.9024,"isoleucine":0.4146,"methionine":0.122,"molybdenum":7.3171,"oleic_acid":2.44,"phosphorus":146,"riboflavin":1.24,"trans_fats":0,"tryptophan":0.0976,"vitamin_b6":1.95,"capric_acid":0,"cholesterol":0,"erucic_acid":0,"lauric_acid":0,"vitamin_b12":14.6,"added_sugars":19.5,"stearic_acid":0,"total_sugars":22,"aspartic_acid":0.6341,"caprylic_acid":0,"carbohydrates":82.9,"dietary_fiber":4.9,"ethyl_alcohol":0,"glutamic_acid":1.4634,"linoleic_acid":0,"myristic_acid":0,"palmitic_acid":0,"phenylalanine":0.4146,"soluble_fiber":1.2195,"linolenic_acid":0,"saturated_fats":0,"sugar_alcohols":0,"eicosenoic_acid":0,"insoluble_fiber":3.6805,"arachidonic_acid":0,"pantothenic_acid":1.2195,"other_carbohydrates":0,"alpha_linolenic_acid":0,"docosahexaenoic_acid":0,"gamma_linolenic_acid":0,"monounsaturated_fats":2.44,"polyunsaturated_fats":0,"docosapentaenoic_acid":0,"eicosapentaenoic_acid":0,"dihomo_gamma_linolenic_acid":0} 0884912359155 ["sweetened"] {"common":{"unit":"oz","quantity":12},"metric":{"unit":"g","quantity":340}} Corn, whole grain wheat, sugar, whole grain rolled oats, rice, canola and/or soybean oil, wheat flour, malted barley flour, corn syrup, salt, molasses, honey, caramel color, barley malt extract, natural and artificial flavor, annatto extract (color), bht added to preserve freshness, vitamins and minerals: reduced iron, niacinamide (vitamin b3), vitamin a palmitate, pyridoxine hydrochloride (vitamin b6), zinc oxide, thiamin mononitrate (vitamin b1), riboflavin (vitamin b2), folic acid, vitamin d3, vitamin b12 {"gluten":["wheat","barley","malt"],"food_dyes":["caramel color","annatto"],"added_sugars":["sugar","corn syrup"],"allergen_wheat":["wheat"],"allergen_soybeans":["soybean"],"artificial_flavors":["artificial flavor"],"artificial_preservatives":["bht"]}


I envisioned many lines of inquiry from HN but the idea that a compressed TSV of nutritional data is not a "dataset" (definition: a collection of related sets of information that is composed of separate elements but can be manipulated as a unit by a computer) was unexpected.


Your response is such a perfect example of why the "data science" movement is a cancer on actual science. So many graduate from programs and boot camps (or just read blog posts) that teach them all the technical mechanics of working with data, but nothing about actual science.


You sound like you're having a bad day. Go take a walk, its just someones side project on HN. They arent trying to destroy science for you, they were simply sharing something they enjoyed building. You dont have to use it or like it, but it has nothing to do with "science". Its not that deep bro.


The problem is that it’s _not_ simply data. Definition: is information collected from the world.

This is data from the world that has altered and augmented with stuff from a model. The informational content has been altered by stuff not from the world. Therefore it’s no longer data, according to the above definition.

That isn’t to say that it can’t be useful, or anything like that. But it’s _not_ information collected from the world. And that’s why people who care about science and a strict definition of data would be offended by calling this a dataset.


FWIW, I like that you include water content, libraries like google's health connect seem to have completely separate data structures for nutrition and hydration.


Thank you :)


Ignore them. Congratz on finishing your project!


> a compressed TSV of nutritional data

What is the source of that nutritional data?


There are many HN users who are opposed to LLM.

Some of them are fundamentalists, and no amount of reason will reach them (read the comments on the Ghibli-style images to get a sample), others are opposed for very self-interested reasons: "It is difficult to get a man to understand something when his income depends on his not understanding it"

Yesterday, I vibe coded a DNS server in python from scratch in half a day (!) and it works extremely well after spending a few minutes on manually improving a specific edge case for reverse DNS using AAAA records: dig -x requests use the exploded form in the ip6.arpa, while I think it's better for the AAAA entries to keep using the compressed form, and I wanted to generate the reverse algorithmically from AAAA and A records.

Just ignore them, as your approach is sound: I have experience creating, curating and improving datasets with LLMs.

Like vibe coding, it works very well if you know what you are doing: here, you just have to use statistics to leverage the non deterministic aspects of AI in your favor.

Good luck with your app!


> Like vibe coding, it works very well if you know what you are doing (emphasis mine)

This is true of so very many things involving computers (and tools in general, really) and LLMs are no exception. Just like any tool, "knowing what you are doing" is the really important part, but so many folks are convinced that these "AI" things can do the thinking part for them, and it's just not the case (yet). You gotta know what you're doing and how to properly use the tool to avoid a lotta the "foot-guns" and get the most benefit outta these things.


OpenFoodFacts is a huge inspiration to this project, obviously. However, as someone with a normal diet, OFF lacks:

1. Generic, non-branded foods

2. Simple prepared foods that ease food entry

3. Restaurant foods

4. Micronutrients beyond those reported by the brand.

OFF is a fantastic project but OpenNutrition is really trying to fit a different niche. OFF does what it does very well; I would never be able to use it to track my food intake.


Hi Josh: Pierre, Open Food Facts NGO co-founder. 1. Generic, non-branded foods & 2. Simple prepared foods that ease food entry: Those two could be solved in a deterministic way, and we'd be happy for a separate Open Food Facts hosted API endpoint (basically a small backend serving a combination of all national generic databases), or improvement to the core software 3. Restaurant foods - Open Prices (our effort to collect geo-located prices on products) could be an entry point to collect menus, and potentially estimate nutrition for food in restaurants, since we have support for products without barcode. 4. Micronutrients beyond those reported by the brand. - We have an issue to propose approximation of micro-nutrients from reputable database: https://github.com/openfoodfacts/openfoodfacts-server/issues...

We're happy to cover more use-cases, so feel free to join the project and contribute your time/coding skills to help us solve those issues. https://slack.openfoodfacts.org or https://forum.openfoodfacts.org or directly https://github.com/openfoodfacts


Consider applying for YC's Summer 2025 batch! Applications are open till May 13

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: