The short answer: you can't stop context switching with willpower. You stop it by reducing the number of places work can reach you.
Every switch has a re-entry cost. You leave a spec to answer a ping, check the tracker, glance at mail, and when you come back you reread the last paragraph to remember where you were. Multiply that by a day of pings and the deep work never starts.
Five habits that work
- Batch the inbox. Read mail at set times, read each message once, then file it. A message you've read three times has cost you three times.
- Move decisions into threads. One thread per topic beats a busy general channel. You can come back to a thread later without losing the context.
- Turn requests into tasks right away. "Can you look at this?" in chat is a task without an owner. Make it a ticket with an owner and a date, and stop holding it in your head.
- Keep messages short. A message that needs scrolling gets skimmed. Short messages get read and answered.
- Protect two blocks a day. Put focus time on the calendar and treat it like a meeting.
The structural fix
Habits help, but most switching is built into the tools: every app is a separate window with its own notifications. The bigger fix is fewer windows. That's why Productive puts mail, team chat, meetings, planning boards, tasks and docs in one place, with one bar to ask for a thread, a ticket or a meeting without leaving what you're doing.