The Right Way to Waste Less Time at Work Is to Stop Worshipping the Right Way

Jaeyeol Lee

Hatched by Jaeyeol Lee

Jul 20, 2026

10 min read

87%

0

The hidden cost of being sure

What if the fastest way to become a better programmer is to become less certain about programming, and the fastest way to feel less anxious about time is to stop treating every minute like a verdict?

Those two ideas sound unrelated, but they are cousins. In both cases, the real trap is not ignorance. It is identity fused with optimization. The software dev who wants the one true best practice, and the worker who wants the perfect use of every hour, are both trying to escape uncertainty by turning it into a system. The problem is that life does not stay still long enough for a system to remain pure.

That is why so many intelligent people end up exhausted. They do not merely want to improve. They want to be right, efficient, and ahead, all at once. And the moment improvement becomes a moral test, learning turns into self-judgment.

The most dangerous thing about best practices and productivity advice is not that they are wrong. It is that they can make you believe there is a single correct way to be a competent person.

Software work and time management both punish this illusion. Software is messy, local, and social. Time is finite, subjective, and emotionally loaded. In both domains, the better question is not, “What is the optimal method?” It is, “What kind of judgment helps me adapt without collapsing into anxiety or dogma?”

Best practices are fossils of old emergencies

A best practice is rarely a universal truth. More often, it is a fossilized response to a specific failure.

If you do not understand why a rule exists, find the horror story behind it. That habit changes everything. Suddenly, a practice is no longer a sacred commandment, it is a scar. The rule about code reviews, tests, modularity, or documentation probably came from some painful incident in which a team shipped a bug, lost money, angered customers, or made future work unbearable.

This matters because it reveals the real job of expertise: translation, not imitation. Most ideas need modification to fit together. Pure principles are rarely workable in a living system. A team that blindly copies the structure of a famous engineering organization often discovers that what worked there fails here, because the constraints are different, the incentives are different, and the people are different.

That is true far beyond software. People do the same thing with productivity. They import a perfect morning routine, a color-coded calendar, or a zero-based planning method and then wonder why it makes them miserable. The answer is usually not that the method is bad. The answer is that they treated a tool built for a particular problem as if it were a law of nature.

This is where novices and anxious optimizers often resemble each other. The novice wants certainty from authority. The optimizer wants certainty from metrics. Both want the world to promise that if they do X, they will reliably get Y. But in software and in time, the world is full of tradeoffs, not guarantees.

The mature move is to ask: what failure was this practice designed to prevent, and does that failure actually threaten me here?

Time anxiety is the productivity version of dogma

Time anxiety is not just “I have a lot to do.” It is the felt sense that time itself is slipping away while you fail to convert it into enough visible value. That is why it becomes emotionally heavy. It does not merely slow you down. It makes every pause feel suspect.

This is the same psychological structure as the “Right Way Guy” in technical work. In one case, the person believes there is a correct engineering orthodoxy. In the other, the person believes there is a correct way to spend an hour, and any deviation is waste. Both forms of rigidity create shame. If the code is messy, you are a bad developer. If the day is unoptimized, you are a bad person.

That shame is so corrosive because it narrows attention. When you are afraid of wasting time, you start monitoring time too aggressively. But excessive scrutiny makes the feeling worse. It is like checking a wound every ten seconds and being surprised that it is still inflamed.

There are at least three flavors of this anxiety:

  1. Daily time anxiety: Did I use today well enough?
  2. Future time anxiety: Will I ever have enough time to become who I want to be?
  3. Existential time anxiety: Is my life passing, and am I missing it?

These are different scales of the same problem. In each case, the mind tries to convert an uncertain human life into a scorecard. That scorecard never feels complete, because time cannot be saved up like money. It can only be inhabited.

A useful analogy is code under load. If a system constantly monitors every process at maximum resolution, it can degrade performance. Sometimes you need observability, but too much introspection becomes overhead. The same thing happens with time. A healthy relationship to time includes awareness, but not obsession. Enough measurement to steer, not so much that the steering wheel becomes the destination.

The deeper lesson: competence is not purity, it is calibration

The connection between software wisdom and time anxiety becomes clearest when you stop thinking in terms of principles and start thinking in terms of calibration.

Calibration means adjusting your method to the context. It assumes that no rule is universally sufficient, but also that not all improvisation is wise. It is the middle path between rigid orthodoxy and chaotic vibes.

In software, calibration looks like this:

  • A best practice becomes helpful when you understand the risk it addresses.
  • A design pattern becomes useful when you know what kind of maintenance burden it reduces.
  • A programming language or framework becomes educational when you have used more than one and can compare tradeoffs.
  • Talking to support, sales, or domain experts reveals constraints your code alone cannot show.

In time management, calibration looks like this:

  • A calendar becomes useful when it reflects your actual energy, not your fantasy self.
  • A planning system becomes useful when it leaves slack for the unexpected.
  • A definition of “time well spent” becomes useful when it includes rest, attention, and relationships, not only output.
  • A day becomes successful when it aligns with your values, not when it squeezes every possible minute for productivity.

The key point is that competence is relational. You are not trying to discover a perfect technique in isolation. You are trying to build judgment in contact with reality. That means making room for error, feedback, and revision.

