Gilles Crofils

Gilles Crofils

Hands-On Chief Technology Officer

Tech leader who transforms ambitious ideas into sustainable businesses. Successfully led digital transformations for global companies while building ventures that prioritize human connection over pure tech.1974 Birth.
1984 Delved into coding.
1999 Failed my First Startup in Science Popularization.
2010 Co-founded an IT Services Company in Paris/Beijing.
2017 Led a Transformation Plan for SwitchUp in Berlin.
November 2025 Launched Nook.coach. Where conversations shape healthier habits

Abstract:

The article explains why a lunch that looks perfectly reasonable at your desk—a sandwich, a rice bowl, a salad in a plastic box with some vegetables—can still produce a predictable “3pm wobble” when it’s eaten in about six minutes with 12 tabs open and Slack blinking, leaving you in a low-power-mode fog 60–120 minutes later and suddenly treating coffee like an operational requirement. Framed as debugging rather than discipline, it argues that the problem is often that these meals behave like snacks because they’re missing two key “anchors” (enough protein and enough fiber/real volume) and are consumed too quickly for satiety signals and memory of eating to register; it calls out common failing templates like bread-first lunches with thin protein, pasta/rice bowls with token protein, and “health halo” salads that are mostly leaves plus dressing. The proposed fix is deliberately minimal: run a three-workday, 30-seconds-a-day “anchor audit” by checking whether lunch included a real protein anchor and a real fiber/volume anchor, then at T90 label yourself steady/snacky/sleepy (optionally using a 1–9 sleepiness score) and note whether you ate while comms were open, while also watching for confounders like poor sleep or unusual caffeine. Based on the pattern, you make the “minimum viable” change—add one protein anchor (e.g., skyr/Greek yogurt cup, tuna pouch, RTD shake, eggs) plus one fiber/volume anchor (e.g., beans/lentils cup, oatmeal, apple/pear, crunchy veg, whole grains)—and rely on simple defaults and if-then rules that survive calendar pressure, alongside practical desk-life notes like food-safety temperature ranges and “stop rules” for extreme fatigue or when food tracking worsens anxiety.

Lunch at your desk can look completely reasonable. A sandwich. A bowl. Something in a plastic box with vegetables so it feels like a real decision was made.

Then you eat it with 12 tabs open, Slack flashing, and 1 hand doing fork work while the other answers “quick thing.” It takes 6 minutes. And 60 to 120 minutes later, the afternoon starts to lag. Not dramatic. More like your brain is running on low power mode and coffee suddenly looks like an operational requirement.

This article is for that specific problem. Not weight loss. Not perfect eating. Just fixing the annoying 3pm wobble when lunch technically happened but your body didn’t really register it as a stop. It’s annoying because you did eat, so it feels like your body is gaslighting you.

Here’s what you’ll get, without turning lunch into a second job.

  • Why some desk lunches look like meals but behave like snacks
  • The common lunch templates that fail even when calories are “fine” on paper
  • The 2 anchors that tend to matter most, protein and fiber, plus the boring third one, time
  • A simple 3-workday audit to spot patterns without tracking everything
  • The minimum viable fix, add 2 things to what you already eat
  • Defaults that survive calendar pressure, plus a few stop rules for when this isn’t a lunch issue at all

Think debugging, not morality. Change a couple inputs. Watch the logs. Keep what works. Drop what doesn’t.

The desk lunch that looks like a meal

How it shows up on a normal workday

The pattern is usually some mix of speed + low anchors + constant interruption. Lunch is technically on the calendar, but it’s also happening in the same mental channel as email triage and message pings. If you’ve spent most of your adult life at a desk across Beijing, Berlin, and Lisbon, often past midnight, it gets weirdly easy to stop noticing the difference between “I ate” and “I stopped.”

This is not only about calories. People compress lunch hard, and distraction makes it predictable. Research on distracted eating suggests the bigger effect often shows up later: more snacking and higher intake after the meal, not necessarily during it (Robinson et al., 2013).

When lunch behaves like a snack

Once you have the label, you can spot the outputs.

Lunch looks like food, but behaves like a snack.

