Expecting a 7 on a Dice
You know that feeling when you’re in a meeting, and someone suggests an idea so baffling that you glance around to see if you’re on a hidden camera show? Yeah, me too. After over a decade in software development, I’ve collected more of these moments than I’d like to admit. You know what I would like to call this? “Expecting to see 7 on a dice.” Because no matter how many times you roll, you’re just not going to get it. Yet, somehow, some leaders in tech keep shaking that dice, convinced that this time it’ll be different.
Rolling the Impossible
Picture this: You’re working on a project with a tight deadline. The requirements are clear, the team is competent, and everything should be smooth sailing. Then, out of nowhere, management decides to change the tech stack entirely because they read an article about a new framework that’s all the rage. Never mind that the team has no experience with it, or that it doesn’t fit the project’s needs. But hey, it’s new and shiny! They expect the team to not only adapt overnight but also to meet the original deadline. That’s like rolling a six-sided dice and confidently betting on a seven.
Close Enough Isn’t Good Enough
What’s more amusing (or frustrating, depending on your caffeine levels) is when the outcome is close to their unrealistic expectations, and they consider it a win. “We got a six! That’s almost a seven. Great job, team!” Meanwhile, the team is exhausted, the codebase is a mess, and technical debt is piling up like dishes after a college party. But who cares? We were close!
Why Does This Happen?
So why do smart people make such questionable decisions? Here’s my take:
-
Chasing Trends: In the fast-paced tech world, there’s a constant pressure to adopt the latest tools and frameworks. Some leaders equate new with better without considering whether it’s suitable for the task at hand.
-
Misaligned Goals: Often, there’s a disconnect between what management wants and what the team needs. Management might prioritize flashy features to impress stakeholders, while the team is trying to build a stable product.
-
Overconfidence in Abilities: There’s a belief that because the team is skilled, they can handle any curveball thrown their way. While it’s great to have confidence in your team, there’s a fine line between optimism and setting them up for failure.
-
Fear of Missing Out (FOMO): Nobody wants to be left behind. If competitors are adopting new technologies, some leaders feel compelled to do the same, regardless of whether it makes sense for their projects.
-
Just Trying Something New: To me this is the worst one. Everything is working but you hadn’t have a new idea in a while? Let’s make something up and break everything all together.
The Impact on the Team
These unrealistic expectations can take a toll:
-
Burnout: Constantly trying to meet impossible goals wears people out. Good developers might start looking for the exit.
-
Lowered Morale: When efforts aren’t aligned with realistic outcomes, it’s hard to stay motivated.
-
Technical Debt: Cutting corners to meet absurd deadlines leads to messy code, which causes more problems down the line.
-
Doing the Right Thing the Wrong Way: Sometimes, the intentions are good, but the execution is flawed. For example, a manager might push for unit testing (a good thing) but demand 100% code coverage overnight (not so good). The team scrambles to write tests—not necessarily good ones—just to hit the number. The result? A false sense of security and wasted effort. It’s like trying to get fit by going from zero to running a marathon in a week. The goal is admirable, but the approach is likely to land you in the hospital rather than on the podium.
Breaking the Cycle
So, how do we stop expecting sevens on a six-sided dice?
-
Set Realistic Goals: Acknowledge the limitations and capabilities of your team and tools.
-
Open Communication: Encourage a culture where team members can voice concerns without fear of repercussions.
-
Act On Concerns: It’s not enough if you hear people and don’t fire them, listen and change the way if you hear it from everyone. You don’t have to wait for the next year plans.
-
Continuous Learning: Stay updated with industry trends but evaluate them critically before jumping on the bandwagon.
-
Align Objectives: Ensure that everyone is on the same page regarding project goals and methods.
Final Thoughts
In my years slogging through code and crunching deadlines, I’ve learned that success in tech isn’t just about the latest languages or the smartest algorithms. It’s about people working together toward achievable goals with clear communication. Managers and leaders play a crucial role in setting the tone.
So next time you find yourself—or someone else—expecting a seven on a dice, take a step back. Maybe it’s time to question whether you’re rolling the right dice or playing the right game at all. After all, insanity is doing the same thing over and over and expecting different results. Or in this case, expecting a number that doesn’t exist.
Let’s stop the madness and start rolling with intention.