This is why learning includes regret. Looking back and thinking, “I should have done that differently,” is not evidence that you failed. It is evidence that your model improved. If you never revise your view, you are not wise, you are frozen.

Learning is the experience of becoming the person who can now see the mistake without becoming the mistake.

That distinction matters. If every bad decision becomes an attack on identity, then reflection becomes self-punishment. But if mistakes are treated as calibration data, they become fuel.

A better question than “Am I doing it right?”

The usual question, in both coding and life management, is, “Am I doing this the right way?” That question sounds responsible, but it often hides a trap. It implies that there is a stable answer, and that your job is to find it before time runs out.

A better question is: What am I optimizing for, and what am I willing to trade away?

This reframes both software practice and time use. Maybe you accept a little redundancy in code because it helps newer teammates understand the system. Maybe you accept a slightly less aggressive schedule because it preserves deep work, health, or family time. Maybe you spend time learning a different kind of programming not because it maximizes your current output, but because it broadens your judgment.

That tradeoff awareness is powerful because it replaces guilt with choice. Guilt says, “You should have chosen the perfect thing.” Choice says, “You made the best tradeoff available with the information you had.” Guilt tries to eliminate uncertainty retroactively. Choice accepts uncertainty and acts anyway.

A concrete example: imagine a developer choosing between adding a clever abstraction and writing a more repetitive but clearer implementation. The abstraction might be elegant, but if the team is junior, the codebase is volatile, or the product direction is uncertain, clarity may be more valuable than elegance. The “best” answer depends on what future pain you are most trying to avoid.

Now translate that to a personal calendar. Suppose you have 3 free hours on a Saturday. The time anxious mind asks, “How can I maximize these hours?” The calibrated mind asks, “What outcome would make these hours feel genuinely well spent?” That could mean learning, resting, creating, exercising, or simply being present with other people. The point is not to extract maximum output. The point is to allocate attention in a way that matches your actual life.

This is where the satisfier beats the maximizer. Maximizers keep searching for the perfect use of time or the perfect system. Satisfiers choose a good enough option that serves the purpose, then move on. In a finite life, satisficing is not mediocrity. It is sanity.

The social cure for technical and temporal anxiety

One of the most underrated ways to escape both software dogma and time anxiety is to widen the frame.

In programming, that means talking to people outside your narrow specialty. Support hears where the product breaks in reality. Sales hears what customers think they are buying. Domain experts know the business logic that cannot be inferred from code. Each of these perspectives reveals that the elegant technical solution may be solving the wrong problem.

In life, the parallel is equally important. People who feel time anxiety often think in isolation, as if their life were a private dashboard only they can see. But time is social. Your schedule is shaped by obligations, commitments, relationships, and shared rhythms. A parent, a caregiver, a manager, a student, and a freelancer all experience time differently because time is not just a quantity. It is a web of responsibilities.

This is why external perspectives can dissolve anxiety. Someone else may look at your day and say, “That was a full day,” even when you feel you failed. They see the invisible labor you discounted. In the same way, a teammate may look at your code and say, “That is maintainable,” even when you are fixated on one imperfect detail.

The lesson is not to outsource judgment. It is to remember that your internal evaluator is often biased toward harshness. Cross-functional conversation in software and honest conversation in life both act as corrective lenses.

The same is true of trying different roles early. If you have only ever written one kind of code, or structured your time around one kind of identity, you may confuse familiarity with truth. Variety builds proportional thinking. It teaches you that every approach has costs, and that many “rules” are really specialized responses to narrow conditions.

Key Takeaways

  • Ask for the origin story of every best practice. If a rule feels absolute, look for the failure it was designed to prevent.
  • Replace “Am I doing it right?” with “What am I optimizing for?” This turns guilt into tradeoff awareness.
  • Treat time as something to inhabit, not conquer. Over-monitoring time often increases anxiety and reduces effectiveness.
  • Practice satisficing. Choose a good enough approach that meets your goal, then stop searching for the perfect one.
  • Seek external perspectives. Talk to people outside your immediate role or field to correct blind spots and expand judgment.

Learning without worshipping the method

The real danger in both software and productivity is not bad advice. It is bad reverence.

When you worship the method, you start defending it instead of testing it. You become the person who cannot hear that a practice has outlived its context. You also become the person who cannot stop measuring your own life against an impossible ideal of efficient perfection. That is how a tool turns into an identity, and an identity turns into a prison.

There is another way. It starts with humility: most things are local, provisional, and incomplete. It continues with curiosity: why did this practice emerge, what problem did it solve, and where does it break? It matures into calibration: what does this moment, this team, and this life actually require?

If you can hold that mindset, software becomes less about following rules and more about learning how systems fail. Time becomes less about squeezing productivity from every minute and more about spending your finite attention on what deserves it.

And that may be the most useful insight of all: the point is not to eliminate uncertainty. The point is to get better at living and working inside it.

Sources

← Back to Library

Hatch New Ideas with Glasp AI 🐣

Glasp AI allows you to hatch new ideas based on your curated content. Let's curate and create with Glasp AI :)

Start Hatching 🐣