When Everything Looks Like a Priority
Posted: November 18, 2025 Filed under: Product, Wisdom | Tags: priority Comments Off on When Everything Looks Like a PriorityThere’s a peculiar trap in knowledge work: everything can be justified.
Every meeting has a reason. Every initiative has a case. Every feature solves a real problem. So how do you choose what actually matters when you can make a compelling argument for almost anything?
I used to think the answer was better frameworks. Clearer OKRs. Sharper roadmaps. But I’ve learned it’s something else entirely.
The Attraction Problem
Priority isn’t always rational. Sometimes we chase things because they’re attractive, not because they’re important.
A stakeholder gets excited. The team aligns on an idea. Something feels sexy – modern, innovative, exactly what a great company would do. And suddenly you’re allocating resources to it.
I’ve done this. Multiple times. Chased things because they had alignment and energy behind them, not because they were on the critical path. And when there’s no traction, when reality doesn’t match the excitement, you abandon it. Weeks gone. Delivery target missed.
The cost isn’t just time. It’s the opportunity cost of what you didn’t do because you were doing the attractive thing instead.
Here’s what I’ve realized: attraction is a signal, not a strategy. It tells you something has energy, but energy doesn’t equal priority.
The Busy Trap
We confuse presence with contribution.
You get invited to meetings because you’re a key person. So you show up. You sit there. You listen. But deep down, you know you’re not adding much. The meeting would go on without you. The decisions would be the same.
But saying no feels wrong. It feels like abandoning your responsibility. Like you’re not being a team player.
The truth is harder: being available to everything means being useful to nothing.
Every hour in a meeting that doesn’t need you is an hour not protecting what actually matters. It’s not about being selective – it’s about being honest about where your contribution lives.
The Emotion Tax
Here’s the uncomfortable part: we make resource decisions emotionally more often than we admit.
Something excites us, so we prioritize it. A stakeholder is passionate, so we accommodate it. An idea feels right, so we commit to it.
But emotion is expensive. Not because emotion is bad – it’s not – but because it clouds what’s actually blocking progress.
I’ve had to learn to take emotion out. To be neutral when investing resources. To ask: “Does this move us forward, or does it just feel good?”
That question is brutal. Because often, the answer is uncomfortable.
If Everything is Priority, Nothing Is
The hardest thing I’ve learned: you can’t hold everything at once.
I worked on a marketplace with three sides, double-digit user roles, everything interconnected. Every side felt critical. Every role needed attention. Every feature had a case.
But we couldn’t do it all. So we made a choice: focus on one side first. The operator side. Let everything else wait.
That decision felt wrong. Like we were abandoning important work. But here’s the thing – we weren’t abandoning it. We were sequencing it. And sequencing requires admitting some things matter more right now.
If everything is a priority, nothing is a priority. It’s not a cliché. It’s physics. You can’t be in two places at once.
The 1% Philosophy
The reality of modern work is messy. Priorities shift monthly. Stakeholders have needs. Markets move. Resources change. It feels like biting glass every week.
I’ve stopped pretending there’s a perfect system that eliminates this. There isn’t.
Instead, I’ve embraced something simpler: 1% improvement every day. Not perfection. Not fixing everything. Just slightly better than yesterday.
That philosophy extends to priority itself. You don’t need to nail it every time. You need to keep asking: “What matters most right now?” And then protect that thing.
A Different Question
Maybe the real question isn’t “What are my priorities?” but “What am I willing to let fail?”
Because you can’t succeed at everything. Something will slip. Something will be late. Something will be good enough instead of great.
The question is: what are you choosing?
When you say yes to everything, you’re not choosing. You’re reacting. And reactive work feels like drowning, not shipping.
So here’s what I’ve learned to ask myself:
- If this slips, does the critical path slip?
- Am I doing this because it matters, or because it’s attractive?
- Where is my contribution actually irreplaceable?
These aren’t easy questions. But they’re honest ones.
The Practice
Being neutral about priority is a practice, not a destination. I mess it up regularly. I still get pulled toward shiny things. I still feel the guilt of saying no.
But I’ve realized something: being vulnerable about limits isn’t weakness. It’s clarity.
You can’t do everything. I can’t do everything. And pretending otherwise just makes us tired.
So we do what we can. 1% better every day. Protect the critical path. Be honest about what matters. Let the rest wait.
That’s not resignation. That’s wisdom.