It can be “enough calories” and still fail the afternoon because it is light on anchors like protein and fiber, and it gets eaten too fast to register as a real stop in the day.

  • Protein is often a reliable lever for satiety. A common range people use is roughly 20–40 g per meal, depending on body size and context (Jäger et al., 2017).
  • Fiber helps with fullness and pacing. A practical floor many people can aim for is around 8–10 g per meal (roughly: a beans cup, or an apple + crunchy veg).
  • Time matters too. Eating closer to 20–30 minutes tends to help satiety signals compared to finishing in 5–10 minutes (Kokkinos et al., 2010).

This is not a carb panic. Carbs are often just the easiest thing to eat fast, in big volume, while distracted. When protein and fiber are optional and time is near zero, the body often treats it less like lunch and more like a pre-snack.

The logs your body prints in the afternoon

Think debugging, not morality. Common outputs after a desk lunch that behaves like a snack:

  • A dip in alertness that feels mechanical, often 60–120 minutes after eating
  • Brain fog, like reading the same sentence 4 times
  • Snack radar switching on, even if lunch was not small on paper
  • Cravings for fast carbs or sweet plus salty combos
  • Coffee suddenly feels necessary, not just nice
  • Grazing, opening the kitchen 5 times for “nothing”
  • Irritability, impatience with small tasks or messages
  • Hunger that is hard to describe, not stomach-growl hungry but “feed me now” hungry

If you like lightweight metrics, the Karolinska Sleepiness Scale is a simple 1–9 rating. You can also use a basic 0–10 slider for hunger or cravings. Worth being honest though. Evidence that lunch fixes caffeine habits is limited, so track “do I feel I need caffeine” rather than expecting coffee to vanish.

The 3 desk lunches that look legit and still fail at 3pm

These are templates, not moral judgments.

The bread first lunch

Sandwich, baguette, bagel, wrap. Built for 1 hand and speed. Bread is the guaranteed part. Protein is often thin, optional, or quietly cost-controlled. The logic is simple. Protein is expensive, starch scales easily.

The pasta or rice bowl with token protein

Big bowl, lots of base, sauce does the rest. Using USDA baselines, 1 cup cooked white rice is about 45 g carbs and 4 g protein. 1 cup cooked spaghetti is about 43 g carbs and 8 g protein. Many bowls are 1.5 to 2 cups before sauce. It looks complete because it is hot and filling, but the structure is mostly base plus flavor. If the base is doing all the work, the fastest repair is to bolt on protein + a fiber side.

The salad that is mostly leaves plus dressing

Leaves give volume and a health halo, but they don’t automatically provide much protein or fiber. Then dressing and toppings can dominate calories without fixing the anchors. It’s a UI that looks healthy with no backend. And most people already under-hit fiber targets overall, so it is easy to end up with a salad that still lands low unless it includes beans, lentils, whole grains, or similar.

Why the dip happens

Protein and fiber as your lunch buffer

Protein and fiber are not a diet personality. They are more like attention insurance. They lower the “need something now” signal, so the afternoon is less fragile and you make fewer emergency decisions between calls.

A useful guideline is that many people do better when lunch has roughly 20–30 g of protein, with references often framing 20–40 g depending on body size and context (Jäger et al., 2017). The point is not precision. It is that “a little bit of protein” often does not change the afternoon, like a tiny cache does not fix a slow app.

For fiber, a pragmatic floor is around 8–10 g per meal. Below that, lunch can look healthy and still fall apart later. The good news is it is often fixable with obvious add-ons.

Reliable fiber adds

  • Beans or lentils
  • Oats or a high-fiber cereal cup
  • Apples or pears
  • Crunchy veg like carrots or bell peppers
  • Whole grains
  • Nuts and seeds as a side, not “3 sad sprinkles”

When lunch is eaten like a notification

Even a good lunch can fail if it is swallowed in 5–10 minutes while reading, typing, or putting out small fires. Slower conditions tend to improve fullness signals (Kokkinos et al., 2010).

Distraction also has a delayed effect. Reviews suggest memory of recent eating affects satiety, and distraction can weaken that memory (Higgs, 2015). If you eat while firefighting messages, assume T90 will lie to you: you’ll feel “fine” now and get snacky later.

So yes, lunch can be “fine on paper” and still trigger an afternoon patch loop.

