Welcome to new C++ Links - most important and useful articles, podcasts and videos that happen between 29th December 2018 and 4th of January 2019.

We are back after a month break - we hope that we won’t have such long breaks in the future.
The most important event from the last weeks is “Niebler Gate”, long and controversial topic that started from Eric Niebler post. It relates to the state of C++, “debug-ability”, entry level for learning C++, gamedev and more.

Niebler Gate  

  1. Everything started from the Eric Niebler post. As you may know, Eric is the author of famous Ranges library (thank you, Eric!). This post was not really well received (see reddit, Twitter or hacker news discussions)
    ericniebler.com/2018/12/05/standard-ranges/

  2. Jason Meisel wrote a follow-up post, showing that readability of the code may be improved, the author shows how to use coroutine generator simplify it:
    medium.com/@jasonmeisel/ranges-code-quality-and-the-future-of-c-99adc6199608

  3. Aras Pranckevičius wrote really long post, criticizing current direction of C++ (see twitter or reddit discussions about it)
    aras-p.info/blog/2018/12/28/Modern-C-Lamentations/

  4. Sean Parent wrote a response to Aras’ blog post, however much more general thoughts about it (please point that he explain in twitter thread what he means using the word “embarrassed”):
    sean-parent.stlab.cc/2018/12/30/cpp-ruminations.html

  5. Another response - from Ben Deane - about general problems in gamedev in industry. His conclusion is: C++ devs from game industry should be more involved in C++.
    elbeno.com/blog/?p=1598

  6. Mathieu Ropert also put a comment on his blog, strongly defending C++ direction:
    mropert.github.io/2019/01/02/gamedev_intro_to_modern_cpp/

Other  

  1. If you like to see what happened in the C++ ecosystem in 2018, then checkout Bartek’s article - “C++ Status At The End Of 2018“:
    bfilipek.com/2018/12/c-at-end-of-2018

  2. Jonathan Boccara shows interesting idea how to not forgot about TODO comments:
    fluentcpp.com/2019/01/01/todo_before-clean-codebase-2019/

  3. If you are not familiar yet with Concepts yet - take a look at series from Sticky Bits:
    feabhas.com/2018/12/a-brief-introduction-to-concepts-part-1/
    feabhas.com/2018/12/a-brief-introduction-to-concepts-part-2/

  4. Another post from Jonathan Boccara - he explains why functional programming is not a solution for all of the problems:
    fluentcpp.com/2019/01/04/functional-programming-is-not-a-silver-bullet/

  5. Did you know, that there is something better than Doxygen? It’s based on doxygen, but produces nicer output:
    blog.magnum.graphics/meta/improved-doxygen-documentation-and-search/

  6. Arthur O’Dwyer wrote what “const” means when it is used as an argument:
    quuxplusone.github.io/blog/2019/01/03/const-is-a-contract/

  7. Jason Turner shows on his C++ Weekly how to use python pip for getting C++ tooling stuff:
    youtube.com/watch?v=ZsKdRtQM7EA

  8. New CppCast episode - interview with Isabella Muerte, about her first ISO meeting & Merged Modules:
    cppcast.com/2019/01/isabella-muerte/

  9. Post from Rainer Grimm - rules from C++ Core Guidelines related with variadic templates:
    modernescpp.com/index.php/c-core-guidelines-rules-for-variadic-templates

Extra 1: Meeting C++ Blogroll 172

The links are brought to you by Wojciech Razik.
Wojtek is a Senior C++ developer at Thaumatec, currently writing software for a robot. He enjoys reading C++ Standard before bed, and he loves to hate JS from dawn to dusk.
If you know Polish, take a look at cpp-polska.pl where Wojtek is one of the co-authors.