Pilot Priority List – https://xkcd.com/2675
Critical Path First
Posted: November 13, 2025 Filed under: Product | Tags: rant Comments Off on Critical Path FirstWe had double-digit user roles, three sides of a marketplace, and stakeholders who wanted the user journey to be perfect. I was confident we could do it all.
Spoiler: we couldn’t.
Here’s what I learned about actually shipping things.
The Perfect Journey Nobody Took
I was working on a re-platforming project – migrating users to a new system. We’d agreed on the feature set, built the roadmap, and everything looked good. Then stakeholders started emphasizing user experience. They wanted the journey to be perfect before launch.
Makes sense, right? Great UX is important.
So we spent weeks trying to find the right talent to nail the user experience. We had meetings about the journey. We discussed flows. We obsessed over details.
Meanwhile, the real problem was sitting right in front of us: we had no users to onboard. We had no one to even test the system with.
I knew this. Deep down, I knew. But I held onto the UX focus because… well, it felt like the “right” thing to prioritize. Stakeholders wanted it. It sounded smart.
Then I got stuck. Really stuck. And I finally had to voice it out.
“Look,” I said, “there’s a thousand problems we could look at. But we need to hyper-prioritize what we’re actually trying to do here.”
The reality? We needed users. We needed core development done. We couldn’t polish a journey if nobody was on it.
I expected pushback. Instead, the stakeholders got it immediately once we talked about reality and focus. It was easy – almost too easy. The hard part was admitting I’d been chasing the wrong thing.
Back to the Drawing Board
That moment forced us to go back to basics. We had a chicken-and-egg situation: a complex marketplace with three sides, and everything felt critical.
So we asked ourselves two questions:
- What’s the lowest hanging fruit we can learn from?
- What’s the 20% of effort that’ll give us 80% of the impact?
The answer was uncomfortable: focus on the operator side first. The internal users and partners who could actually run the platform. Get them onboarded. Get them operating. Let everything else wait.
If everything is a priority, nothing is a priority.
We channeled all our resources toward that one user group. Not three sides at once. Not the perfect journey for everyone. Just the shortest path to something that works.
What This Looks Like Now
Every Monday, we align. Every Friday, we do show and tell. Every month, we adjust to reality – market changes, stakeholder needs, resource constraints.
It’s not comfortable. It feels like biting glass every week, honestly. Monthly priorities shift. We’re constantly firefighting.
But we’re getting better. 1% every day. We’ll try our best.
The ritual that keeps us honest: We keep asking those two questions. Lowest hanging fruit? 20% for 80%? And we protect the path to that outcome ruthlessly.
Real Talk
Look, you don’t need to be perfect at this. I’m not. I still get pulled into things that don’t matter. Just last week, I had to say no to meetings I kept getting roped into – meetings where I couldn’t contribute anything meaningful.
But here’s what I keep coming back to: focus isn’t about doing everything. It’s about doing the right thing first.
Look at your sprint right now. Your roadmap. Your backlog. What’s actually blocking you from shipping? What’s the critical path?
Start there. Let the rest wait.
Trust me – the perfect user journey will still be there next week. But if you don’t have users, it doesn’t matter anyway.
Spec Debt vs Tech Debt
Posted: October 12, 2025 Filed under: Product Comments Off on Spec Debt vs Tech DebtWe keep blaming “tech debt” for slow delivery.
SDD made a big entry in 2025; but a lot of what hurts velocity isn’t code—it’s spec debt.
Spec debt = ambiguity, contradictions, and missing decisions in the PRD/one-pager that ripple into design, estimates, and code. It compounds just like tech debt—only earlier and nastier.
Symptoms you’re calling tech debt but aren’t:
- Engineers “blocked” waiting on copy, edge cases, or API shapes.
- Designs reworked because constraints surfaced late.
- QA finding “bugs” that are actually unmade decisions.
- Analytics can’t measure success because metrics weren’t specified.
The hidden cost: every unclear line in a spec becomes 3x rework later—design tweaks, code churn, test rewrites, launch delays.
Antidote: Spec QA (5 minutes, zero ceremony)
Before any ticket leaves “Define,” run this checklist:
- Problem & Outcome – What user behavior must change? What metric moves?
- Scope Boundaries – What’s explicitly out? (Name one thing you’ll say no to.)
- Interfaces & Contracts – Events, API shape, states, empty/error cases.
- Constraints – Perf, security, legal, platform limits; acceptable tradeoffs.
- Telemetry – What to log, how we’ll know it worked; guardrail metrics.
- UX Acceptance – Screens, copy, and the “good enough” criteria.
- Rollback – Pre-agreed revert conditions and kill switch owner.
Workflow tweak that pays off:
- PM/Designer drafts the spec → Spec QA huddle (15 min) with EM + 1 Eng → estimates.
- Anything failing the checklist returns to “Define,” not “In progress.”
What you’ll notice in 2 sprints:
- Fewer “quick clarifications.”
- Cleaner PRs, smaller diffs.
- QA writing tests against intent, not vibes.
- “Tech debt” tickets shrink because the code finally had a clear contract.
Call it what it is: most “tech debt” starts life as spec debt. Fix the spec; the code will thank you.
Eventuality
Posted: July 22, 2025 Filed under: Wisdom | Tags: eventuality Comments Off on EventualityI’ve been contemplating a simple yet profound idea lately: when certain outcomes are inevitable, I should be the one to bring them about.
This isn’t about control. It’s about recognizing that some things will happen regardless, and choosing to be an active participant rather than a passive recipient.
Beyond passive acceptance
There’s something empowering about this perspective. Instead of waiting for life to unfold around me, I position myself as a deliberate actor in my own story.
Philosophers might call this “eventual metaphysics” – the recognition that we’re not static beings but constantly transforming entities. We contain both what we are and what we could become.
This isn’t fatalism. It’s about recognizing patterns and likely outcomes, then stepping forward to shape how they manifest.
Ownership in action
When I see something on the horizon – a project needing completion, a conversation requiring attention, a change demanding implementation – I’m learning to step forward rather than waiting for someone else.
As Camus said, “If something is going to happen to me, I want to be there.” Not just physically present, but actively involved in shaping how things unfold.
This approach transforms external inevitabilities into expressions of personal choice. Instead of being subjected to circumstances, I become the agent through which those circumstances manifest.
In reality
In my work, this means taking initiative on inevitable projects, ensuring they reflect my standards and vision.
In relationships, it means having difficult conversations proactively, creating space for resolution before tensions escalate.
In personal growth, it means facing challenges directly rather than waiting until they force themselves upon me.
Finding the right balance
Of course, this idea has its limits. I can’t control everything, nor should I try. Discernment is key – knowing which eventualities warrant my intervention and which are better left to unfold naturally.
There’s also the risk of overextension. Taking ownership of too many outcomes leads to burnout and diminished effectiveness. I’m still learning where to draw these lines.
The deeper current
At its heart, this approach transforms my relationship with time and possibility. I’m no longer waiting for life to happen to me; I’m actively participating in its creation.
It’s about authentic engagement with my own becoming – expressing who I am while shaping who I’ll be.
In choosing to be the agent rather than the object of change, I discover what it truly means to author my own existence. And in that authorship lies the essence of a life fully lived.
Unstuck
Posted: April 8, 2025 Filed under: Diary, Musing Comments Off on UnstuckPM-ing sometimes can be tiring. I have been circling in the same movement.
The wait for strategic clarity is a joke. It never lands. Just empty torrents from upstairs who prefer ambiguity over accountability.
So we drown. Firefighting the daily chaos their vagueness spawns, chasing the phantom of inbox zero, rewriting the same meaningless docs over and over because no one will make a goddamn call.
This isn’t “proactive shaping.” It’s sheer survival.
Sure, anyone can follow a clear plan – that’s the easy part.
But we’re forced to conjure one out of thin air because leadership won’t, or can’t. We learn to stop asking “What’s the direction?” – it’s a wasted question seeking clarity that never arrives.
Instead, we grit our teeth, build the damn raft ourselves, and shove it out saying, “Here. I mapped the chaos you’re ignoring. Poke holes, tear it down, do something – just give us a bearing so we can stop drowning.“
It bleeds you dry. It’s exhausting, thankless work.
Carrying the weight of indecision, constantly course-correcting, buried under tactical emergencies while the strategy remains a ghost. Less product leadership, more glorified chaos janitor.
Understandably, it’s normal to feel stuck sometimes.
I need courage to leverage knowledge and experience to make decisions in an uncertain world. Doing nothing and hoping for direction is a terrible, terrible strategy.
Half the Battle is Showing Up
Posted: April 7, 2025 Filed under: Wisdom | Tags: battle Comments Off on Half the Battle is Showing UpHawking said that. And now here’s how to conquer the rest.
You’ve heard it a million times: “Showing up is half the battle.” And honestly? It’s not wrong. Just getting yourself to the starting line, whatever that looks like, is a genuine win against the forces of inertia and apathy.
Being present puts you in the game. It means you’ve overcome the first, often hardest, obstacle – the resistance to simply start. It builds a baseline of reliability that, frankly, many others fail to achieve. Opportunities don’t knock if you’re not even near the door.
So yes, give yourself credit for showing up. It matters. It builds momentum. It proves you’re willing. It’s the essential first step on any path worth taking.
But here’s the catch: it’s only half. Stop there, and you’re settling for mediocrity. You become part of the furniture – present, but not impactful. You risk stagnation, watching potential slip through your fingers because you were physically there but mentally checked out.
Winning the whole battle demands more than just presence. It demands intention. It demands engagement. It requires you to actively conquer the other, often more challenging, half.
Don’t just attend, engage. Dive into the conversation, listen with purpose, contribute your thoughts. Make your presence felt through active participation, not just by warming a seat.
Presence demands performance. Showing up consistently is vital, but pair it with consistent quality. Deliver work that matters, strive for excellence, and make your reliability count through tangible results.
Spotting problems is easy; anyone can do it. The real value lies in finding answers. Bring solutions to the table, even small ones. Show that you’re thinking ahead, not just reacting to what’s in front of you.
Don’t wait for instructions. Anticipate needs, identify opportunities, and take initiative. Proactive effort screams ownership and separates the contributors from the spectators.
Neutrality is forgettable. Aim for a positive impact. Be the collaborator people seek out, the supportive teammate, the constructive voice. Build energy, don’t just consume it.
Finally, don’t show up just to repeat yesterday. Use your presence to learn, adapt, and evolve. Stay curious, seek feedback, and embrace growth. Stagnation is the enemy of progress.
Showing up is half the battle – a crucial, non-negotiable half. But the real victory, the meaningful progress, the lasting impact? That comes from conquering the rest. Show up, then step up and win the whole damn thing.
Charge!
Compounding Effect
Posted: April 4, 2025 Filed under: Wisdom | Tags: Compounding Comments Off on Compounding EffectThe idea of the ‘compounding effect’ often surfaces when we talk about money. Small sums, invested consistently, growing into surprising wealth over time. It’s a powerful concept.
But this quiet, relentless force reaches far beyond financial ledgers. Reflecting on it, I see it as a fundamental principle shaping our experiences, perhaps one of the unseen architects of the lives we actually build day by day.
It touches everything – our skills, our relationships, even our quiet regrets and hidden triumphs.
What strikes me most is its utter impartiality. Compounding doesn’t play favourites; it works with the same potent force whether we are building up or, sadly, tearing down.
Think of the positive side. Every small act of kindness offered, every page turned in a book, every hour dedicated to honing a craft, every mindful health choice – these are like small deposits into our future selves.
Individually, these actions can feel almost invisible, barely registering on the day’s scale.
Yet, diligently repeated, they build upon one another. They create a quiet momentum, often unseen at first.
Knowledge deepens, skills become instinct, trust solidifies, well-being improves – not always steadily, but often with an accelerating curve. These are the eventual rewards, sometimes blooming long after the initial efforts feel distant.
But this same powerful mechanism fuels the downward slope just as effectively.
A minor procrastination allowed to linger, a small neglect in a relationship, a harsh word spoken in haste, an unhealthy habit excused ‘just this once’ – these are also seeds sown.
They, too, compound. Trust doesn’t shatter instantly; it subtly erodes. Health doesn’t collapse overnight; it quietly degrades.
Opportunities aren’t always dramatically lost; sometimes they just silently slip away. Debts – both literal and metaphorical – can mount almost unseen.
The consequences arrive with equal force, often catching us off guard precisely because each individual misstep felt so trivial, so easy to dismiss at the time.
This lands us squarely at the significance of our choices. Good or bad.
Every decision we make, however seemingly small, feeds into this personal compounding equation. Each one is, in essence, a quiet vote cast for a particular kind of future.
Choosing the stairs instead of the lift, dedicating ten minutes to reading rather than scrolling, mustering the courage for a genuine apology, setting aside even a tiny sum – these aren’t random occurrences.
They are conscious (or sometimes unconscious) nudges, gently steering the trajectory of our health, our knowledge, our relationships, our financial stability.
And, naturally, the reverse holds true. Opting for inaction, choosing momentary indulgence over discipline, or allowing unkindness to pass our lips – these nudge the trajectory in another direction entirely.
Recognising this constant compounding force in my own life is both incredibly empowering and deeply sobering.
It pulls back the curtain, showing that extraordinary results seldom erupt from singular, grand gestures. More often, they are the quiet harvest grown from countless, consistent, seemingly small choices.
This realization lends a profound weight to our everyday actions and highlights the critical importance of simple awareness – of noticing the small things.
The future we step into tomorrow is largely the compounded interest earned on the decisions we are making today.
Whether we find ourselves building a life that feels like it’s flourishing or one quietly eroding, that unseen architect – the compounding effect – is perpetually at work, faithfully building upon the foundations we lay, choice by mindful (or mindless) choice.
Vibe Coding
Posted: February 13, 2025 Filed under: Development, Trick | Tags: paradigm Comments Off on Vibe CodingTwo weeks ago I started to noticed about something that’s both fascinating and slightly unsettling: vibe coding. And no, it’s not about writing code while listening to lo-fi beats (though that sounds nice too).
Vibe coding, as coined by Andrej Karpathy, is essentially “fully giving in to the vibes” and forgetting that code even exists. Instead of writing lines of code, you’re having a conversation with AI about what you want to build. It’s less about “how” and more about “what”.
Think about it: instead of googling Stack Overflow (that was so 2022, who’s still do that?) for the millionth time about that one CSS property you can never remember, you just tell an AI, “Make this button look cooler.” And it… just does it?
Even wild, you can make it independently execute 10 steps by itself.
The wild part is that it works. People are building entire applications without writing a single line of traditional code. It’s like having a really smart dev friend who does all the technical heavy lifting while you focus on the creative vision. I been using voice/STT as interface (because typing is slow) and AI IDE like Cursor since last year (even longer with voice as interface – almost 10 years till this date, can you believe it? **Dragon Dictate, hello!), and I agreed it was new paradigm even though I felt like I was cheating.
But here’s what fascinates me most: we’re moving from a world where coding was about speaking the computer’s language to one where computers are learning to speak ours. It’s not about syntax anymore—it’s about vibes.
Is this the future of software development? Maybe. Will it replace traditional coding? Probably not entirely. But it’s definitely changing how we think about building software. – I am firm believer the future is also agentic.
For now, I’m both excited and slightly terrified to see where this goes. After all, sometimes the best vibes come from understanding what’s happening under the hood.
What do you think about this shift? Are you ready to give in to the vibes?
ROI Over Use Cases
Posted: February 13, 2025 Filed under: Product | Tags: perfectionism, pm Comments Off on ROI Over Use CasesI’ve often found myself in what I now call “researcher’s syndrome” – that relentless urge to cover all angles, explore every possibility, and chase down every use case. As a PM, it felt natural: the more I knew, the better decisions I could make. Or so I thought. This is the story of how I learned that sometimes, less truly is more.
The Realization
In my early PM days, I was that person with sticky notes everywhere and a roadmap that looked like a tangled web of possibilities. I believed success meant creating products that solved every conceivable user need. My research was exhaustive, my feature sets were bloated, and honestly? My team was exhausted.
It wasn’t until a mentor @chuazm bluntly told me I was “trying to boil the ocean” that something clicked. The truth hit hard: in trying to solve everything, I was solving nothing particularly well. I also pickup new approach to first principal thinking with our EM @lsshawn.
Why Less Is More
Here’s what I’ve learned about focusing on what truly matters:
- Clarity Over Clutter
When we focus on fewer features, we gain clarity about what our product actually stands for. It’s not about doing less work – it’s about doing better work. Apple’s approach to product design has been my north star here. Their relentless pursuit of simplicity isn’t just aesthetic; it’s strategic. - Depth Over Breadth
Think about Slack. They could’ve tried competing with full project management tools or email clients, but instead, they focused on one thing: making team communication seamless. This laser focus allowed them to excel where it mattered most. - Strategic Alignment with ROI
The shift from “What else can we add?” to “What will deliver the highest impact?” transformed my decision-making process. Not all features are created equal – some might delight users but barely move the needle on business metrics. Learning to differentiate between “nice to have” and “need to have” became crucial.
The Philosophy in Practice
Here’s how I’ve integrated this mindset into my work:
- Start with Why: Every feature needs a clear purpose tied to user needs or business outcomes.
- Kill Your Darlings: Regular roadmap audits are essential. Be ruthless about removing features that don’t add significant value.
- Focus on Outcomes: Shift your thinking from features shipped to problems solved.
One of my proudest moments was when our team chose to improve an existing workflow used by 80% of our users instead of building a flashy new feature. The result? A 30% increase in user satisfaction. Sometimes the best solutions aren’t the most exciting ones.
A Closing Thought
Minimalism in product management isn’t about taking shortcuts – it’s about making deliberate choices that amplify impact. It’s recognizing that our resources are finite and choosing to use them wisely.
If you’re feeling overwhelmed by possibilities or paralyzed by options, remember this: success isn’t measured by how many features you ship, but by how well you solve real problems. Sometimes, doing less is the bravest – and smartest – choice we can make.
I’ve learned that my initial instinct to cover every base wasn’t just about thoroughness – it was about validation. But true impact comes from focusing on what matters most and executing it exceptionally well.
What could you achieve by doing less, but doing it better?
P/S: I got inspiration to write this after watch Arseny Shatokhin video on AI agent development.
To Code or Not to Code, Revisited
Posted: February 9, 2025 Filed under: Uncategorized Comments Off on To Code or Not to Code, RevisitedSo, I ranted about code in static papers a while back (someone asked me about this – so I’d figure allow me to do a follow up), but what if your code is the real star of the show? Can you still sneak some in without drowning readers in curly braces?
Yes.
If your snippets are absolutely critical—like the secret sauce that everyone needs to see—fine, slip in a few lines. Just make them short and sweet. No one wants to navigate a labyrinth of semicolons; your readers only care about that one essential function or loop that proves your point. But don’t stop there: you still need to explain why those lines matter. If you’re showing off a special parsing trick or a brand-new algorithm, tell us why it’s special—don’t just paste it and pray.
Most importantly, provide a link to the full code in its natural habitat, whether that’s GitHub or another platform. Readers who truly want to dig deeper will thank you for letting them see—and run—the real thing, rather than forcing them to squint at a crammed PDF. Give context, give clarity, and keep the clutter to a minimum. After all, no one’s going to appreciate a code dump… not even your future self re-reading that paper.
Keep it stupid simple. KISS.