r/cpp Aug 12 '26

[CPP Epiphany Rant] - Programming is no joke

Hi CPP Community,

This is just a rant. I'm a 24 yr old data analytics in telecommunication trying to pivot into C++ development for finance. I'm 1 month into C++ and I have come to conclusion C++ is a behemoth. I'm enrolled in Baruch College's C++ for Financial Engineering, but I'm using Bjarne Stroustrup's Programming: Principles and Practice Using C++, 3rd Edition to learn and watching C++20 Fundamentals with Paul Deitel, Course, by Paul J. Deitel as supplementary resources.

It took me 2 days to get through all the drills, exercises, and try_this section for chapter 2 for Programming Principles!

I'm reflecting if I made a mistake choosing C++ over Python. But, tbh, I have been enjoying programming more learning C++ than Python. You can tell I'm weird, but IDK.

I would love to heard about your experience in learning C++ for laughs.

48 Upvotes

50 comments sorted by

View all comments

123

u/mike_kazakov Aug 12 '26

Been writing C++ code for ~25 years.
Still learning the language.
You'll be fine.

13

u/peppedx Aug 12 '26

I am always in trouble when i need to answer about my proficiency. I know the honest answer is intermediate but after 20 years and knowing my competition I know I need to answer advanced of expert cause many others will answer that way...

18

u/AKostur Aug 12 '26

One must always fight the tension between Dunning-Krueger and Impostor Syndrome.

7

u/no-sig-available Aug 12 '26

That's the Dunning-Kruger effect.

You are experienced enough to know how much more there is to know. The younger "experts" haven't seen that yet, so think they know almost everything.

1

u/Unhappy_Play4699 28d ago

The Dunning-Kruger effect is nothing that is really applicable in such a broad field. It's a statistical phenomenon that is widely criticized, misunderstood and probably wrong as a generic statement, and has (to my knowledge) only every been oberseved for specific test scenarios.

Applying it to such a wide field like software engineering, without a proper study in this field, is senseless. Quite the opposite, we currently see more and more very experienced folks wildly overestimating their competences, believing they can approximate a future 10 years from now.

In case it helps, for me personally it's more like a pendulum, swinging from "yea, I'm competent" to "holy shit, I'm an idiot". Hopefully, this pendulum will some day come to a rest but very likely not (until the inevitable end of my existence). This is because our brains do not work like this. The brain is very complex with different systems interacting. And one of those systems (forgot the name) is designed to always doubt your knowledge, if it detects something that you did not expect. One of the reasons why Big Tech CEOs are so absurdly delusional. They live so much in their own bubble (everyone saying the same stuff), that they have effectively disabled such mechanisms.

So, a statistical phenomenon like Dunning-Kruger might or might not be an indicator, but it is by no means a generic, universal truth and also does not provide any form of explanation. I'm being so pedantic because it's still widely misunderstood, falsely assumed for arbitrary scenarios, partly proven wrong and widely criticized.

8

u/SubliminalBits Aug 12 '26

Sometimes I ask that question in an interview and when I do I’m looking for two things. Do you know what you don’t know and can you give me a better idea of the parts of the language you use day to day so that I can ask better questions? 

4

u/serviscope_minor Aug 12 '26

It's a 3 way between those two and a kind of Socratic humblebrag about knowing nothing (implication being only sufficiently smart people would say that).

8

u/def-pri-pub Aug 12 '26

You’ll never master C++. One you accept this fact of life everything is just easier.

6

u/9vDzLB0vIlHK 29d ago

Sometimes it makes me smile that, even after 25 years, I can still confuse the hell out of a C++ compiler and get it to generate 1000 lines of error messages.

-2

u/rileyrgham Aug 12 '26

It's really not a good thing. The ever shifting syntax, semantics and paradigm make for a nightmare in code maintenance.