A 3 day lunch anchor audit

A micro experiment that stays low pressure

Instead of a new lunch rule, run a 3-workday micro-experiment. It takes about 30 seconds per day.

No calorie counting. No weighing. No good and bad labels.

Important note. If logging makes your brain spin into rigid rules or stress, stop. It is not worth it.

Two anchors to check at lunch

At lunch:

  • Did I include a real protein anchor?
  • Did I include a real fiber/volume anchor?

Real means not symbolic. Not “2 slices of turkey somewhere” or “3 leaves of salad trying their best.”

Examples

  • Protein anchor Greek yogurt or skyr cup, tuna pouch
  • Fiber or volume anchor beans or lentils cup, an apple or pear

The 90 minute check

At T90, pick one word

Steady, snacky, or sleepy.

If a number helps, add a Karolinska Sleepiness Scale score.

Then add 1 context flag

Were comms open while eating.

This is not about perfect screen-free lunches. It is classification. Distraction effects often show up later (Robinson et al., 2013).

How to read your results

  • If low-anchor lunches line up with “snacky at T90,” composition is a lever.
  • If lunches had both anchors but the crash happens mostly when comms were open, context may be doing most of the damage.

Also note confounders so you don’t blame lunch for everything

  • Short or poor sleep
  • Late or unusually high caffeine
  • Back-to-back meetings and constant interruptions
  • Illness or recovery days
  • New medications

The minimum viable lunch anchor

Add 2 things not a new lunch

The smallest change that often shows up in the logs

Add 1 protein anchor plus 1 fiber or volume anchor to whatever lunch already exists.

Think configuration, not virtue. Change 2 inputs, watch the output.

Protein anchors that work at a desk

  • Skyr or Greek protein cup
  • Cottage cheese cup
  • Tuna or salmon pouch
  • Chicken pouch
  • RTD protein shake
  • 3–4 eggs if fridge access
  • Jerky pack or meat sticks

Fiber or volume anchors

  • Beans cup or pouch
  • Lentil cup or pouch
  • Oatmeal cup
  • High-fiber cereal cup
  • Apple or pear
  • Crunchy veg cup carrots peppers
  • Whole grain bread or a brown rice portion

Food safety that matches desk life

A perfect anchor is useless if it turns into a food safety gamble at 16:00. Practical rule of thumb. Cold foods held at ≤5°C and hot foods at ≥57°C (FDA Food Code).

  • Drawer friendly unopened tuna pouches, canned fish, jerky, UHT RTD shakes
  • Fridge required yogurt, skyr, cottage cheese, peeled eggs, hummus

Defaults that survive calendar pressure

Decision quality drops under load. So the goal is not more rules. It is fewer decisions. Defaults help people follow through more than “trying harder” (Johnson and Goldstein, 2003).

A small set of pre-approved add-ons can rescue most desk lunches

  1. Skyr or Greek high-protein cup
  2. Tuna or salmon pouch
  3. Bean cup or pouch
  4. Apple or pear

If lunch is rushed, install the anchor first, then eat the rest as-is.

Simple if-then plans can help because they link a cue to an action (Gollwitzer, 1999)

  • If lunch is bread-first, then before the 1st afternoon meeting, add a tuna pouch or skyr cup.
  • If comms are open while eating, then close Slack for 5 minutes while you finish the anchor portion.
  • If snack urgency hits at 15:30, then eat an anchor snack first and reassess in 10 minutes. Example RTD protein shake plus an apple.

Edge cases and stop rules

If sleepiness is extreme, sudden, getting worse, or comes with concerning symptoms, treat it as a health issue first, not as a lunch bug. Sleep disorders, anemia, thyroid issues, diabetes-related symptoms, and medication side effects can sit behind “I am tired” days.

Also keep a mental health off ramp. If food focus increases anxiety, rigidity, guilt, or compulsion, stop the experiment. This is a small systems test, not a moral scoreboard.

Adjust 2 inputs. Watch the logs. Keep what works. Drop what doesn’t.

If lunch happens in 6 minutes with Slack still blinking, it can look like a meal and still behave like a snack. Then the 3pm wobble shows up right on schedule. The useful frame here is not discipline or perfect eating. It’s debugging. Most desk-lunch crashes come from the same few inputs: too little protein, too little fiber or real volume, and not enough time for your brain to log that food happened.

