Click here to Skip to main content
15,891,136 members
Articles / Programming Languages / C++17

From Modern to Unbelievably Modern C++

Rate me:
Please Sign up or sign in to vote.
5.00/5 (1 vote)
20 Jun 2023CPOL2 min read 12.6K   1   3
CoreC++ talk - experience summarize, and self opinions

Two weeks ago, I was giving a talk alongside a good friend of mine, Daisy Hollman, at the Israel CoreC++ conference. This was a really exciting & terrifying moment, but giving this talk was very important to me for many reasons. One of the reasons is that I truly believe in the abilities of modern C++ to make any C++ code a better code.

When I started this blog, it was mainly about how to do things in “modern” C++11/14, and how the same things can be done in (really) modern C++17/20.

When I was looking for (const auto& job : jobs), about a year ago in Israel, I was really surprised by how many companies are still working with C++11/14 (and insist on continuing to do that). This was almost the first question I asked during the interview process. Then I asked all these companies, if they are willing to (std::)move (std::)forward to a newer C++ version. The average answer I got was “if there will be reasons for that, we won’t avoid that” (or if (!reasons.empty())), and this answer shows how little knowledge about C++ these companies had.

C++
constexpr long double operator""_percents(long double percents)
{
    return percents * 0.01;
}

Reasons? Almost every C++ conference that exists around the world, has something like 80_percents talks about modern C++ abilities. Abilities like concepts, fold-expressions, attributes, constexpr, syntax, and more. I have to say that I was deeply disappointed by the status of most companies, that their main language (if not the only one) is C++.

So after more than two years of convincing from Inbal Levi, and the help she got from Daisy Hollman this year (and a lot of mental & mentoring support from Dafna Mordechai & Baot community), I decided to finally give a talk about the thing that should have been spoken a very long (long) time ago.

For all talk slides, you can goto the GitHub repo. When the talk will be uploaded to YouTube a goto label will be here too (and you can follow CoreC++ channel for updates).

The talk was better than I (std::)expected, and I got amazing feedback from everyone. It was really exciting to give my first talk in front of so many people, and I hope it will lead the change in the C++ industry.

Think About It

You decided to work with “modern” C++, so it’s time to start working with modern C++ (or at least please don’t look for modern C++ developers if you are currently working with C++14, someone told me that lies can’t (std::)move so far).

It’s time to stop calling C++11/14 modern C++, it’s not modern anymore. Maybe call it “no so old C++”, you may also call it “C/C++”, or even “old modern C++”. But you really don’t have the legitimization to call it “Modern C++”, because it’s not.

And now for some pictures that a good friend took from the talk (thank you Chen Angel):

Image 1

Image 2

Image 3

Image 4

Image 5

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Software Developer (Senior)
Israel Israel
Senior C++ developer.
C++ Senioreas blog writer.
Passionate about investigating the boundaries and exploring the advanced capabilities of C++.

Comments and Discussions

 
QuestionReal-Time Embedded Development Pin
etkid8426-Jun-23 6:14
etkid8426-Jun-23 6:14 
It may be helpful for someone/some organization to go through some of the newer features and determine what applications you can use them without any harm to your application. For example, many of the new features end up being verboten for the real-time embedded community and I'm sure other communities as well.
~d~

QuestionHype stuff is not always god for companies. Pin
howieh20-Jun-23 2:31
howieh20-Jun-23 2:31 
AnswerRe: Hype stuff is not always god for companies. Pin
honey the codewitch20-Jun-23 3:12
mvahoney the codewitch20-Jun-23 3:12 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.