Ever since C++ introduced the constexpr keyword in C++11, each new standard brought us more and more opportunities to make our code increasingly constexpr, in other words, compile-time execution fr...
Are we - developers - spoiled or abused?
I think we are lucky as software developers. Most of us like what we do and we get a good salary. Even if a lot of people do not like the company they work for, in general, they like software devel...
Is this dynamic_cast needed?
I have already written a couple of times about dynamic_cast. I claimed that if you can avoid using it and RTTI, you can get a smaller binary. I also claimed that without dynamic_cast your code will...
Variadic functions vs variadic templates
A few months ago, I wrote a review on Template Metaprogramming with C++ by Marius Bancila where I mentioned not only that it’s a great book, but also that there are some topics which I’ll cover mo...
Without RTTI your code will be cleaner
Recently, in the binary sizes series, we discussed how run-time type information affects RTTI. I also mentioned that in my opinion the lack of RTTI leads to better practices and you’ll end up with ...
We are always late
I recently read a post on social media about modern people who are always chasing themselves as they are always late. It also reminded me of what one of my first bosses told me. According to the me...
Vectors and unique pointers
In this post, I want to share some struggles I had twice during the last few months. For one of my examples, I wanted to initialize a std::vector with std::unique_ptr. It didn’t compile and I had l...
Binary sizes and passing functions to functions
So why templates are interesting for our series on binary sizes? It’s because as mentioned, they do not represent callable code. They represent templates to generate callable code. The more you gen...
Binary size and exceptions
In this series of articles about binary sizes, we already talked about the default keyword and said that the default keyword will make a special function noexcept, whenever it can. What is noexcep...
Can we find a compromise?
Many say that life is about compromises. They are right. But when can we find a compromise? What are the driving forces when two people don’t want the same thing and a decision is to be made? Wha...