Tech News
← Back to articles

In Defense of C++

read original related products more articles

Dayvi Schuster 12 min read Tuesday, September 9, 2025 In Defense of C++ Why C++ remains a powerful and relevant programming language in today's tech landscape.

The Reputation of C++

C++ has often and frequently been criticized for its complexity, steep learning curve, and most of all for its ability to allow the developers using it to not only shoot themselves in the foot, but to blow off their whole leg in the process. But do these criticisms hold up under scrutiny?

Well, in this blog post, I aim to tackle some of the most common criticisms of C++ and provide a balanced perspective on its strengths and weaknesses.

C++ is “Complex”

C++ is indeed a complex language, with a vast array of features and capabilities. For any one thing you wish to achieve in C++, there are about a dozen different ways to do it, each with its own trade-offs and implications. So, as a developer, how are you to know which approach is the best one for your specific use case? Surely you have to have a deep understanding of the language to make these decisions, right?

Not really… I mean, don’t get me wrong, it helps, but it’s not a hard requirement. Premature optimization is the root of all evil, and in C++, you can write perfectly fine code without ever needing to worry about the more complex features of the language. You can write simple, readable, and maintainable code in C++ without ever needing to use templates, operator overloading, or any of the other more advanced features of the language.

There’s this idea that for everything you want to do in any programming language, you need to use the most efficient and correct approach possible. Python has this with their pythonic way of doing things, Java has this, C# has this, and Go has this. Heck, even something as simple as painting HTML onto a browser needs to be reinvented every couple of years and argued about ad nauseam. Here’s the thing, though, in most cases, there is no one right way to do something. The hallowed “best approach” is often just a matter of personal or team preference. The idea that if you just write your code in the “best” and correct way, you’ll never need to worry about maintaining it is just plain wrong.

Don’t worry so much about using the “best” approach; worry more about writing code that is easy to read and understand. If you do that, you’ll be fine.

C++ is very old, in fact, it came out in 1985, to put it into perspective, that’s 4 years before the first version of Windows was released, and 6 years before the first version of Linux came out, or to drive the point even further home, back when the last 8-bit computer was released. So yes, C++ is quite old by any standard. But does that make it outdated?

... continue reading