A very recent university graduate joined our company many years ago. He was quite the C++ wizard, whereas we were slowly migrating from VAX Pascal to C++. No one could understand the code he wrote as he was using all kinds of jiggery pokery without comments. We had to ask him to simplify and comment his code! 😁
Some genius programmer made a totally new shine kernel for the scientific app we had, using template metaprogramming. I had to finalise it. I still nightmare about the errors (GCC 4.8).
If you think C++ is easy, then this is a simple trick to bump up the challenge IMO.
“There are only two kinds of programming languages: the ones people complain about and the ones nobody uses.” This is a famous quote attributed to Bjarne Stroustrup, the creator of C++.
I don't use C++ and I complain about it all the time. Never have I had a project that couldn't be completed in equal or better accuracy in something other than C++, and the amount of development time it adds on just to use the damn thing is prohibitive. Let alone fast compilation for iterative design, or reduction in boilerplate. I feel the only thing C++ has is seniority and a smidgen of performance, and performance is rapidly being approached or exceeded by projects like rust.
I think there are two types of programming languages:
Good ones that are expressive and readable, like you need from a language.
And
Things that sorely need replacement.
Sorry, I just really fucking hate that quote. It's so pretentious and stupid, and doesn't allow for the development of anything new unless people don't like it. Programmers are surprisingly conservative.
Opening and closing a database connection is a slow and expensive operation.
That depends a lot on your RDBMS and its configuration. For example, MariaDB can use a pool of connection threads so opening one doesn't take a lot of time.