The above field is supplemented with consent to receive a newsletter containing information and marketing content about the cppstories.com portal from Bartłomiej Filipek codebf based in Krakow. The consent may be withdrawn at any time. See the full Privacy Policy.
This year I had a chance to visit Wroclaw for the 4th edition of Code Dive! Two days of a great programming conference!
Briefly: many of topics related to C++, two days, 40 presentations, lots of people and a beautiful city. What more do you need? :)
Continue below to read my report from the event.
For my article series about C++17 features, I’ve made a separate entry about new attributes. At first sight, I thought that [[nodiscard]] is just another simple and a rarely used thing. But later I thought… hmmm… maybe it might be valuable?
One reason is that [[nodiscard]] might be handy when enforcing code contracts.
Do you write code 100% of your job time?
I’m guessing the answer is no. Ignoring the whole management part, meetings, coffee, youtube, cats, etc, even if you’re sitting at your keyboard you’re not typing all the time. So what else are you doing?
The short answer: you’re probably figuring out what to write and where to add new features (and what to fix)… so you’re mostly reading and trying to understand the code.
Three weeks ago with Jonathan from Fluent C++, we announced a coding challenge: link here.
Let’s meet the winner and discuss some of the best solutions
(Our choice is quite surprising! See why :))
First of all, I’d like to thank you all for the submissions to the challenge. The task was ambitious!
One of the key points of modern C++, as I observe, is to be expressive and use proper types. For example, regarding null pointers, rather than just writing a comment:
void Foo(int* pInt); // pInt cannot be null I should actually use not_null<int *> pInt.
The code looks great now, isn’t it?
Have you been at Cpp Con this year?
I haven’t, but still I plan to watch some good C++ talks. Can you help me a bit and add your notes?
Last update: 14th October 2017
Intro Cpp Con 2017 is over and recently the videos from the talks started to appear.
Let’s put C++17 in practice!
One of the good ways to do it is to take part in a coding challenge.
So together with Jonathan Boccara from Fluent C++ we invite you to participate in “The Expressive C++17 coding challenge”.
The Expressive C++17 coding challenge Jonathan made a few contests on his blog (for example this one), and I thought it might be fun to do something similar for C++17.
The last post in the series about C++17 (STL utils) was posted on 4th September. It happened to be just two days before the final C++17 spec was approved! :)
C++17 is formally approved
2017-09-06 by Herb Sutter
herbsutter.com/2017/09/06/c17-is-formally-approved/
In this post, I’d like to make a little summary, and I also have a bonus for you :)
Real life:
Fixed 1 out of 99 bugs in a project. 117 to go…
Have you experienced something similar? Although it’s impossible to write bug-free code, there are tools and practices to lower the rate of mistakes.
Today, I’d like to run through a gigantic list of freely available resources from the PVS-Studio Team who works with bugs analysis on a daily basis.
The new C++ standard brings many useful additions to the Standard Library. So far we’ve discussed bigger features like the filesystem or parallel algorithms. Today, I want to focus on smaller, but also handy things.
For example, there are utils for handling type safe unions, replacement of void*, string searchers and much more.
C++17 is on the way, and I’m glad to see more books that stay on the bleeding edge of C++ adaptation. Today I’d like to present a book that focuses on the Standard Library.
Is this another great book?
TL; DR: Yes :) But read more to see why :)
Writing multithreaded code is hard. You want to utilize all of the machine’s processing power, keep code simple and avoid data races at the same time.
Let’s see how C++17 can make writing parallel code a bit easier.
Intro With C++11/14 we’ve finally got threading into the standard library. You can now create std::thread and not just depend on third party libraries or a system API.