The fix is rarely dramatic. Run the 3-workday audit. Check the 2 anchors. Notice what happens around T90. Then make the minimum viable change and move on with your day. Most of the time it’s not discipline. It’s anchors plus enough time for the meal to register.

You might be interested by these articles:


25 Years in IT: A Journey of Expertise

2025-

Nook
(Lisbon/Remote)

Product Lead
Building the future of health coaching. Leading product development and go-to-market strategy for a platform that makes personal wellness accessible through natural dialogue.
Making health coaching feel like talking to a friend who actually gets you.

2024-

My Own Adventures
(Lisbon/Remote)

AI Enthusiast & Explorer
As Head of My Own Adventures, I’ve delved into AI, not just as a hobby but as a full-blown quest. I’ve led ambitious personal projects, challenged the frontiers of my own curiosity, and explored the vast realms of machine learning. No deadlines or stress—just the occasional existential crisis about AI taking over the world.

2017 - 2023

SwitchUp
(Berlin/Remote)

Hands-On Chief Technology Officer
For this rapidly growing startup, established in 2014 and focused on developing a smart assistant for managing energy subscription plans, I led a transformative initiative to shift from a monolithic Rails application to a scalable, high-load architecture based on microservices.
More...

2010 - 2017

Second Bureau
(Beijing/Paris)

CTO / Managing Director Asia
I played a pivotal role as a CTO and Managing director of this IT Services company, where we specialized in assisting local, state-owned, and international companies in crafting and implementing their digital marketing strategies. I hired and managed a team of 17 engineers.
More...

SwitchUp Logo

SwitchUp
SwitchUp is dedicated to creating a smart assistant designed to oversee customer energy contracts, consistently searching the market for better offers.

In 2017, I joined the company to lead a transformation plan towards a scalable solution. Since then, the company has grown to manage 200,000 regular customers, with the capacity to optimize up to 30,000 plans each month.Role:
In my role as Hands-On CTO, I:
- Architected a future-proof microservices-based solution.
- Developed and championed a multi-year roadmap for tech development.
- Built and managed a high-performing engineering team.
- Contributed directly to maintaining and evolving the legacy system for optimal performance.
Challenges:
Balancing short-term needs with long-term vision was crucial for this rapidly scaling business. Resource constraints demanded strategic prioritization. Addressing urgent requirements like launching new collaborations quickly could compromise long-term architectural stability and scalability, potentially hindering future integration and codebase sustainability.
Technologies:
Proficient in Ruby (versions 2 and 3), Ruby on Rails (versions 4 to 7), AWS, Heroku, Redis, Tailwind CSS, JWT, and implementing microservices architectures.

Arik Meyer's Endorsement of Gilles Crofils
Second Bureau Logo

Second Bureau
Second Bureau was a French company that I founded with a partner experienced in the e-retail.
Rooted in agile methods, we assisted our clients in making or optimizing their internet presence - e-commerce, m-commerce and social marketing. Our multicultural teams located in Beijing and Paris supported French companies in their ventures into the Chinese market

Cancel

Thank you !

Disclaimer: AI-Generated Content for Experimental Purposes Only

Please be aware that the articles published on this blog are created using artificial intelligence technologies, specifically OpenAI, Gemini and MistralAI, and are meant purely for experimental purposes.These articles do not represent my personal opinions, beliefs, or viewpoints, nor do they reflect the perspectives of any individuals involved in the creation or management of this blog.

The content produced by the AI is a result of machine learning algorithms and is not based on personal experiences, human insights, or the latest real-world information. It is important for readers to understand that the AI-generated content may not accurately represent facts, current events, or realistic scenarios.The purpose of this AI-generated content is to explore the capabilities and limitations of machine learning in content creation. It should not be used as a source for factual information or as a basis for forming opinions on any subject matter. We encourage readers to seek information from reliable, human-authored sources for any important or decision-influencing purposes.Use of this AI-generated content is at your own risk, and the platform assumes no responsibility for any misconceptions, errors, or reliance on the information provided herein.

Alt Text

Body