One Hard Thing

Why projects stall when you chase many priorities, and how single-focus breaks the log-jam.

July 11, 2025
4 min read
one hard thing focus management

Key Insight: If your project feels stalled, you’re probably attempting two feats of mental gymnastics at once.


🧠 Hard Things

One of my favorite things to do is coding. Whether it’s matrix computations or designing a message queuing system, I get immense satisfaction from solving hard computing problems. For me I’ve spent years developing the skills to solve these problems and code the solutions. There are few, if any, people in the world who would say these problems are easy. Since I have mastered many of the building blocks of this work, I am able to think about performance, architecture, and coding style while also writing code that works.

Another part of software development is getting the software tested, bundled together, and deployed. Many software groups find that having developers own this part of the process is preferable to throwing it over the wall for another group to handle. The benefits of ownership of the CI/CD system by the developer outweigh specialization of delegating to a central Dev Ops team. So for me, doing this work is still gratifying despite my relative mediocrity at Dev Ops scripting. I’m not an expert, so the quality of my work is not as high. My workflow is less nuanced and I’m happy just to get something working.

💡 The Sweet Spot: I can work on either of these tasks and be content with my day.


⚡ Two Hard Things

But let’s say I’m coding some new simulation on GPUs while getting the build system to build the CUDA successfully. Both of those are things I am capable of doing. For me, both parts of this problem are hard. What changes?

I am no longer able to balance the secondary considerations like coding style and architecture when I can’t get CUDA to work on the build system. My code may be missing some automated tests I ordinarily would have written. Trying to take on a the second hard thing (getting a bespoke build job running) impacts the first (doing high performance computing).

⚠️ The Reality Check: When I do two hard things at the same time, I go home frustrated.


🎯 Difficulty is Personal

Core Truth: What is hard at work is more about me than the task at hand.

What’s hard for you might be straightforward for another. One colleague might calmly handle stakeholder meetings, while another sees them as daunting. Conversely, tasks requiring intense concentration and analytical rigor may energize you but paralyze someone else.

Understanding and leveraging these personal differences allows teams to distribute tasks in ways that play to everyone’s strengths, ensuring smoother and more productive workflows.


🚨 Recognizing Stress as a Signal

Periods of high stress often signify you’re attempting multiple skill-intensive tasks simultaneously. Common signs include:

  • 🎯 Losing focus repeatedly on tasks that usually come easily
  • 🌀 Difficulty distinguishing one meeting or conversation from another
  • 😵 Familiar processes and tasks suddenly feeling confusing or overwhelming

When these signals appear, it’s essential to pause and evaluate whether you’re dealing with more than one demanding task. Acknowledging this early helps prevent further deterioration of performance and morale.


🛠️ Practical Strategies to Manage Cognitive Load

To effectively handle multiple demanding challenges, consider these approaches:

📅 Sequential Focus

Address tasks separately. Schedule intensive problem-solving sessions apart from high-stakes communications.

🤝 Delegate Effectively

Hand off challenges that others find manageable, allowing each person to operate within their comfort zone.

📈 Expand Your Skills

Regularly practice difficult tasks until they become routine. Mastery frees mental resources to tackle genuinely challenging new problems.


🔄 Special Case: Mutually Dependent Challenges

Sometimes, tasks create circular dependencies: you can’t solve one without resolving the other. For instance, you can’t finalize system requirements without client approval, yet clients won’t commit until they see a complete proposal.

Breaking these cycles often requires creative approaches such as:

  • 🧪 Building minimal proofs-of-concept to satisfy interim requirements
  • 🚩 Using feature flags or staged rollouts to incrementally address concerns
  • 👥 Bringing in external experts who can simplify or mediate complexities

🔮 Coming Up: This scenario warrants deeper exploration, which we’ll tackle in the next article: The Hardest Thing.


🚀 Up Next: The Hardest Thing

We’ll explore advanced strategies to break complex dependencies and effectively manage the most challenging scenarios, ensuring consistent progress and fewer stressful mornings.

Enjoyed this article? Want to discuss it further or have questions?

Get in Touch