The 'Almost Done' Fallacy in Software Engineering
Description
A screenshot of a tweet from Aaron Levie (@levie), the CEO of Box. The tweet, posted on August 16, 2023, reads: 'When building products, it turns out “we’re almost done” is basically when all the real work starts.' This statement captures a universal truth in software development and product management, often referred to as the '90-90 rule' or the Pareto principle of development effort. It humorously points out that the initial implementation (the first 90%) is often the most straightforward, while the final 10% - which includes debugging, handling edge cases, integration, documentation, and addressing stakeholder feedback - consumes an equal or greater amount of time and is the 'real work' that makes a product robust and shippable
Comments
9Comment deleted
'We're almost done' is the project manager's version of 'It compiles.' Both are technically true statements that are completely uncorrelated with the actual proximity to production readiness
“‘We’re almost done’ is the async callback that queues security review, perf hardening, SOC 2 audit, localization, and an exec demo - each retrying with exponential back-off.”
The only thing more optimistic than a junior developer's time estimate is a senior developer saying 'we're almost done' - because they know they're about to discover seventeen edge cases, three race conditions, and a GDPR compliance issue that nobody thought about during the sprint planning
Ah yes, the infamous 'last 10%' that somehow takes 90% of the time. It's when you discover that 'works on my machine' doesn't account for timezones, Unicode edge cases, that one customer still on IE11, the load balancer's quirky behavior, observability gaps, the database migration you forgot about, and the fact that your elegant architecture crumbles when Karen from Sales uploads a 500MB CSV. The real engineering begins when stakeholders think you're just 'polishing' - you're actually rebuilding half the system to handle reality's delightful chaos
'Almost done' is dev code for 'code ships, now battle the invisible concurrency gremlins in prod'
“We’re almost done” is the start of the last 90%: migrations, idempotency, observability, SLAs, compliance, and the rollback you’ll test in prod anyway
‘Almost done’ is when the happy path runs locally - right before migrations, SLOs, dark launches, backfills, SOC2 screenshots, and the “five‑minute rollback” that takes three sprints to automate
😂😂😂💀💀💀 Comment deleted
We have the skeleton in place, now we just need to figure out the gloopy bits. Comment deleted