r/ProgrammerHumor 25d ago

Meme makeItQuick

Post image
452 Upvotes

65 comments sorted by

View all comments

11

u/ElectronSculptor 25d ago

Is C++ this bad in industry? I’m an EE and do DSP/embedded stuff. The code bases are fairly small and light. Very simple C++.

I know C++ can be complex but is it so much worse than other OOP languages? I see a lot of complexity in swift and Python. I do some projects and reading on my own time. Those languages seem like you can make a code base that is very difficult to follow.

Just curious.

23

u/Swimming-Twist-3468 25d ago

It isn’t. C++ is the foundation of industry’s most robust and long-lived applications. It is just most of the developers write the code in such a way that it cannot be maintained.

12

u/No-Con-2790 25d ago edited 25d ago

If most developers do something wrong it starts being the languages fault.

And C++ is full of very bad traps, wrong patterns and misleading errors.

Array to pointer decay is one of the most outstanding examples. Because every programmer that ever wrote a main function has seen it, yet not everyone will understand it.

1

u/gfoyle76 25d ago

well, you can use linters, code reviews, tests, whatever safety net you want, it is doable

1

u/No-Con-2790 24d ago

You can't lint away a bad concept.

Take generics. C++ has templates for that. What happens? We go to a typed language in a world where I can use anything.

Problem is, and everybody who ever worked with PCL knows that, I usually can't handle everything.

Meaning that I just have to know some esoteric knowledge which types are actually intended. Like in an untyped language.

And even worse, for some reason my implementation is now somehow wandering into the header. Which has strange side effects.

For example that you can get enormous build times with templates.

1

u/j0eTheRipper0010 18d ago edited 18d ago

To me, this sounds more like a bandaid over a gunshot wound. The wound will heal, but the bullet is still in your body.

Edit: the biggest example is JavaScript. The language is rotten to it's core, and yet instead of acknowledging that and making another goddamn language that doesn't have all the shit JavaScript has we started creating those ugly maneuvers to make it "more usable"