Bullsh*t Enginners Say Tier List | The Standup
Based on The PrimeTime's video on YouTube. If you like this content, support the original creators by watching, liking and subscribing to their content.
“Premature optimization is the root of all evil” was ranked worst because “premature” is undefined and the advice provides no actionable decision rule.
Briefing
A group of programmers and engineers ranked common “thought-terminating clichés” in software engineering—phrases that shut down discussion instead of clarifying tradeoffs. The central takeaway: many of these lines are harmful not because they’re always wrong, but because they prematurely end the reasoning needed to choose the right technical path, often masking uncertainty, shifting blame, or locking teams into bad decisions.
The discussion put “premature optimization is the root of all evil” at the bottom (F tier). The complaint wasn’t that optimization is never needed; it was that the word “premature” makes the advice meaningless. Optimization can be appropriate early, and the phrase gives no actionable criteria for when to measure, what to optimize, or what “premature” even means in context. Closely related, “never do a full rewrite” also drew heavy criticism, landing near the very bottom (F tier in the group’s final leaning). While the phrase is often treated as a rule of thumb, the participants argued that full rewrites can be justified—especially when baked-in complexity, missing knowledge, or a fundamentally broken design makes incremental change too risky. Still, the group agreed that “never” is too absolute, and in practice it can trap teams in legacy code.
Other clichés earned mid-to-high rankings depending on how honest they were about tradeoffs. “Programmer time is worth more than CPU time” landed around B/C. The group disliked the attitude when it becomes an excuse to ship inefficient software indefinitely, but they acknowledged it can be a pragmatic business stance when the goal is to buy compute rather than engineer performance. The phrase “make it work, make it right, make it fast” was also graded as B: it sounds reasonable, yet it often gets used to defer the hard requirements work until later, encouraging teams to ship something that works but is structurally hard to optimize. Participants suggested a more truthful framing—prototype first, or “make it work but don’t ship it,” then iterate.
Several “process” phrases were treated as especially unhelpful in team settings. “Don’t repeat yourself” (DRY) was debated: it can be valuable for individual code, but becomes thought-terminating when used to force abstractions that add complexity, create “util” graveyards, or block straightforward, readable duplication. “Use the right tool for the job” split the room: one side saw it as S tier because it should mean choosing tools based on constraints (e.g., Rust for memory safety, C when you intentionally need unsafe control), while others argued it’s often used as a lazy justification for whatever stack is fashionable—like defaulting to TypeScript for everything.
The group also ranked “best practices” talk as a frequent red flag. “Use my phone / use my best practices” was treated as S tier because it offers no evidence, changes over time, and turns engineering judgment into authority. “You ain’t going to need it” was discussed as an “ultimate self-terminating” cliché, but the participants admitted they hadn’t encountered it often enough to rank confidently.
Overall, the ranking exercise framed these phrases as shortcuts that can end productive technical debate. The most consistent remedy across the conversation: replace absolutes with context—measure, prototype, and be explicit about goals—so teams don’t confuse slogans with engineering decisions.
Cornell Notes
Engineers ranked common “thought-terminating” software clichés by how much they shut down useful reasoning. The lowest scores went to statements that are either meaningless (“premature optimization is the root of all evil”) or too absolute to be safe (“never do a full rewrite”). Mid-tier phrases were often seen as situational: “programmer time is worth more than CPU time” can be honest about tradeoffs, but becomes harmful if it excuses permanent inefficiency. Several team-oriented slogans—especially “best practices” and DRY-as-a-command—were criticized for encouraging authority over evidence and for pushing abstractions that add complexity. The practical message: swap slogans for context, measurement, and explicit goals (prototype vs. ship, incremental vs. rewrite).
Why did “premature optimization is the root of all evil” land at the very bottom?
What’s the core critique of “never do a full rewrite,” and why wasn’t it treated as universally correct?
How did the participants evaluate “programmer time is worth more than CPU time”?
Why was “make it work, make it right, make it fast” considered harmful in practice?
What was the nuanced take on “Don’t Repeat Yourself” (DRY)?
Why did “use the right tool for the job” get both high praise and strong backlash?
Review Questions
- Which phrases were criticized for being “non-statements,” and what about their wording made them unhelpful?
- Give one example of how a phrase like “never do a full rewrite” can become harmful even if the underlying concern is valid.
- How do the participants distinguish between DRY as a personal coding principle versus DRY as a team-level argument?
Key Points
- 1
“Premature optimization is the root of all evil” was ranked worst because “premature” is undefined and the advice provides no actionable decision rule.
- 2
“Never do a full rewrite” was treated as too absolute; full rewrites can be justified when incremental change is too risky or when the system’s complexity and knowledge make iteration ineffective.
- 3
“Programmer time is worth more than CPU time” was graded mid-tier because it can reflect a legitimate tradeoff, but it becomes harmful when it excuses permanent performance neglect.
- 4
“Make it work, make it right, make it fast” was rated mid-tier because it often gets used to defer requirements and structural planning, making later optimization harder.
- 5
DRY was criticized when used to force abstractions in team arguments, but supported when it’s an honest response to duplicated logic in one’s own code.
- 6
“Use the right tool for the job” was judged by intent: it’s valuable when tied to constraints, but becomes thought-terminating when it’s just a justification for fashionable defaults.
- 7
“Best practices” talk was treated as especially suspect because it often lacks evidence, changes over time, and replaces engineering judgment with authority.