The Calendar System That Works When Your Brain Fights You
I missed a client call last Tuesday. Not because I forgot about it. I’d put it in my calendar myself, ninety minutes earlier, with the…
The Calendar System That Works When Your Brain Fights You

I missed a client call last Tuesday. Not because I forgot about it. I’d put it in my calendar myself, ninety minutes earlier, with the correct time and a Zoom link and everything. I just didn’t look at the calendar again between then and twelve minutes after the meeting started. In that window I’d opened a browser tab to check one thing, which became four things, which became an article I wasn’t even interested in but couldn’t stop reading. By the time I glanced at the clock, I had a Slack message from my colleague asking if I was joining.
The calendar had the information. My brain didn’t come and collect it.
I was diagnosed with ADHD at 34, after a decade in customer-facing roles where this kind of thing happened regularly enough that I’d built an entire personality around “being the one who’s always slightly late.” Turns out that wasn’t a personality. It was a brain that doesn’t feel time passing the way most people’s does. The clinical term is time blindness, and once you know the name, you see the fingerprints everywhere: the follow-up email you meant to send “in five minutes” that’s now three days old, the 2pm meeting you were definitely going to prep for at 1:30 but it’s somehow 2:07 already. The gap between knowing what time something starts and actually doing anything about it is where my entire professional life gets complicated.
This is what most calendar advice doesn’t account for. The advice assumes you’ll look at your calendar. That you’ll feel the approach of 2pm the way you feel the approach of a wall when you’re walking toward it. My brain doesn’t do that. 2pm arrives like a jump scare.
So I stopped trying to build a system around checking my calendar and started building one where the calendar checks on me.
TLDR
The system has three layers: an interrupt layer (the calendar reaches you, you don’t have to remember to check it), a transition layer (buffer time between meetings so your brain can actually switch contexts), and an energy layer (colour-coding by cognitive cost, not category). The tools that make it work: BusyCal for the calendar itself, Dato for passive menubar visibility, Raycast for a keystroke glance, and Keyboard Maestro for transition automations. Total cost if you’re buying everything from scratch: about $100 one-time plus whatever you’re already paying for your calendar app.
I’m not paid by any tool I mention. No affiliate links. When I recommend something, it’s because it survived my actual working life, which is a harder test than it sounds.
What the Popular Advice Misses
Before the system that works, a brief tour of the systems that didn’t.
“Review your calendar every morning.” I do this. I sit down with coffee, I look at my day, I note the meetings, I feel genuinely prepared. Then it’s 1pm, I haven’t looked at the calendar since 8:30am, and the afternoon is a blur of things I vaguely recall scheduling. The morning review gives me information. It doesn’t give me the thing I actually need, which is interruptibility. A plan I looked at four hours ago is not a plan anymore. It’s a memory, and my working memory has the shelf life of a banana in July.
“Time-block everything.” I’ve tried this three separate times. Each attempt lasted between five and nine days. Here’s what happens: I colour-code two hours of blocks, feel incredibly productive (the organising is the dopamine hit, not the doing), follow the blocks for a day or two, then start treating them the way I treat speed limit signs. They’re technically there. I’m technically ignoring them. By day six the blocks are so far from what actually happened that looking at my calendar makes me feel worse, not better. (The third time I tried, I spent 40 minutes colour-coding a system I abandoned by Thursday.)
“Set a single reminder 15 minutes before.” Fifteen minutes is too long. My brain registers the notification, files it under “acknowledged, will handle shortly,” and then the fifteen minutes vanish entirely. I’ve snoozed the same reminder four times and still been late. A single notification is a suggestion. My brain needs something closer to an escalation.
These aren’t bad systems. They work for people whose brains maintain a passive awareness of passing time. Mine doesn’t. So the system I’ve built doesn’t ask my brain to do the thing it can’t do. It routes around the failure point entirely.
Layer 1: The Interrupt Layer
The core principle: the calendar comes to me. I never have to remember to check it.
This works through three tools stacked on top of each other, which sounds excessive until you’ve missed your third meeting of the month because you didn’t glance at the right corner of your screen.
Stacked notifications in BusyCal. I set three alerts for every meeting: 30 minutes, 10 minutes, 2 minutes. Not one. Three. The 30-minute alert is information (“this is coming”). The 10-minute alert is the real one (“stop what you’re doing”). The 2-minute alert is the emergency brake (“you should already be clicking the link”). BusyCal lets you set default alerts per calendar, so I configured this once and haven’t touched it since. The key is that all three alerts are different: 30-minute is a banner, 10-minute is a sound, 2-minute is a full-screen notification (which Dato handles, but I’ll get to that).
Dato in the menubar. This is a $16 app from Sindre Sorhus that replaced something I didn’t know I needed. When I click the clock in my menubar, I get a dropdown showing my next events, a mini calendar, and the time remaining until the next thing. I don’t have to open my calendar app. I don’t have to remember that my calendar app exists. The information is right there, attached to the clock I’m already glancing at. Dato also does full-screen meeting notifications, which is the part that actually matters. When my 2-minute alert fires and Dato throws a full-screen overlay on top of whatever rabbit hole I’m in, I can’t ignore it. (I’ve tried. The overlay stays until I dismiss it. It’s the first notification system that’s more stubborn than my hyperfocus.)
Raycast calendar extension. I already use Raycast as my launcher. The calendar extension means I can hit my hotkey, type “next,” and see what’s coming without switching apps or moving my hands off the keyboard. It takes about two seconds. I do this reflexively now, the way some people glance at a watch. It’s the lowest-friction calendar check I’ve found, and friction is the thing that kills every system I build.
The three layers overlap on purpose. If one fails (I dismiss the banner without processing it), the next one catches me (Dato’s full-screen overlay), and if I’m away from my desk, the Raycast glance is fast enough that I’ll check before I sit down. Redundancy feels wasteful until you count how many meetings you’ve been late to.
Layer 2: The Transition Layer
This is the part nobody writes about, and it’s the part that changed the most for me.
My brain does not switch contexts on command. When I’m deep in a task and a meeting starts, there’s a lag. Not a “let me wrap this up” lag. A genuine cognitive delay where part of my brain is still solving the previous problem while the rest of me is trying to remember who I’m about to talk to and what the meeting is about. I’ve joined calls with the completely wrong context loaded. I’ve opened a QBR with a customer and spent the first three minutes mentally finishing the email I was writing before I clicked the Zoom link.
The fix is buffer events. Fifteen-minute blocks between every meeting, created as actual calendar events, not just empty space.
I know what you’re thinking: that’s just white space on a calendar. It isn’t. Empty space gets swallowed. If there’s a 15-minute gap between meetings and it’s not blocked, someone will book into it, or I’ll start something I can’t finish in 15 minutes, or (most likely) I’ll spend the 15 minutes doing nothing productive because my brain knows a meeting is coming and won’t commit to anything. The buffer is an event. It has a title. Mine say “transition” followed by the next meeting’s name: “Transition: Acme QBR.” That way the buffer itself tells me what’s coming.
The Keyboard Maestro automation. I have a macro that fires 10 minutes before any calendar event tagged “external.” (External means customer-facing. Internal meetings get a shorter buffer.) The macro does three things: sends a macOS notification with the meeting name and attendee list, opens the relevant CRM record in my browser (I pass the company name through a URL scheme), and activates Do Not Disturb. Three actions that would take me 2 minutes if I remembered to do them manually. I never remember to do them manually.
The attendee list in the notification is the part that matters most. When I’m switching contexts, the single thing that grounds me fastest is knowing who I’m about to talk to. Not the agenda. Not the deck. The names. Once I see the names, the context starts loading. (It’s like my brain is a search engine and the names are the query. Without the query, nothing comes up.)
Setting this up took about an hour. It runs every workday without me thinking about it. That’s the standard I apply to everything in this system: if I have to remember to do it, it will fail by week three.
Layer 3: The Energy Layer
This is the layer that took me the longest to figure out, and the one I’ve never seen anyone else write about.
Most people colour-code their calendars by category. Work meetings are blue. Personal is green. Travel is yellow. That’s fine if your energy is roughly constant throughout the day. Mine isn’t. I have about four good hours in the morning (sometimes five on a good day), a sharp decline around 1pm, a dead zone between 2pm and 3:30pm (the specifics vary, but the pattern doesn’t), and a mild recovery from about 3:30pm to 5pm that’s good enough for admin but not for anything requiring sustained attention.
So I colour-code by energy cost, not by category.
Red: high-drain. New prospect calls, difficult customer conversations, anything where I need to be “on” and sharp. Discovery calls, escalations, executive briefings. These go in the morning. If someone tries to book a red event after 1pm, I push back. Not always successfully, but the attempt matters.
Blue: neutral. Internal syncs, team standups, one-on-ones with my manager. These require presence but not peak performance. They go in the early afternoon, after lunch, when I’m functional but not firing.
Green: recovery. Solo work blocks, admin catch-up, CRM updates. (Yes, I schedule CRM updates. Left to my own devices I would never do them. The calendar event is the only reason they happen.) These go in the late afternoon. Critically, green blocks are the ones I’m allowed to cancel without guilt. If the day has been brutal, I can delete the 4pm admin block and call it done. That permission is built into the system.
The rule that holds it together: never stack two reds without a green between them. Two high-drain meetings back to back will wreck my afternoon. One red, one green buffer (even 20 minutes), then the next red. The buffer isn’t optional. It’s structural.
I’ll be honest about where this fails. Other people book meetings on my calendar. They don’t know my colour system. They’ll drop a prospect call at 3pm because that’s when the prospect is free, and I can’t always say no. When that happens, I move a green block to right before it and accept that the day’s shape has changed. The system bends. It doesn’t snap. That’s the difference between this and the rigid time-blocking approach that fell apart on day six.
Where the System Breaks Down
Wednesdays. I don’t fully understand why, but Wednesday is consistently my worst calendar day. My theory is that it’s the midpoint of the accumulated weekly fatigue: Monday has fresh-week energy, Tuesday still rides on it, Wednesday is where the debt catches up. By Wednesday afternoon, even the triple notification stack sometimes isn’t enough. I’ll dismiss the Dato overlay and still not move for three minutes.
What I do about Wednesdays: I schedule fewer red events. I put the hardest meeting of the week on Tuesday morning and protect Wednesday afternoon as a green zone whenever I can. Some weeks I can’t. Those weeks, I just accept that Wednesday will cost me more than the calendar says.
The other failure mode is external calendar chaos. When someone with scheduling power fills my day with back-to-back meetings and no buffers, the transition layer collapses. I show up to meeting four with meeting two’s context still loaded. The fix isn’t technical. It’s a conversation. I’ve told my manager that I work better with gaps. She books accordingly. Not everyone has that option, and I won’t pretend this part of the system is universally applicable.
The Setup (What to Do This Week)
If you want to try this, here’s the version you can build in an afternoon:
The interrupt layer. Pick your calendar app and set three alerts: 30, 10, and 2 minutes. Make the 2-minute alert the most aggressive notification type your app supports. If you’re on Mac, grab Dato ($16, one-time purchase) for the menubar calendar and the full-screen notifications. If you use Raycast, install the calendar extension. Total setup time: 15 minutes.
The transition layer. Go through next week’s calendar and add a 15-minute “Transition: [next meeting name]” event before every external meeting. Do it manually the first week so you feel how the buffers change your day. If it works, automate it. Keyboard Maestro ($36, one-time purchase) can handle the pre-meeting notification with attendee names, but the buffer events themselves I still create manually because the naming matters to me. Total setup time: 30 minutes for the first week.
The energy layer. Spend 20 minutes looking at your last two weeks. Find the pattern. When do you crash? When are you sharp? Assign three colours: high-drain, neutral, recovery. Apply them to next week. See what happens. The rule to test first: no two high-drain events without a recovery block between them. Total setup time: 20 minutes.
You don’t need all three layers at once. Start with the interrupt layer. It’s the one with the highest return for the least effort. Add transitions when you notice the context-switching problem. Add the energy layer when you’re ready to have an honest conversation with yourself about what your afternoons actually look like.
Frequently Asked Questions
1. Does this system work with Apple Calendar?
Partially. Apple Calendar supports multiple alerts per event and basic colour-coding, so the interrupt and energy layers work fine. The transition automation is harder because Apple Calendar doesn’t integrate as smoothly with Keyboard Maestro as BusyCal does. You’d need to use Shortcuts instead, which is less flexible but free. Dato works with any calendar service macOS supports, so the menubar piece works regardless of which app you use.
2. How long did it take for this system to stick?
About three weeks. The interrupt layer worked immediately because it doesn’t require any behaviour change on my part. The transitions took a week to feel natural instead of wasteful. The energy layer took the longest because I had to actually track my patterns instead of just guessing at them. (I thought I crashed at 3pm. It’s actually closer to 1:30pm. Knowing that changed everything.)
3. What if my boss fills my calendar and I can’t control the schedule?
The interrupt layer still works. Nobody can take away your notification settings. The transition layer gets harder, but you can still add 5-minute buffers between meetings, even when the gaps are small. The energy layer might be aspirational in a heavily managed calendar, but the awareness itself helps. If you know 3pm is a dead zone, you can at least stop being surprised when you’re useless at 3pm.
4. Isn’t three notifications per meeting annoying?
Yes. That’s the point. A notification that doesn’t bother you is a notification you’ll ignore. The 30-minute one is gentle. The 10-minute one is firm. The 2-minute one is obnoxious. I need the escalation because my brain has gotten very good at dismissing gentle reminders. The obnoxious one is the one that actually works.
5. Won’t the colour-coding become another system I have to maintain?
It might. Here’s the test: after two weeks, are you still applying the colours, or have you stopped? If you’ve stopped, the system is too heavy for you and you should drop it. Keep the interrupt and transition layers. Those work without maintenance. The energy layer is the one most likely to fail for people who don’t naturally categorise, and I’d rather you use two layers that stick than three that collapse.
6. What about time-blocking apps like Sunsama or Motion?
I’ve tested both. They solve a different problem. They’re task schedulers that fight for your calendar space. My problem isn’t where to put tasks. It’s that I lose awareness of time passing and miss the things I’ve already scheduled. If your problem is “I have too many tasks and need help prioritising them into my day,” those apps might help. If your problem is “I put things on my calendar and then time travel past them,” you need the interrupt layer, not a task scheduler.
7. Does the Wednesday problem ever go away?
Not yet. It’s been consistent for about 18 months. I’ve tried moving hard meetings off Wednesday, I’ve tried starting Wednesdays later, I’ve tried exercise before work on Wednesdays. Nothing has fixed it. I’ve settled for managing it instead of solving it. Some patterns are just patterns. The system’s job is to absorb the bad days, not to eliminate them.
8. How do you handle all-day events and deadlines?
I don’t put deadlines on the calendar. Deadlines go in a separate list (currently a pinned note in Drafts) because a deadline on a calendar looks the same as a meeting and my brain processes them completely differently. All-day events are fine for things like “Sarah out of office” or “Q3 renewal week” because they’re context, not actions. The calendar is for things with a start time. Everything else lives somewhere else.
9. Can I use Fantastical instead of BusyCal for this?
Absolutely. Fantastical supports stacked alerts and colour-coding. The reason I use BusyCal is the one-time purchase pricing ($49.99 vs. Fantastical’s $57/year subscription), and the way BusyCal handles natural language input for creating buffer events quickly. But the system works with any calendar app that supports multiple alerts per event.
10. What if I try this and it doesn’t work?
Keep the interrupt layer and throw away the rest. Seriously. The single highest-value change is going from one notification to three, with the last one being impossible to ignore. That costs nothing, takes five minutes to set up, and works even if you never touch the transition or energy layers. If that one change saves you from missing a meeting this week, the system has already earned its place.
메타데이터
- post_id
- b7490a3b9538
- slug
- the-calendar-system-that-works-when-your-brain-fights-you-b7490a3b9538
- url
- https://medium.com/@little-miss-writer/the-calendar-system-that-works-when-your-brain-fights-you-b7490a3b9538
- canonical_url
- https://medium.com/@little-miss-writer/the-calendar-system-that-works-when-your-brain-fights-you-b7490a3b9538
- author_url
- https://medium.com/@little-miss-writer
- status
- ok
- fetched_at
- 2026-07-08 04:28:09