I start the day with VS Code, Firefox, and a terminal open. By the end of the day, I somehow have five VS Code windows, around ten terminals, and an unmanageable number of browser tabs—while my task backlog has grown instead of shrinking. What systems or habits do you use to stay organized, limit context switching, and actually finish tasks?
5 Answers
A plain todo.txt file works surprisingly well for me. I dump every interruption, idea, and follow-up into it so I don’t have to act on it immediately. I keep working on the current piece, then review the list when I finish a small milestone or before pushing changes. It’s much easier than relying on open tabs as reminders.
Keep a single, ordered backlog and prioritize it by urgency and impact. I’ll usually review the top few items with my manager so expectations are clear. I also limit work in progress: ideally one active task, or at most a couple of parked tasks if they’re blocked. Everything else gets triaged and added to the backlog instead of becoming another half-finished project.
Use a visible parking lot for new requests—whether that’s a whiteboard, notes app, or task board. Writing something down forces you to decide whether it truly deserves attention now or can wait. I also close old terminals and browser tabs regularly; keeping everything open creates the illusion that all of it is equally important.
I try not to treat it as multitasking. Most of the time it’s expensive context switching. I keep one main task active and write down interruptions instead of opening another window immediately. A simple daily checklist and focusing on one item at a time helps keep the backlog from taking over.
Sometimes the practical answer is to stop working at the end of the day. Set a cutoff, close the laptop, and leave tomorrow’s tasks for tomorrow. A clean break is better than carrying an ever-growing collection of windows and unfinished work into the evening.

That also makes it easier to push back when someone arrives with an alleged emergency. You can explain what’s already in progress and let the responsible person decide whether the new request should replace it.