No one wants to learn by mistakes, but we cannot learn enough from successes to go beyond the state of the art... — Bjarne Stroustrup

No one wants to learn by mistakes, but we cannot learn enough from successes to go beyond the state of the art.

Author: Bjarne Stroustrup

Insight: We all love a success story. It's satisfying, shareable, and makes us feel like we're on the right track. But here's the uncomfortable truth: success doesn't actually teach you much. When something works, you know the endpoint, but you learn almost nothing about the boundaries—where it breaks, what assumptions it relied on, what else might have worked even better. You're stuck at whatever level of understanding got you across the finish line. Mistakes, though? They're brutal teachers, but they're thorough. Failure forces you to examine what you believed but got wrong. It exposes the gap between your mental model and reality. Whether you're learning to code, trying to improve a relationship, or building a business, your real growth happens when something doesn't work and you have to figure out why. Success lets you stay where you are. Mistakes push you forward. This is why the most interesting people tend to be the ones who've failed publicly and learned from it—not because failure is good in itself, but because they're no longer satisfied with surface-level understanding. They've been forced beyond it. If you want to actually improve rather than just repeat what already works, you need to stop avoiding mistakes and start paying attention to them.

Source: The C++ Programming Language (4th Edition), section 1.2.1, 2013

No one wants to learn by mistakes, but we cannot learn enough from successes to go beyond the state of the art.

Bjarne StroustrupThe C++ Programming Language (4th Edition), section 1.2.1, 2013

Success stops you, failure teaches you

We all love a success story. It's satisfying, shareable, and makes us feel like we're on the right track. But here's the uncomfortable truth: success doesn't actually teach you much. When something works, you know the endpoint, but you learn almost nothing about the boundaries—where it breaks, what assumptions it relied on, what else might have worked even better. You're stuck at whatever level of understanding got you across the finish line.

Mistakes, though? They're brutal teachers, but they're thorough. Failure forces you to examine what you believed but got wrong. It exposes the gap between your mental model and reality. Whether you're learning to code, trying to improve a relationship, or building a business, your real growth happens when something doesn't work and you have to figure out why. Success lets you stay where you are. Mistakes push you forward.

This is why the most interesting people tend to be the ones who've failed publicly and learned from it—not because failure is good in itself, but because they're no longer satisfied with surface-level understanding. They've been forced beyond it. If you want to actually improve rather than just repeat what already works, you need to stop avoiding mistakes and start paying attention to them.

Comments

Sign in to leave a comment or reply to one.

Sign in

Bjarne Stroustrup

Bjarne Stroustrup is a Danish-born computer scientist known for creating the C++ programming language. He worked at Bell Labs, AT&T, and Texas A&M University, and is recognized for his significant contributions to the field of computer science through the development of C++, which has become one of the most widely used programming languages in the world.

Graph

Related