Sandwich Bill of Materials(nesbitt.io)

175 points by zdw 5 days ago | 23 comments

  • gerdesj 6 minutes ago
    Great fun but I will point out that Sandwich is a town in Kent (England, UK). The BoM for Sandwich will be rather more involved than for a sandwich (which will be multiple sub-assemblies of the whole).

    etc etc, soz!

  • Animats 17 minutes ago
    What, you've never seen industrial strength sandwich production?

    [1] https://www.youtube.com/watch?v=_YdWBEJMFyE

    [2] https://www.youtube.com/watch?v=tRUfdBEpFJg

  • bzmrgonz 3 hours ago
    You forgot to accomodate for MCP. You don't expect us to build the sandwiches manually as if we were cavemen living in 2023 do you???
    [-]
    • zdw 3 hours ago
      If The Princess Bride is to be believed, MCP stands for the "Mutton Context Protocol".
      [-]
      • jpitz 2 hours ago
        When the tokens are nice and lean.
  • SAI_Peregrinus 3 hours ago
    This promotes impractical version pinning. That leads to spoilage unless the lockfiles are updated every few hours. Freshness should be checked at build time, and the resolved version for each ingredient recorded in the SBOM but a lockfile SHOULD NOT be used for perishable ingredients. Bacteria will result in Spoilage Vulnerabilities if versions are locked inappropriately.
  • aranw 34 minutes ago
    I asked claude to use this and create a ham salad sandwich with no onion for me https://gist.github.com/aranw/c2b59f42b20eb47e01bc66841233c2...

    I'll email this over to my local bakery on Monday for my lunch order might need to make some modifications for there build environment

  • zahlman 31 minutes ago
    Some sandwich ingredients are known to be used both as standard toppings and as sauce components. To avoid ambiguity, condiments such as guacamole and relish (as well as ketchup) SHOULD define a stable API (Avocado and Pickle Interface).
  • ponestar 2 hours ago
    So is "toasting the bread a little bit" in the semver for the bread? Is this part of the integrity hash?

    Where are post assembly instructions stored?

    Panini and croque monsieur sandwiches are left out of this spec.

    Author didn't post the repo so I don't know where to submit an issue.

  • elzbardico 2 hours ago
    This is fantastic, now, after implementing SAP home edition at your house, you’ll be able to use the procurement module and leverage EDI to source the ingredients of your sandwich while maintaining full traceability according to the relevant ISO standards.
  • SauntSolaire 4 hours ago
    Hopefully this has built in support for second sourcing
  • arealaccount 3 hours ago
    > The 2025 egg price crisis was a cascading failure equivalent to a left-pad incident, except it affected breakfast.
  • owlninja 5 hours ago
    They better load the SBOM correctly in SAP.
  • McGlockenshire 4 hours ago
    > AGPL (Affero General Pickle License): Same as GPL, but if you serve the sandwich over a network (delivery apps), you must also publish the recipe. This is why most restaurants avoid AGPL pickles.

    I love a good APGL joke, and this one especially tickles me because I'm currently a delivery driver instead of a dev.

  • ThrowawayTestr 4 hours ago
    The most delightful thing I've read in a while.
  • johndhi 4 hours ago
    love it - is this a thing that's mostly used in government contracting, or do people encounter SBOM stuff more broadly than that?
    [-]
    • ozim 2 hours ago
      You can encounter it when someone is doing due diligence while buying software company.

      Also it is now hot topic because of CRA in EU.

    • xbar 3 hours ago
      I review an SBOM 3 days out of the week before lunch. If you can source your butter and cheese from the same dairy repo you can reduce the overhead of a grilled cheese by about 20%.
  • snarky123 3 hours ago
    Finally, something the software industry can learn from: sandwiches have dependency management figured out.
  • phendrenad2 3 hours ago
    > SHA-256 hash of the ingredient at time of acquisition

    I put mayonnaise on my RAM but I don't know how to hash it.

    [-]
    • all2 2 hours ago
      Dice the mayo and sticks of RAM and place in a cast iron skillet over medium heat. Turn it every two or three minutes. Remove when you can smell the magic smoke.
  • TZubiri 5 hours ago
    Mmmmmh, specifications
  • benatkin 5 hours ago
    What's the purl (Package URL) equivalent of surl:mystery, for stuff like Claude Code, which now only supports running a script to install? It does have a pretty easy to read install script, but the docs don't suggest reading it before running it as an option, they just say to run it https://code.claude.com/docs/en/setup

    Also it doesn't address mold: harmful on bread, wonderful when intentionally added to cheese

    Edit: Claude Code has a homebrew cask, and homebrew supports Linux (I haven't been using it on Linux so it didn't occur to me when reading this). It can be specified in purl using pkg:brew.