# brege.org full text > Wyatt Brege publishes essays, recipes, data science projects, and software. This file contains plain text from the curated pages listed in /llms.txt. ## Biography URL: https://brege.org/about/ I simulated black holes-neutron star mergers for the SXS collaboration as a graduate student at Washington State University. These simulations involved using advanced numerical algorithms with the Spectral Einstein Code on high performance computing clusters using hundreds of CPU cores. My undergrad was at Grand Valley State University where I studied physics and math. I am also a professional chef. My culinary specialities are seafood and organic produce, although data suggests soups and sauces are my truer expression. My most natural state is in raucous, high-throughput kitchens. I’m fond of fermenting, pickling, brewing, smoking, and curing. While these require time, at go-time my cooking is geared towards speed, detail and efficiency. I’ve been a Fedora Linux user for a while, since fc14. I enjoy tinkering with computers. I have built and restored many, as well as home servers, cryptographic miners, an automatic CD ripper, and made various media projects involving computer parts sourced from atypical places, e.g., the WSU Surplus Store. I have worked with every Raspberry Pi board since their debute. I have a server that I practiced maintaining a LEMP stack on. Softer things.. I love hockey, fishing, sometimes leathercraft and woodworking, a fondness for translated lit, HBO, and cat’s cradle. Some more thoughts.. I closed out my academic life at the end of 2017, finding a different path, yet still evermore envious of all of the incredibly mindful people I got to know through my journey. I am forever grateful for the guidance that David Austin, Milun Rakovic and Matthew Duez, my advisors, have given me. I owe my academic mentor, Karen Gipson, an unbridled thankfulness for my academic compass, and for her guidance to pursue a life out West, where I could be the best me I could ever have dreamt to be. I enjoy teaching, working through the hardest problems, complex puzzles, reading, basically all of the things an academic does, but when I measured myself–my work ethic, imagination, drive–I never truly felt I had their same gift in that space. It’s worth noting that gift is not synonymous with ’less effort’: archetypes in any discipline do not achieve without trying–you can’t. There are no Will Hunting’s in this world. It’s this nascent difference between life on easy-mode and the ability to work with ease. The Italian word for this, I learned, is called sprezzatura. The only medium I ever found myself to have experienced this nature, deep within, was with food, and maybe most of my accomplishments there don’t exactly squeal ‘gifted’, but the way the processes click inside my brain is certainly my gift. And so, with a fresher spirit, I began cooking in Northern California making delicious food with some incredibly amazing people. I’ve been the Executive Chef of Dawson’s Bar & Grill in Dixon, CA and Slanted Tree Kitchen & Taproom in Fairfield, CA where I’ve served a variety of cuisines, delicious beer and wine pairings, and authentic farm-to-fork meals every night, both at the restaurant and on location at Eatwell Farm. I recognize that there is a forever difficult access problem shared between STEM and culinary. Cooking, coding, and calculating is all French to people, requiring a lot of will and patience, and a lot of suck. This comes back to my marriage of food and computers: recipes, like code, as well as the creative process, are better served in openness, source and all. Part of this is emblematic of the food and beverage world itself, while also challenging is an oversaturation of information (in everything) to critical fatigue these days. While we can follow recipes as well as journals, what we lack is structural tooling: $$food \in\{ \textrm{culture}\}$$ Something akin to sheet music, grammar structure, i.e., systems which let us experience flavor abstractly the way a musician hears melody, notes, through page, or how a writer masterfully articulates internal dialogue within her prose. Useful for design, pictures and numbers alone fall short in the dynamic creative processes of these three expressions of culture. What’s unfair with food is the lack of an ability to construct our ideas visually in the absence of sensation. Yet, it is enough for me to remain hopeful, that these modes of culinary structures can be discovered and made more intelligible to us. [ my resumé ] ## Wyatt Brege URL: https://brege.org/cv/ Expertise computing data science artificial intelligence software engineering machine learning full-stack development physics & mathematics mechanics general relativity fluid dynamics numerical methods culinary arts menu profit analysis and documentation systems from-scratch, seasonal & farm-to-table cooking pairing dinners and pop-ups pedagogical training and leadership Selected Work monitorat is a federated, continuous dashboard and documentation framework for Linux homelabs with a themeable and extensible widget system. python, flask, javascript, html, css, yaml, docker, systemd, widgets, csv, homelab, pypi Demo Source PyPI Docker oshea is a Node.js Markdown-to-PDF document plugin framework featuring archetyping, Claude Code Skills, YAML workflows, and multi-level QA suite. node.js, yargs, puppeteer, markdown-it, js-yaml, ajv, plugins, archetypes, docs, recipes, books, cover letters Source npm Docs Plugins Agents brūki is a self-hosted screenshot tagger, sorter, and retrieval app using machine learning via OCR, CLIP, and VLM image processing. python, flask, sqlite, pandas, numpy, pillow, pytesseract, pydantic, pytorch, clip, umap, hdbscan Source Notebooks the-flavor-network is an interactive flavor-pairing and recipe-discovery tool built from well-respected culinary texts, a large recipe corpus, and featuring network graphs built on a weighted Jaccard similarity algorithm. hugo, papermod, javascript, vis.js, fuse.js, flask, sqlite, uwsgi, nginx, systemd, recipes, data science Website Core Source aoife is a mixed-media poster matrix engine integrating a dozen APIs for collage building, cover-art search, and artwork discovery. react, typescript, vite, flask, python, websocket, zustand, tmdb, openlibrary, musicbrainz, cypress, biome Demo Source See github.com/brege for a complete list of software projects. Professional 2023, Data Science Fellowship, The Data Incubator, San Francisco, CA 2020-2022, Restaurant Consulting, CA, MI 2019-2020, Executive Chef, Slanted Tree, Fairfield, CA 2017-2019, Executive Chef, Dawson’s, Dixon, CA 2013-2017, Research Assistant, Washington State Univ, Pullman, WA 2010-2017, Teaching Assistant, Washington State Univ, Pullman, WA 2005-2007, Sous Chef, One Trick Pony, Grand Rapids, MI Education 2017, PhD, Washington State University, Physics 2010, BSc, Grand Valley State University, Mathematics 2010, BSc, Grand Valley State University, Physics 2007, ASc, Grand Rapids Community College Technologies supercomputers and high performance computing SpEC mpi spark stampede xsede calcul cacr.caltech programming languages and runtimes node.js python typescript c++ git javascript php bash application and visualization frameworks react flask sqlite hugo vite markdown-it d3.js chart.js vis.js fuse.js data science and machine learning scikit-learn pandas networkx tensorflow pytorch transformers open-clip numpy matplotlib jupyter seaborn clip umap hdbscan pytesseract scientific and numerical tools sage fortran octave matlab latex gnuplot paraview validation, QA, and schemas pytest mocha cypress biome ruff puppeteer ajv pydantic websocket zustand source, packaging, and distribution github npm pypi docker podman nginx systemd uwsgi addons.mozilla.org Publications Systematic effects from black hole-neutron star waveform model uncertainties on the neutron star equation of state Chakravarti, K., Gupta, A., Bose, S., Duez, M.D., Caro, J., Brege, W., Foucart, F., Ghosh, S., Kyutoku, K., Lackey, B.D. and Shibata, M. Physical Review D. 99(2), 024049, Jan 31, 2019 preprint: arXiv:1809.04349 Black hole-neutron star mergers using a survey of finite-temperature equations of state Brege, W., Duez, M.D., Deaton, M.B., Foucart, F., Caro, J., Hemberger, D.A., Kidder, L.E., O’Connor, E., Pfeiffer, H.P., Scheel, M.A. Physical Review D, 98(6), 063009, Sep 12, 2018 preprint: arXiv:1804.09823 Dynamical ejecta from precessing neutron star-black hole mergers with a hot, nuclear-theory based equation of state Foucart, F., Desai, D., Brege, W., Duez, M.D., Kasen, D., Hemberger, D.A., Kidder, L.E., Pfeiffer, H.P., Scheel, M.A. Classical and Quantum Gravity 34(4) 044002, Nov 3, 2016 preprint: arXiv:1611.01159 Contributed Talks The Flavor Network Specially selected for The Data Incubator’s Capstone Showcase, Nov 9, 2023 Equation of state survey of black hole-neutron star mergers APS April Meeting, Apr 16, 2016, BAPS.2016.APR.C14.3 A high order accurate finite difference scheme with boundary closures for astrophysical simulations Northwest APS Meeting, May 16, 2015, BAPS.2015.NWS.E6.6 A stable high-order multipatch method for black hole accretion simulations APS April Meeting, Apr 12, 2015, BAPS.2015.APR.K13.9 Polymer quantum mechanics and an approach to minimal length (Poster) 19th International Conference on General Relativity and Gravitation (GR19), Mexico City, Mexico, Jul 16, 2010 Symmetry Analysis and the Lane-Emden Equation 2009 Undergraduate Symposium at Argonne National Labs, Argonne, IL, nov 13, 2009 Symmetry Analysis of the Lane-Emden Equation MathFest 2009, Portland, OR, Aug 7, 2009 Awards 2017 | 2016 | 2015, NASA Space Grant 2011-2012 | 2010-2011, Graduate Assistance in Areas of National Need (GAANN) fellowship 2009-2010, Science, Mathematics, And Research for Transformation (SMART) scholarship 2009, Outstanding Student Achievement Award, GVSU Mathematics Department Research Experience May 2013 | to | Sep 2018 Black hole-neutron star mergers and accretion disk simulations Physics Dissertation, Washington State University, SXS collaboration I evolved black hole-neutron star systems in SpEC with adaptive mesh refinement and nuclear-theory based equations of state. I implemented a shock-capturing, energy stable, multiblock algorithm, ESWENO, into SpEC to solve the fluid equations of an accretion disk on a multipatch grid structure. May 2010 | to | Aug 2010 Generalized uncertainty principle Post-baccalaureate Research, Grand Valley State University I explored numerous algebras connecting polymer quantum mechanics and minimal length. Aug 2009 | to | May 2010 Motion in two-center gravitational systems Physics Senior Thesis, Grand Valley State University A three-body problem where I evolved Hamilton’s equations using Gragg extrapolation to model chaotic particle trajectories around rotating binary gravitational systems and derived a non-obvious integral of motion. Aug 2009 | to | Dec 2009 Quasicrystals, tilings and diffraction patterns Mathematics Senior Thesis, Grand Valley State University I studied diffraction patterns of aperiodic tiles, quasicrystals, and Golden and Silver ratios. May 2009 | to | Aug 2009 Symmetry analysis of differential equations Research Experience for Undergraduates, University of Central Florida I determined the underlying Lie symmetries of the Lane-Emden equation for generalized polytropic stars. Teaching Experience S-2011 PHYS 320 Lecture, Hamiltonian Mechanics | GAANN 2010 fellowship junior-level physics majors, multi-week lecture series hamiltonian mechanics lagrangians canonical coordinates phase space poisson bracket S-2012 | F-2010 ASTR 135 Laboratory, Astronomy non-science majors astronomy solar system stars galaxies cosmology history of astronomy X-2017 | F-2014 | F-2012 | F-2011 PHYS 101 Laboratory, General Physics I algebra-based uncertainty analysis mechanics pendulum springs work and energy impulse and momentum ballistics buoyancy vibrations temperature heat S-2012 PHYS 101 Lecture, General Physics I | GAANN 2011 fellowship engine cycles thermodynamics S-2013 PHYS 102 Laboratory, General Physics II algebra-based uncertainty analysis electric and magnetic fields ohm’s law circuits induction reflection and refraction lenses X-2012 | S-2011 PHYS 201 Laboratory, Physics for Scientists and Engineers I calculus-based error propagation mechanics Newton’s laws friction pendulum impulse and momentum work and energy ballistics rotational dynamics buoyancy harmonics engine cycles F-2012 PHYS 202 Laboratory, Physics for Scientists and Engineers II calculus-based error propagation electric and magnetic fields RC and AC circuits induction transformers interference thin lenses Memberships c. 2013, SXS Collaboration c. 2009, American Physical Society c. 2009, Mathematical Association of America c. 2010, Omicron Delta Kappa c. 2009, Society of Physics Students (SPS) c. 2009, Pi Mu Epsilon (Iota chapter) ## Contact URL: https://brege.org/contact/ email type details email wyatt@brege.org pgp key EB3F25A8C5579EA6 · Ubuntu keyserver phone calls spam is out of control. if you’ve tried to reach me by phone and gotten the assistant, please leave a voicemail or voice transcript and i will get back to you when i am able. socials type details signal @brege.01 mastodon @brege@mastodon.social matrix @brege:matrix.org fangman socials *dies* i rarely open instagram or linkedin unless i am nudged to do so by email. response timescales are on the order of ~weeks or ~months. ## Exploring my camera, screenshot, and image activity URL: https://brege.org/post/image-activity/ This project is part of a series of data exploration projects around my personal computer usage. GitHub link: github.com/brege/image-activity Overview Generate heatmaps and histograms of image saving activity over hours, days, and months Use file timestamps, modified-times, EXIF, and regex parsing for refined image discovery Add bands and markers for major life events Background I wanted to determine if my image activity is dependent on major events and device purchases in my life. do I tend to take more pictures during certain times of year? how has my screenshot usage evolved over the last 15 years? do I have “honeymoon” periods after a device purchase? in what ways has my camera and screenshot usage changed between being an academic, chef, and developer? I’m not a social media person, although my mastodon did see an uptick of usage following my hip surgery, where I began hiking and foraging a lot. My image activity fits in three main categories: camera: storage of camera photos from my phone screenshots: screenshots on both my laptop and phone internet: pictures downloaded from the internet Gallery I’ve marked in these first line charts, Camera Usage and Image Capture Concurrency, times when I’ve purchased a major device (a new phone or laptop) and a couple key periods of my life. These plots have all been normalized to a 0-100 photo count scale. Camera Usage From 2010 to 2017 I was a Physics TA and, following my 2014 physics prelims, a computational astrophysics doctoral researcher. I began attending conferences in 2015, exploring places around Pullman, WA during these researcher years there. At the end of 2017, I left that life. I embraced my love of food and cooking and became a professional chef for a number of years thereafter, including the Covid-19 pandemic. This period of my life saw a greater number of photos taken: pictures of plates, menus, schedules, etc. My camera photos before this time were mostly non-work-related: travel, events, and pets drove image origination. Image Capture Concurrency Heatmaps I only have one experience with online coursework: the data science bootcamp I attended in the fall of 2023. This period did not have a major impact on my screenshotting habits. There are three principal areas in which screenshot usage was more frequent: The creation of my website brege.org around August 2016. As an executive chef, screenshotting is recurrent for scheduling, text message records, receipts/purchase dates, etc. Agentic-driven coding workflows, beginning midway through 2025, saw a surge in screenshot usage. Screenshots have become a large part of my front-end debugging workflow for web app development–extending well beyond data-structured Cypress end-to-end tests. I did not find my screenshot usage noticeably change during my brief stint with online coursework. In general, it appears that I take more screenshots on desktop earlier in the week and in the afternoon (averaged over the last ~15 years). To my surprise, the heatmap for screenshots on my phone have nearly identical densities. I assumed this would be biased toward the weekend and closer to 17:00 because of sports and restaurant dinner service. Camera usage frequency, on the other hand, is made distinct by day of week only on density during Thursday evening and Saturday afternoon. It’s especially featured in both my Chef days and post-op mobility. Histograms By device and source, then binned on hours of the day, day of the week, and month of the year, histograms provide a finer distribution in one dimension. For the hourly concentration of all three photo habits, my activity roughly follows a Boltzmann distribution. These distributions generally peak at two distinct hours: camera photos and screenshots center around 15:00 internet photos are generally concentrated around 20:00 Each bin is averaged for each picture type over the last 15 years, regardless of timezone. Image activity generally increases at the beginning and end of standard university semesters, which also include the height of summer and the holiday period when I am always always travelling. Screenshotting is highest in the fall to mid-winter. In my experience, restaurants are historically busier between, roughly, Friendsgiving and Father’s Day. Camera usage also largest during high summer. Beach. Hiking. Produce selection during chef years. ## 20 years of email URL: https://brege.org/post/email-analysis/ I’m not intentionally a data hoarder. I just haven’t been an effective or aggressive email deleter or filter user. This has changed some in recent years, as the techniques for spam emails have evolved to covertly trojan “survey” subterfuge into my mailbox. I have survey fatigue Surveys are marketing emails. I can’t believe I used to take the time to respond to some of them. An analysis on my email history has shown that my hunch on survey spam is correct. Around 2023, I began marking all surveys as spam, and I’ve got the data to prove just how rampant companies have used surveys to get their brand in your inbox. Emails that matter My main goal in exploring my emails in-depth was to build a predictor of whether an email had any future usefulness. Mail from friends and family, correspondence with students, receipts and financial records, etc. fit the binary of keep. After I manually processed this massive backlog of email (with great help of Thunderbird’s filters), what I found I discarded most, besides spam, were surveys, newsletters, and other mass mailers. What I found, qualitatively, was: imperfect spelling, capitalization, and grammar little-to-no HTML markup all emails meant only for me sans phishing and spam These traits defined true keepsakes. Introducing sanoma en.wiktionary.org/wiki/sanoma sanoma (noun) Finnish message, communication (a communication or the content of a physical message; also the message contained in some act or expression such as a work of art) sanoma (github.com/brege/sanoma) uses YAML workflows to define multi-step analysis pipelines. The workflow runner automatically discovers and executes tools from the sanoma/analysis/ and sanoma/plot/ directories, making it easy to chain data extraction, filtering, analysis, and visualization into reproducible pipelines. I developed this YAML workflow method in my Markdown-to-PDF project–oshea–where I realized comprehensive end-to-end tests were just manifest workflows. It’s an intuitive way to string command line sequences together. The pipeline term in machine learning/data science is congruent to this system. Data Mining While much of this can be done in a Jupyter notebook (far easier to refresh plots this way, although :MarkdownPreview in Neovim is sufficient), I built this project as a way to data-mine my own activity. I also want to create a visualization harness for many things on my computer: text message history email history screenshot frequency browser history and bookmarks Because email is text-based, and because my first concept of “AI” was the need for combative spam filters that have been built over the last thirty years, email felt like a good starting point. Grad-school Emails The monthly timeline reveals the academic year rhythm: high volume during active semesters with dramatic drops during summer breaks and winter holidays. The 2016-2017 dip corresponds to the dissertation defense period, where militant email sanitation was a reprieve from LaTeX and simulation monitoring–hence the dip. My personal dataset has about 35K emails between my grad-school emails and my current website’s personal email. Not included are my Gmail and undergrad email(s). I plan on synchronizing those at a later date. Grad-school Timeline Seasonality WSU’s Okta system required changing passwords every 6 months, and some time after my defense my account died. I am thankful that I had a Thunderbird profile tucked away on a drive that allowed me to recover all of my university emails. Grad-school and onward Histogram The year-over-year histogram demonstrates consistent academic seasonality, with September-April peaks and May – mid-August valleys across all years of graduate study. Even with teaching summer labs, the bureaucratic pressure in the summertime dies. I loved teaching in the summer. Spam, Marketing, and Surveys The spam timeline shows minimal marketing emails pre-2010, followed by a sharp increase around university enrollment. By 2015, spam reached 60-80% of all emails and has remained consistently high. The GDPR implementation around 2018 created a spike in unsubscribe language as companies scrambled to comply with new regulations. Marketing Spam Trends The tail in the beginning of this timeline is presented for context. It only includes a “purified” hotmail account mailbox from my teenage years that extended a bit into my undergrad years. Those years overlap with Gmail usage (not integrated into this data) and my GVSU university email. Keyword Buckets Another useful filter for spam emails is checking for keywords like unsubscribe in the message body. unsubscribe_bait dominates with over 12,500 matches, followed by satisfaction surveys (~8k) and direct “survey” requests (~4k). This reveals how modern marketing shifted from direct sales to engagement-focused tactics requesting feedback and reviews. Conclusion: Satisfaction Surveys are the new email cancer The heatmap (filtered to post-2010) shows “satisfaction” spam as the most persistent threat, maintaining 20-25% frequency from 2012 onwards. Survey-based spam shows steady growth, intensifying after 2020, when both GDPR constraints pressured companies to invent new angles of attack, becoming increasingly desperate for customer “feedback” (attention) during the pandemic. Satisfaction feedback surveys are advertisements. ## How much of one single food do you need to eat in a day to satisfy protein demands? URL: https://brege.org/post/protein-calculator/ I have now celebrated one year of resistance training. One of the benefits of consistent, hard exercise is that it naturally steers you toward a healthier, more informed diet—and makes it easier to keep the undesirable effects of indulgence at bay, if you try. Most anyone in the gym has heard the adage to eat “1g of protein per pound of (goal) bodyweight per day.” Research has shown this figure isn’t accurate; it’s more like 60–70% of that (and that’s at peak resistance training intensity) for ideal muscle mass gains 1 2 3 4 5. For example, if you weigh 175 lbs, this guideline states you should eat somewhere between $$ \begin{aligned} \frac{\textrm{protein}}{\textrm{day}} &= \left[0.35,0.75\right] \cdot \left( \text{g} / \text{lbs} / \text{day} \right) \cdot 175 \textrm{lbs} \\ &= ~ \left[60, 140\right] \textrm{g/day} \end{aligned} $$ where we have used the shorthand $$ \text{g} / \text{lbs} / \text{day} \coloneqq \frac{\text{protein (g)}}{\text{bodyweight (lbs)} \cdot \text{day}} $$ But for nearly everyone landing on these pages, the goal is fat loss. Higher protein (and fiber) intake will help you feel fuller for longer and can help people new to fitness and diet control their cravings. Following the guidelines is also made more tedious by the near-constant arithmetic at the grocery store. While it’s good to check the labels to learn what’s actually in your food, keeping a running total and hitting your target each day becomes a challenge. You wind up relying on apps, breaking meals into chunks: “10 grams here, 25g scoop there… how much protein is in a palm-sized chunk of chicken breast again??” And then there’s the protein in bread, grains, bars. It’s nearly impossible to balance all that against metabolic calories if you’re even trying a little. Compositional Thinking Strategy Here’s my take: Ratio counting. As a chef, there’s a reason the imperial, fractional system works: ratio. It’s easier for me to think about doubling, tripling, or halving depending on what I’m buying and who I’m cooking for. Our days are divided into twelves and therefore 2’s, 3’s, and 4’s. Naturally, our meals are spaced that way too. The value of our base10 system cannot be overstated, but I have a difficult time what eating or preparing 10% less of a meal or recipe means vs doing a quarter or half. For the 175 lbs individual, the ranges of protein consumption needed are pinned by three characteristic quantities: $\textbf{MAX} = $ 100% efficiency in protein synthesis $\approx 1.6 \text{g} / \text{kg} / \text{day}$ 0.75 $\coloneqq 0.75 \times \text{MAX} \approx 1.2 \text{g} / \text{kg} / \text{day}$ $\textbf{RDA} \coloneqq 0.5 \times \text{MAX} \approx 0.8 \text{g} / \text{kg} / \text{day}$ where $\text{RDA}$ is the Recommended Daily Allowance, and $\text{MAX}$ is the Maximum Efficient Intake. The “$0.75 \times \text{MAX} \approx 1.2 \text{lbs}$” is roughly the target for most people who weigh 175 lbs (80 kg), on average. 1 Tap here to see the ranges for this weight... For reference, the ranges of protein consumption needed for the the 175 lbs individual are: $$ \text{<65yo + RE:} \quad \left[ 0.8,\ 1.6 \right] \ \text{g} / \text{kg} / \text{day} $$ $$ \text{⩾65yo + RE:} \quad \left[ 1.1,\ 1.4 \right] \ \text{g} / \text{kg} / \text{day} $$ where $\text{RE}$ means “Resistance Exercise”, or, in pounds: $$ \text{<65yo + RE:} \quad \left[ 0.35,\ 0.75 \right] \ \text{g} / \text{lbs} / \text{day} $$ $$ \text{⩾65yo + RE:} \quad \left[ 0.55,\ 0.65 \right] \ \text{g} / \text{lbs} / \text{day}. $$ Implementation: The Protein Efficiency Calculator The table below answers a simple question: how much of one single food do you need to eat to hit your daily protein target? Input your weight, toggle metric or imperial, and adjust units per row—grams, ounces, scoops, each. It’ll show you the amount needed to hit benchmarks in the range of $\text{RDA}$ to the $(\text{MAX})$ intake. Based on resistance training status and the latest research, a sliding scale in this range will allow you to estimate your required protein demands. Quantity: the number of units in the Unit/Size column you need to eat to acheive the chosen protein target, per day, for your input weight. Adjusting the Protein target slider can be thought of as a direct conversion of protein to training intensity, from sedentary/$\text{RDA}$ all the way to the $\text{MAX}$ intensity threshold. Body Weight: lbs kg Protein target: 0.8 g/lb (RDA) [140 g] Source Protein/Unit (g/Unit) Quantity (Unit) Unit/Size Calories/day (kcal) Cite Eggs, whole 84 each grams dozen 840 [1] Chicken Breast, Raw 105 pounds ounces grams kilograms 735 [2] Beef, Ground (85/15) 105 ounces pounds grams kilograms 975 [3] Greek Yogurt (2%) 88 cups ounces grams 32oz tub 600 [4] Cottage Cheese (2%) 72 ounces grams cups 24oz tub 600 [5] Tree Nuts (Avg) 23 ounces grams cups 850 [6] Peas, Frozen 6 ounces grams cups 100 [7] Chili (Est.) 30 cups ounces grams kilograms bowls 480 [8] Salmon, raw 100 ounces grams pounds kilograms 1100 [9] Pork Chop, Boneless 104 ounces grams pounds kilograms 760 [10] Whey Protein Powder 25 grams scoops 130 [11] Vegan Protein Powder 21 scoops grams 150 [12] I’ve also included the daily Calories you’d likewise take on per food item. You’ll note that high carbohydrate (peas, chili) and especially high fat content (mixed nuts) greatly diminish the remaining calorie budget in the day. Conversely, protein powders, including the vegan kind, substantially lower the overall caloric footprint. The Protein Efficiency Matrix While the above tool scales protein needs to an individual’s body composition, it’s also worth viewing high-protein foods in a way that’s independent of bodyweight. The protein-to-calorie efficiency of a food source is a fixed property — it doesn’t change based on who’s eating it. With that in mind, the Protein Efficiency Matrix below expresses the relative caloric density of each food source. It compares the efficiency of each against the others in the table. Your weight and training status don’t matter here — this table is the same for everyone, assuming equal daily protein intake. The first column shows a simple mean of each row’s relative efficiency compared to others — a rough estimate of how each food stacks up overall. Smaller numbers are better. High-fat items like salmon and nuts, and high-carb ones like peas and chili, form relative “islands of inefficiency” among high-protein sources. You can even think of this matrix as a way to zone: cutting / maintaining / bulking cycles using blues / greens / reds as a visual cue for how your shopping list and pantry pars might shift depending on your current training status. For example, Greek yogurt has over five times the protein density of tree nuts by volume. If you’re trying to control weight and meal prep, having this kind of visual measure might help you balance portions — say, between yogurt and nuts in your breakfast bowl. Note also that the red, lower-in-protein efficiency items are still quite efficient. For example, gas station treats like trollies and doritos have relative efficiency values order(s) of magnitude higher. Compared to greek yogurt, their protein efficiencies are astonomically bad $\text{eff.}\left(\text{trollies}:\text{yogurt}\right)$ $\approx 32$ and $\text{eff.}\left(\text{doritos}:\text{yogurt}\right)$ $\approx 13$. Abysmal. Discussion This lens is useful because it translates the quantities into grocery store units—like pack sizes. About a dozen eggs is one day; two pounds of beef and two pounds of chicken is about three days; a tub of cottage cheese (24oz) and a tub of Greek yogurt (1qt) is just under two days. Then 3–4 scoops of protein powder can help balance that week’s diet. There is also an upper limit to the amount of protein available on the planet. 70% of freshwater is already in use; 50% of global land space is already dedicated to agriculture. It’s a 60–40 split between plant- and animal-sourced proteins occupying this space—and both the global population and protein demand will increase by 20–25% in the next 25 years 6. From a purely resource standpoint, there will need to be a lab-grown protein synthesis renaissance. And it’s this fact alone that makes the “$1 \text{g} \ \text{protein} / \text{lbs} / \text{day}$” myth not only overly generous, but also inconsiderate of the planet’s biological limits. One-third of that is the target if you aren’t lifting. Half to two-thirds is more realistic if you’re engaged in moderate to heavy resistance training. References Nunes, E. A., Colenso-Semple, L., McKellar, S. R., et al. (2022). Systematic review and meta-analysis of protein intake to support muscle mass and function in healthy adults. Journal of cachexia, sarcopenia and muscle. https://pubmed.ncbi.nlm.nih.gov/35187864/ ↩︎ ↩︎ Schoenfeld, B. J., & Aragon, A. A. (2021). The effect of protein timing on muscle strength and hypertrophy: A systematic review and meta-analysis. Journal of the International Society of Sports Nutrition. https://link.springer.com/content/pdf/10.1186/1550-2783-10-53.pdf ↩︎ Phillips, S. M. (2014). A brief review of critical processes in exercise-induced muscular hypertrophy. Sports Medicine. https://link.springer.com/article/10.1007/s40279-014-0152-3 ↩︎ Moore, D. R., Atherton, P. J., Rennie, M. J., & Phillips, S. M. (2011). Resistance exercise enhances mTOR and MAPK signalling in human muscle over that seen at rest after bolus protein ingestion. Acta physiologica. https://onlinelibrary.wiley.com/doi/abs/10.1111/j.1748-1716.2010.02187.x ↩︎ Paddon-Jones, D., & Rasmussen, B. B. (2009). Dietary protein recommendations and the prevention of sarcopenia. Current opinion in clinical nutrition & metabolic care. https://pmc.ncbi.nlm.nih.gov/articles/PMC2760315/pdf/nihms111079.pdf ↩︎ Smith, K., Watson, A. W., Lonnie, M., Peeters, W. M., Oonincx, D., Tsoutsoura, N., … & Corfe, B. M. (2024). Meeting the global protein supply requirements of a growing and ageing population. European journal of nutrition. https://pmc.ncbi.nlm.nih.gov/articles/PMC11329409/ ↩︎ ## Non-linear Weightlifting Progression Calculator URL: https://brege.org/post/nonlinear-weightlifting-progression-scheme/ Consider the Epley formula for estimating one-rep max weight: $$ W_\text{1RM} = W \cdot \left(1 + \frac{R}{30}\right) $$ To compute your one-rep max weight for a given lift, $W_{1\text{RM}}$, you simply input the weight lifted, $W$, and the number of reps performed before failure, $R$. This formula has been empirically validated 1 and is a useful tool not just for estimating your max weight for a given weight-rep pair $\left(W, R\right)$, but also to compute the number of predictable reps you can do at any other given weight, relative to your one-rep max. This is quite useful for plateaus. For example, if you get stuck progressing the Overhead Press to 115 lbs for 5 reps after successfully performing the OHP for 110 lbs for 5 reps, you may need to strategize. Using the Epley formula, to go from $$ \left( 110\text{lb}, 5 \text{reps} \right) \rightarrow \left(115 \text{lb}, 5 \text{reps}\right), $$ you are effectively increasing your one-rep max: $W_\text{1RM}: 128 \text{lbs} \rightarrow 134 \text{lbs}$. Our goal here is to effectively increment your $W_\text{1RM}$ in smaller steps: $$ \small \left( 110\text{lb}, 5 \text{reps} \right) \rightarrow \left(115 \text{lb}, 4 \text{reps}\right) \rightarrow \left(110 \text{lb}, 6 \text{reps}\right) \rightarrow \left(105 \text{lb}, 8 \text{reps}\right) \rightarrow \left(115 \text{lb}, 5 \text{reps}\right) $$ because this is the same as $$ W_{1\text{RM}}: 128.33 \text{lb} \rightarrow 130.33 \text{lb} \rightarrow 132.00 \text{lb} \rightarrow 133.00 \text{lb} \rightarrow 134.17 \text{lb} \\ W_{5\text{RM}}: 110.00 \text{lb} \rightarrow 111.71 \text{lb} \rightarrow 113.14 \text{lb} \rightarrow 114.00 \text{lb} \rightarrow 115.00 \text{lb} $$ I refer to this as the Epley pathway. Because the Epley formula is nonlinear, this requires an iterative approach. I’ve made a calculator that will help you find this path over different $\left(W, R\right)$ pairs. It defaults to using a range of reps roughly half that of your initial number, $R_0$, and a few “sweet spot” rep values. Initial Weight (lbs): Initial Reps: Rep Range Variation: hybrid: ±R₀/2 and (8, 10, 12, 15, 20, 30) R₀±5 reps ±R₀ R₀±8 reps R₀±10 reps R₀±12 reps R₀±15 reps All reps: [0,..,30] 1RM Formula: Epley Brzycki Lombardi O’Conner Show/Hide extra notes You’ll note that I’ve generalized this calculator to also include different formulas that different apps use: $$ W_{\text{1RM}} = f(W, R) $$ Try changing the dropdown to see how different curves generate slightly different effective rep ranges. To read more on the survey of different calculations, check out the One-repetition maximum article on Wikipedia. Epley Pathway Weight (lbs) Reps 1RM (lbs) Effective 5RM (lbs) More details of different, specific formulae for Epley 2 Brzycki 3, Lombardi 4 and O’Connor 5, and several complimentary research articles 1 and 6, are available. My Progression Scheme This makes it straightforward for me to also compute the warmup sets needed for my leading barbell exercise. Recently, I’ve found good success in pyramiding warmups using my calculated $\left(30, 20, 10\right)\text{RM}$’s for $\left(12, 8, 4\right) \text{reps}$, respectively. In addition, another scheme I’ve been using for strength-focused exercises has been, after 3–6 reps of heavy weight for three sets, to drop set into $\left(10, 20\right)\text{RM}$ for $\left(8, 12\ldots\text{amrap}\right)$, respectively, to increase my work volume without chewing up my joints, leaving $\sim \text{2}$ $\text{rir}$. Here, $\text{amrap} = $ “as many reps as possible” and $\text{rir} =$ “reps in reserve”. My thoughts here reflect the goal to cover warmup (3), strength (3–4), and hypertrophy (2), in a single leading compound exercise. Progression Chart Example: Set Breakdown for Leading Barbell Lift. The width of the bins represents the number of reps, $R$, denoted inside the bins. The weights, $W_{N\text{RM}}$, are in lbs, represented as the height of the bins. From left to right, the weights in my scheme are: 30RM, 20RM, 10RM, 5RM (3x's), 10RM, 20RM. This provides a visual sense of volume in each zone of the exercise. If you change the weights in the calculator, this plot will update. Because this is a hybrid model for strength training and hypertrophy, it will bind the rep ranges between 3–6 reps. The $y$-axis is truncated at ⅔ $W_{\text{30RM}}$. Possible Improvements Create a similar pathway table for the goal of adding a rep, instead of adding $5 \text{lbs}$ to the bar. Will take a good amount of effort. Implement a pyramid scheme with broader rep ranges in the progression chart histogram. I haven’t thought much about this yet, but when I can hit 7 reps on heavy compound lifts, I feel like I’m entering a moderately safe 7–12 rep range. At that point, the effort level shifts to something different. The Epley model is just one of many. I haven’t explored the others yet because I could solve this with fractional arithmetic in my head while “ape-brained” in the gym. However, adding a dropdown toggle to choose different models, and referring to recent literature on advancements in curve fitting, would make this tool more robust. Similar to how the Opus audio codec performs at different fidelities with various bitrates, I’m sure that the pathway from 1RM to 30RM follows a more complex, multi-fitted approach. References https://opensiuc.lib.siu.edu/cgi/viewcontent.cgi?article=1744&context=gs_rp ↩︎ ↩︎ https://scholar.google.com/scholar?hl=en&as_sdt=0%2C23&q=+Epley%2C+Boyd+%281985%29.+%22Poundage+Chart%22.+Boyd+Epley+Workout.+Lincoln%2C+NE%3A+Body+Enterprises.+p.+86.+&btnG= ↩︎ https://scholar.google.com/scholar?hl=en&as_sdt=0%2C23&q=+Brzycki%2C+Matt+%281998%29.+A+Practical+Approach+To+Strength+Training.+McGraw-Hill.+ISBN+978-1-57028-018-4.+&btnG= ↩︎ https://www.unm.edu/~rrobergs/478RMStrengthPrediction.pdf ↩︎ https://www.medicalalgorithms.com/equation-of-oconnor-et-al-for-predicting-the-one-repetition-maximum-1-rm ↩︎ https://www.researchgate.net/profile/Marcelo-Silva-12/post/Prediction_of_1RM_in_muscular_strength_what_is_the_better_7-10_rep_or_5-7_rep/attachment/59d6235b79197b8077981b20/AS%3A306915098202113%401450185669112/download/478RMStrengthPrediction.pdf ↩︎ ## Foraging Humanity URL: https://brege.org/post/foraging-humanity/ This is a small survey of a band, a magazine, and a show that each provide unique lenses into our world. Absent celebrity, each of them forage their way through humanity’s discards, revealing to us emotions that are truer to our spirit and more honest about our struggle. The Books The Books were a musical duo that made music from found sound recordings. Like a collage, bits of old cassette tapes discovered at garage sales, thrift stores, and thrown out are pieced together through melody with minimal instrumention to create emotional, sonically beautiful tracks. This mosaic of found sound and vocal samples in large part created a music genre of its own. Well, mostly. I think most of us have heard those tracks that kickstart or bridge their songs with an audio clip taken from some movie or speech. But The Books did this to the extreme, mixing these sounds into their songs as their own instrument. The Books - Smells Like Content (3:42) In fact, each track is filled with an unimaginable number of recordings–sounds that bleed with every emotion of the original, forgotten storyteller within them. There are also aleatoric takes (re: “by digitizing sound and thunder”) that fold more natural sounds in, but not like Stomp or Anathallo. What compelled me most was the unscripted essence of the recordings. I wondered about the people that may have listened to some of those source tapes on long road trips, or recorded there. Like archives of thoughts from carpeted basements, strung together from one fried thought to the next. The Books - All Bad Ends All (2:42) Found Magazine Found Magazine was created by another duo, based in Ann Arbor, Michigan whose pages were each a collage of scrap notes and photos sent in to them. In it, glimpses of everyday minutia are scanned into its pages, without continuity, often bearing the weather and stains obtained in journey from the trash. Source Amid a probable banality, the subjects of these clippings range anywhere from odd grocery store requests to people dealing with heavy topics like abortion, divorce, and suicidal thoughts. I was in my very early twenties when my friends introduced me to it, and while I had every opinion imaginable about the world, I certainly didn’t suffer any of the experiences these notes conveyed. There was sheer earnesty to them: a glimpse into worlds you couldn’t ever possibly live. People’s experiences simultaneously made out to be both relatable and unlivable. Source It is no wonder why this magazine was so popular in the US penal system. Shy of living in it, it’s these discards that are made to share our bond. To me, there is an inner nature here lost in most documentaries (ugh, Netflix), let alone all reality TV shows: they are over prompted and epicly driven. But the stories in Found were of a different species, one that was free of slant, rich in humor, tied deeply in emotion and all of our imperfections. How To with John Wilson Source Arguably the most inaccurately titled show ever, John Wilson sets out in New York City with nothing but his video camera, as he has done since he was a child, recording literally everything. In his docuseries How To with John Wilson, there are shots of spills and overflowing trash, candid public moments and private invitations, people spontaneously napping or ritualistic maneuvers that all walks of city life take. But moreso, it’s the profoundly deep cuts into the human experience accompanying the imagery that make it so special. YouTube: How To with John Wilson - Touch and Go What I loved about this show, which thankfully made it to (but sadly ended in) three seasons, was the juxtaposition of Wilson’s unpolished interview/questioning skills with a carefully well thought-out narrative. There is an incredible mastery of using random, second-long bits to string together larger, much broader points about our experiences in the world. The travelogues benefit from people living in tight proximity in an entirely manmade habitat: The City. Even when journeying out West (I forgot why?) to fail in filming Burning Man, Wilson somehow winds up inside an underground, decommissioned nuclear launch bunker that feels just as claustrophobic and unnatural as the city he’s escaped. Conclusions While unfortunately these mediums aren’t widely known nor around anymore, I think about them often when I forage for different things on my hikes. So maybe I’m intrigued by The Books, Found, and John Wilson for a similar lust, that it hits such a similar psycological mechanism is probably no accident. I think about random notes I’ve found, the content of which often surprised me. I also imagine all the little notes I’ve lost whose finder must have been just as confused upon reading. I guess that’s my larger wonder. We don’t always know who our audience is. And I think that’s actually quiet wonderful. ## Some Sweet Thoughts on Sugar URL: https://brege.org/post/sugar/ Chefs work with a wide variety of different sugars and syrups. A small bit of sweetness in a savory dish can bring balance just as well as salt or acid do to sweet dishes. Sometimes this can be accomplished via onion, carrot or tomato in a rich sauce, or via tree fruits, berries or wine in an aromatic one. Sweetness is a part of the flavor balancing equation. Sugar is energy dense. It stores well. It is the second fastest “macro” metabolized by our bodies. Like the fastest (alcohol), we associate its taste with peak ripeness since it expresses itself in fruit through juiciness which elicits immediate opportunity modes within our survival brain. One can practice a great deal of creativity with simple table sugar and their stove top range alone. In addition to practically any sweet confection, sugar is melted into water for simple syrup in cocktails, into caramels and all its derivative forms (butterscotch, toffee, gastriques 1, etc.), and heated in puddings, pot de creme and creme anglaise. All in all, understanding that sugar has a particular behavior when it melts carries over to practically every dessert sauce in existence. Melting sugar to different temperatures and playing with ratios of milk fats and proteins explodes a whole catalog of dessert sauces. Molasses is the leftover byproduct from refining sugar from sugar cane, pomegranate, or beets, each of which imparts complex flavor profiles and adds many of its nutrients to the syrup. Molasses is the brown in brown sugar. Most barbecue sauces call for molasses and/or brown sugar. I tend to not carry brown sugar in my kitchens because of its propensity to harden into an annoying brick–opting instead for molasses and white sugar always, which allows you to play with different types of molasseses and provides an easy to adjust bitterness knob. You can also “make” brown sugar-adjacent substances by mixing honey, maple syrup or agave with granulated sugar (try it!). In truth, I find there is little advantage keeping brown sugar on hand all together; its shelf life is an order of magnitude shorter than its two parent items, recipes often call for light or dark brown sugar ($\sim$ 1 or 2 Tbsp of molasses per cup of sugar, respectively), adding needless inventory. Perhaps an issue is the variability of molasses spoonfuls, but then again brown sugar introduces pack as a new parameter. Two especially irreplaceable sugar vehicles come in the form of honey and maple syrup, notably for breakfast items but just as essential for pastries, coffee drinks, and cocktails. I use honey in every vinaigrette recipe. Maple syrup has a high warming association not replaceable with spirits or bitters. Advocating for the use of maple, like honey, requires our agricultural industries to plant more trees and plow fewer fields, creating habitat for creatures that take flight. As a sweetener, honey is better for tea and maple for coffee. Flipped the other way, I find the flavor combination of coffee and honey just as odd as that of a vodka and coke! 2 With all that said: consuming less sugar is probably a good idea. Any modern diet requires an elimination of sugar. I have made an effort in previous kitchens to un-crutch myself from its use, and to always explore its substitution via honey or maple or juice reductions where ever I can (this is a great way to make friends with bartenders too, by the way). Corn syrup is mostly employed because it doesn’t crystalize, opacify, or dye candies, but is largely unnecessary otherwise. Now that its production is tied to the energy sector–which has made the price of an ear of corn skyrocket in the last twenty years–its use in cooking and baking is, in my opinion, best avoided altogether. Gastriques are made by combining vinegars and caramels, and are a fantastic way to use up expiring fruit and deglazing a cooking pan (like a rondeau used to caramelize onions) that pairs with steak, pork, or producing a glazing crostini toppings. ↩︎ In Ecce Homo, Nietzsche says he does not drink coffee because it spreads darkness, yet drinks tea but only in the morning (p. 21). For some reason, I tend to remember that when choosing honey or maple for sauces and cocktails and it sort of becomes a pneumonic for me that honey goes in lighter mediums and maple syrup in darker ones. Usually. ↩︎ ## The Flavor Network URL: https://brege.org/post/the-flavor-network/ dynamics zoom lock lens: similarity affinity hybrid This tool allows you to explore the flavor network, a social graph for flavor profiles. The network is based on the Flavor Bible and soon the companion book What to Drink with What You Eat. Search for an ingredient you like, and the graph will refine to give you a web of ingredients that share highly similar flavor profiles. Then, click on a new ingredient in the network to add it to your recipe above the search box (or to remove it). Clicking on a recipe item or a node has the same effect. Search is not sorted by the flavor metric, it is instead sorted lexically. In this way, you can start building out recipes, menu items and tastings from a consensus of flavor combinations. Overview What you are seeing: the nodes with color are your recipe ingredients the suggested ingredients are determined by Jaccard similarity (default) or by one of the other options in the ‘lens’ dropdown if you choose the hybrid option, the suggested ingredients are fiducially split between: the most similar ingredients in the flavor metric (similarity) the most similar ingredients by text ranking (affinity) the edges from one ingredient to another are weighted by a consensus of chef and expert opinion 1 if your ingredient is missing, it was likely missing in the book (quinoa) or was pruned because its mentions were too sparse 2 If a node is present without an edge, it means that the ingredient has a very good similarity with your recipe, but wasn’t mentioned (connected) in its book-entry literally. Reconstructing ‘ghost’ entries and connections by training a model with listed affinities is one of the ultimate goals of this project. The amount of suggestions gradually decreases as you add more ingredients to your recipe. This is for performance reasons, as with the physics simulation disabling itself at destabilization. When that happens, maybe you discovered a flavor affinity. I have included autogenerated links from your recipe basket to a few popular recipe resources above the network graph, including a database for cocktail mixing. 3 Why and how Understanding why I chose this text for the dataset is probably already apparent to its readers, but the key thing to take away is that the authors did a fine job formatting something computer readable and human usable–a rare feat! Most importantly, it is aggregated from chefs, from real humans in kitchens doing what works, what’s delicious, and what’s in season. Recipe API’s don’t have this kind of granularity, many rely too heavily on user data to seed recommendations. To my knowledge, this is the only dataset of this kind. Technical tools only involve vis.js for visualization and BeautifulSoup for parsing. The data is scraped from the Flavor Bible, and the similarity matrix is calculated using Jaccard similarity for pairwise comparisons. I am working on cleaning up the initial data with some mix of modern techniques with some concoction of nltk, fuzzywuzzy and/or Bert. The current form was done entirely with regexp/bs4 parsing. The suggested nodes can be improved by using a weighted Jaccard probability distribution (arXiv). Source code for this part of the calculation (the text → dataset chain) is available on GitHub. Inspiration In 2019, I was helping fellow chefs come up with new specials. At this point in time, we were rolling about four-ten new specials as a team every week, ranging from brunch, cocktails, lunch, football apps and our highly anticipated farm-to-fork pop-up dinners. But sometimes you just get plain stuck. A good trick, at least for creativity, is to set rules so you have some boundaries to push. But if you are going to set rules, they should at least solve a few things: do something new use something old feature three things in season I hate having extra stuff around, but I love new stuff coming in, yet I don’t like wasting things, but then I actually look forward to doing inventory. Ah, Schrodinger’s cook. Specials: we would work out new ideas together over the prep table. Sometimes ideas required working things out on paper, usually butcher’s, and occoasionally crude graphs of our plate setups evolved. These were sketches of sauce and protein layouts, heavy edges between ideas if their pairing ‘sang’, then as a guide hanging from the ticket rail on the night a feature debuted. Karen and Andrew’s book was gifted to me later that year, and it changed my game. It finally put in words a mental ranking of flavor profiles based on ingredient query. I had a good resource that gave answers, and especially new ideas, quickly. And it was thorough enough to trust. This method was so helpful, I started dreaming of a computer tool to help me sketch out this process. I remembered a reddit post that spurred others to lay out some of the underlying ideas here: overlapping communities :: compatible flavors. Broader thoughts I believe the impact of mathematical concepts to the broader culinary scope to be a major upgrade in our thoughtfulness about food. To extend its application, in creativity and clarity, not abused in statistics to pressure a sale and disable the creative mind. While I do see how a tool like this could provide immense practical application in the distribution world, my focus here is to empower chefs, bartenders, brewers, baristas, and sommeliers to create new things. When it comes to tools available to chefs, compared to musicians, writers, and artists, chef’s are unfortunately at a disadvantage creatively. Yes, we have recipes, but those are instructions, and do little to help us build on ratio or balance. What might be more helpful, I think, is a playground for putting new food ideas together. In the book, the weight of the pairing is given by the emphasis of the text: normal text means mentioned by at least one expert bold is recommended by many experts BOLD CAPS is highly recommended *BOLD CAPS is the “Holy Grail” of pairings If the ingredient is not mentioned, it is given no weight (or edge) but it does not mean a flavor pairing doesn’t exist. This is part of the purpose of this tool! Lastly, there are a few dozen mentions of “Avoid”, and should be thought of as opposite charges. ↩︎ If you encounter a bug, please feel free to contact me by email or open an issue on GitHub! ↩︎ When What to Drink has been parsed and merged with the network, the latter link in the recipe site list should become much more robust. How fun! ↩︎ ## Les Miserables URL: https://brege.org/post/les-miserables-graph-search/ Les Miserables is one of my favorite books. I read most of the original translation on a train ride to Portland, OR from Chicago, IL back in 2008 and enjoyed the remainder on the return trip back East. It taught me compassion: when Valjean places the coin in Cosette’s shoe. Father Christmas always misses her. There was an earlier passage of a man stepping on a coin in front of her, while she swept dressed in rags. The graph may take a moment to load. The search bar is the major addition to the graphing methods. Nodes can be clicked and added to a subgraph builder. You can continue to search for new node members in the search bar (which has a rudimentary autofill that’s a straight json query) and clicking on them will add them to the builder. Simultaneously, the graph will reduce to a graph containing only all nodes with edges linked to nodes in the builder. Items can be removed from the builder either by clicking the little builder tabs or re-clicking the node. Clearing the builder bar completely will redraw the whole graph. Testing and development was done on the mini pesto data set I made for What is Pesto?. Recipe builder coming soon(!) Please email me at wyatt@brege.org with any questions. Dataset can be found here: nodes.json edges.json Lingering annoyances: Slow Javascript needs clean up I have great fear running this on my 700x3000 dataset.. ## Network Graphs with Images URL: https://brege.org/post/network-graphs-with-images/ This is a follow-up to the previous post Network Graphs in Hugo. I’m feeling fruity. These aren’t all tree fruits, but a few clusters organized by tree grafting compatibility. Data for the network is stored in two separate JSON files in this page bundle: nodes.json edges.json The shortcode and post-local javascript work together: fruit-network.html fruit-network.js {{ $nodesPath := .Get "nodesPath" }} {{ $edgesPath := .Get "edgesPath" }}
This will provide network graph physics where the nodes are images (all sourced from Wikipedia. Hugo template for completeness: {{< fruit-network nodesPath="data/nodes.json" edgesPath="data/edges.json" scriptPath="js/fruit-network.js" >}} ## What is Pesto? URL: https://brege.org/post/what-is-pesto/ Pesto* is a cold-prep green sauce made with herbs and alliums suspended in oil. Most pestos call for some form of nut or cheese. In the general sense, chefs may specify “loose pesto” when there are neither cheese nor nuts in the sauce, or when the sauce has an abundance of oil. In general, pesto is made from herbs in the mint family, almost always from basil. The * distinguishes a generalization to the traditional meaning of the word. Classification Basil pesto is the common pesto. Its recipe typically calls for five key ingredients: $$ \begin{aligned} \textrm{basil pesto} = \textrm{basil} &+ \textrm{extra virgin olive oil} + \textrm{garlic} \\ &+ \textrm{parmesan cheese} + \textrm{pine nuts} \end{aligned} $$ Chimichurri includes a vinegar, usually red wine vinegar, which pesto does not, although pesto can suspend acid through citrus. Chimichurri often uses rough chopped or ground herbs, almost always oregano and parsley, but some modern applications will puree chimichurri as one does with pesto.1 Pesto is also different from gremolata, which like chimi is also made with parsley, so you may refer to carrot-family herb sauces as either gremolatas or chimis, and mint-family herb sauces as pestos, and chefs will know what you mean, even if they don’t quite agree with the abstractions. A table is provided as a summary of these three sauce’s distinctions. Pesto Gremolata Chimichurri Spring Sauce Herb* Basil Parsley Parsley + Oregano Mint + Peas Oil Extra Virgin Extra Virgin Extra Virgin Walnut Oil Allium Garlic Garlic Garlic Green Onion Nut Pine nut - - Pistachio Acid - Citrus Red Wine Vinegar Pomelo Wow Parmesan n/a Chili Flakes Chevre “Green Sauces. The author made spring sauce up, but it’s very good on crostini.” But there is a small catch, because some chefs may also say ‘arugula pesto,’ which might have no mint-family herb mixed in. This leafy sauce resembles pesto in process and appearence, and provides the effect of coating pastas in bright green colors, especially when suspended in stablized fat like reduced cream or mayonaisse. A chef can employ arugula for its liquorice and peppercorn aspects, or baby spinach which adds tang (like nori) when cooked, but she will most likely apply it because of its food coloring properties (vibrancy). Similarly, ‘spring pea pesto’ is made with a puree of spring peas and mint, and on crostini is a fantastic crudité. In this way, pesto* is generalized from its elements, describing a sauce of process and appearence while flexible in its flavor balancing rules. This is pesto* as a category, not pesto as a set. For all intents and purposes, chimis and gremolatas are pestos*. Ingredients The key to most pestos is to use a motor driven device for pureeing the sauce. The two best tools available and in common use both in commericial and residential kitchens are the vitamix or immersion blender. Food processors and ninjas work just as well. Hint: always add cheese last Puree everything besides cheese first. You don’t want to gum up your blender, so you can fold the proto-pesto with grated parmesan in a mixing bowl after pureeing the produce. In restaurants, you can make a really fine proto-pesto (i.e., loose pesto) by pureeing the produce and oil for an extended period of time. It is easier on the motor and on the blades. You can be lazier picking your leaves on your basil or include more stems, because the cheese absent creates less friction. Save the cheese for last. Greens Most herbs from either the carrot- or mint-families will work great, and many green tops of root vegetables (turnip, radish) are, while not interchangeable, usable and often complimentary in pestos. Caution: while tarragon can be made into a pesto*, its deployment in cold-prep sauces is rare (marinades, green goddess dressing) and is typically utilized better in hot-prep sauces–especially béarnaise. Sage, rosemary, and lemon verbena require special practice. Thyme is time. Use edible garnishes. Keep away from the ornamental “perfumes”. Recommend: basil, mint, parsley, oregano, marjoram, arugula Avoid: lavendar, tarragon, lemon verbena, rosemary Cheese Try to stick with a hard cheese that has longer room temperature stability. Cheeses with hard interiors and developed rinds will impart the necessary fats and impactful aromas while also being more conservative in the funky bleu cheeses, chalky goat cheeses, or sour yet creamy compositions of farmer/cottage style cheeses–namely, ricotta, cotija or paneer. An old queso fresco that has been air dried in the fridge, however, is a mighty substitute to parmesan on a budget. Recommend: parmesan, hard rind, feta, crumbly Avoid: soft, bleu Citrus? Of course, pesto is also seasoned (sodiums, peppercorn) and lemon zest or lemon juice is an especially common addition. Adding citrus tunes flavor, because it combats salinity (parmesan saltiness is not equal between products) and piquancy (garlic cloves grown in drought can be remarkably ‘hot’). Because lemons are a hybrid of pomelo and citron, grapefruit juice is an equally applicable substitute. Recommend: lemon zest, grapefruit juice, kombucha vinegars Avoid: orange, distilled vinegars Nuts Pine nuts are the nut of choice in recipes from canonical sources. People don’t have pine nuts in their house. They do have other nuts leftover from baked good preperations. In restaurants, pine nuts are toasted in hot ovens. They are applied whole to pizzas and salads, so because they can live in a recipe and two auxillary dishes, they define themselves as roleplayers in menus and inventories. However, pine nuts are expensive. Because they are normally toasted, errant chefs may leave them in ovens for moments too long, destroying a product whose cost is equivalent to whole numbers of the average hourly wages. This is not good for anyone. I’ve never done this before, I swear. Instead, some nontropical tree nuts are immediate substitutes if you are concerned only with the context of pesto: walnut, almond, and pistachio. This does not mean cashews are off limits, nor peanuts. Consider the role they play with basil and different oils in Thai cuisine. But maybe we don’t often think of peanut butter and parmesan together, so we avoid peanuts in pesto. That doesn’t mean you are violating international treaties by substituting deluxed mixed nuts from the grocery store in place of pine nuts. Pine nuts are the most replaceable element of classical pesto. Recommend: pine nut, walnut, almond, pistachio Avoid: peanut, cashew, macadamia, brazil, pecan Oils It is by no coincidence that extra virgin olive oil is the go to substrate (notice also olives and the alternative nuts previously mentioned grow adjacent to each other). Its Mediterranean origin is the required consideration for almost all member dishes in its cuisine. Some oils are better than others when olive oil is out: avocado, walnut, grapeseed. Avoid soy and canola oils which are better suited for frying, and harm basil less in lite applications like salad (Italian) dressing. Coconut oil can be used, but is not ideal because of its high melting point. However, you can create a spreadable pesto by using coconut oil–if the proto-pesto wets are tempered into coconut oil carefully. Coarser nuts in the spread make for a provocative but health-conscious party favor. Recommend: extra virgin, walnut, avocado Avoid: canola, soy, peanut Alliums Lastly, we generalized garlic to alliums above for good reason. You can make garlic scape pesto, which uses the green tops grown above earth from the garlic bulb. But, you can also use spring onions and/or shallot bulbs in place of garlic, which is especially more pleasant with lakefish and seafood. Although, garlic is preferable to onion in the regime of shellfish and, notably, the mollusk. You can also use radish bulbs, as well as radish or mustard greens in pesto, which simulates “bite”. In place of garlic, this is a quite useful substitution when pestos are applied in dressings for leafy salads or pasta salads. Recommend: fresh garlic, young onions, shallot, some pickled Avoid: large onions, leek, pearl onion, cooked garlic Recipe I’ve included a basic production recipe for Basil Pesto that creates a structurally “loose” pesto. My application could be added to heavy mayo for basil aioli, brushed on bread for grilling, and thickened with reduced (50%) cream for penne pasta dishes (bechamel cheese sauces work there, too). Cheese plays a more vital role when pesto is a topping where the goal is to gratinize, or in the presence of crackers. Basil Pesto Chef: Wyatt Brege Yield: 1 Quart Ingredients 2 Bunch Basil 8-10 clove Peeled Garlic 3 Cup Extra Virgin Olive Oil 1/4 Cup Seasonal Tree Nuts (shelled whole) 1/4 Cup Grated Parmesan tt Salt and Black Pepper Directions In a medium sized mixing bowl, combine the ingredients (sans parmesan) with the immersion blender. Fold in the parmesan. Store in 1 Quart deli container. Notes It is important to use actual extra virgin olive oil and not pomace or salad oil. The bite of the olive is a key flavor component of pesto. What is sauce? When you play this game of generalizing sauces into irreducible primitives, you eventually question with good reason why the five mother sauces are the way that they are. If postulated today, there would no doubt be endless criticism of its organization, lack of other fundamentally different sauces (gastriques?), exclusion of other world foods, and few would be convinced of any universality. But Escoffier’s postulate has historical importance defining the role of these hot-held sauces in a greater culinary scope. Less valuable now as theory, it is more so enforced as a performance lesson: a chef must learn how to make the mother sauces to be the best in her trade. If you were to reduce every cold sauce into fundamentals (vinaigrette, aioli, coulis, etc), to what extent can you? There is at least some argmunent: the preperation does require special work. While the heated sauces have an additional thermal parameter (‘careful not to scald, to break..’), the cold sauces spend energy kinetically: emulsify, puree, grind (‘careful not to overwhip, to break..’). In this sense, attention isn’t voluntary, so it separates itself from chopping, fermenting, or stirring to mix, giving an argument of practicality some teeth in the need for order. No, Ranch is not a mother cold sauce, but mayo does require special work and is an elemental part of Ranch. In my mind, I do consider some categories of cold sauces as fundamental to the education of the garde (those mentioned, probably closer to seven in total). So with liberty, let’s for sake of argument hold salsas and pestos in different regard. I cannot speak to the genre it belongs, but: if you have never tried blending tomatillo and basil together, you are missing out on one of life’s best kept secrets. On the fly Arugula, Mint, Pea pesto $\approx$ pesto, sub herb Gremolata $\sim$ pesto, sub herb, add citrus, minus cheese, minus nuts Chimichurri $\sim$ gremolata, with vinegar, with chiles I often wonder what foods may have begun as mistakes, or because other times someone just had to make do. Chimi mixed with pesto, then subtended with more red wine vinegar, leads to something quite close to Italian dressing. Maybe this was an accident once, or maybe a quick hack. Turning salvage and hacking into a creation presents a trade uniquely as an art. ↩︎ ## Network Graphs in Hugo URL: https://brege.org/post/network-graphs-in-hugo/ This is a simple toy to see how a network graph can be added in a Hugo article. I’ll be testing new features on it as I learn new things. Relative to the root of the Hugo website directory, here’s some basic files to make this interactive. Note that The JSON data and CSS is added inline here to make the scope of this tutorial focus on Hugo-specific structures. The javascript file lives in this page bundle: toy-network.js This file accesses data for the nodes and edges from two JSON files in this page bundle: nodes.json edges.json In the shortcodes directory /layouts/shortcodes/: toy-network.html