I feel like C++ is a language that can be used very well by people who really mastered the language. However it is extremely hard for novices to pick up. Even "good" programmers make mistakes, because in there exist a multitude of ways to do something, and for them its next to impossible to know which one is the "right one". If you take a class from an above average programmer, you'd still find tons of things to improve: const correctness, exception safety, copying not handled properly, parameters not passed at maximum efficiency, RAII not used and so on.. Often their classes even work in the current usage patterns, yet are in fact incorrect and lead to bugs when used differently.
Do you think there is anything that can be done against this issue? I feel like teaching does not really solve this, because there is simply too much to learn about the language right now. Not ever breaking backwards compatibility makes the language perpetually grow and even intensifies this issue. Is C++ becoming a language of just a few experts...? (if this isn't already the case oftentimes...)
Dtag6 karma
Hi Andrei,
I feel like C++ is a language that can be used very well by people who really mastered the language. However it is extremely hard for novices to pick up. Even "good" programmers make mistakes, because in there exist a multitude of ways to do something, and for them its next to impossible to know which one is the "right one". If you take a class from an above average programmer, you'd still find tons of things to improve: const correctness, exception safety, copying not handled properly, parameters not passed at maximum efficiency, RAII not used and so on.. Often their classes even work in the current usage patterns, yet are in fact incorrect and lead to bugs when used differently.
Do you think there is anything that can be done against this issue? I feel like teaching does not really solve this, because there is simply too much to learn about the language right now. Not ever breaking backwards compatibility makes the language perpetually grow and even intensifies this issue. Is C++ becoming a language of just a few experts...? (if this isn't already the case oftentimes...)
View HistoryShare Link