July 26, 2007
Follow me on Twitter

Impossible, Infeasible, Non-Trivial

Charles Miller has a nice explanation of the exact meaning of some terms that software engineers use all the time, but which also have less-precise, everyday meaning.

Speaking casually, a "very hard" problem is one that you can't solve off the top of your head, a problem that would require some work. But in software engineering, a "very hard" problem is one that you can't quite prove has no solution, but you can prove that, if you solved it, you'd also have solved some other problems that have resisted attack by thousands of engineers for decades, despite the promise of incredible fame and wealth to whoever came up with the answer.

So, yes, "very hard" means something specific and special.