IT Hare on Soft.ware

Disclosure: On this site you won’t find specific advice on “how to call function xyz()”. Interpreting C++ ARM and #pragma dwim is also out of scope.

We’re treating our readers as intelligent beings who can use Google and/or StackOverflow, where all such specific questions were answered more than once.

What you will find is opinions, more opinions, and even more opinions on all the aspects of software development - and with a large chunk of them based on real-world experience too.

Your mileage may vary. Batteries not included.


How to consume an HTTP API

Quote: “Programs are not the self-contained, self-reliant, self-sufficient things they once were.”
Another Quote: “I highly recommend you log every HTTP request you send and every HTTP response you receive.”

Unchecked Exceptions for C++

Quote: “‘unchecked’ std::errors are treated as ‘something which should never ever happen, but in practice MAY occur as a result of potentially-recoverable bug'”
Another Quote: “Failing-Fast does NOT mean we should necessarily Fail-Hard(!). In certain (production!) cases, Failing-Fast-AND-Soft IS a substantially better alternative.”

App-level Developer on std::error Exceptions Proposal for C++. Part II. The Discussion.

Quote: “having an ability to associate extra information with std::error is important for us – both for our own std::error exceptions, and for conversion from existing C++ exceptions”
Another Quote: “I think that current C++ standard is Badly Lacking(tm) a concept of ‘segfault’ (which is supported by CPUs on VAST majority of modern systems with modern C++ compilers)”

App-level Developer on std::error Exceptions Proposal for C++. Part I. The Good

Quote: “No single error handling method is good enough for ALL the projects – which in turn leads to segmentation, with some of the projects using exceptions, and some others using error codes”
Another Quote: “Right above I said that I like the std::error exception proposal a.k.a.[P0709R0]. However, as soon as I look at competing proposals, I begin to love it.”

C++: On Using int*_t as Overload and Template Parameters

Quote: “We decide which set of types we’re using (fundamental or int*_t), and use it consistently”
Another Quote: “The only thing we’re doing here, is changing the name of the type, NOT its behavior”

Quick Update on C++ Compiler Bug Hunt (overall, 15 bugs reported, 8 already fixed)

Some time ago, I wrote a post about kscope – mini-project on finding and reporting bugs in modern C++ compilers. The point was that there is a way to use C++ facilities to make C++ code self-mutating (more strictly – pseudo-randomized using externally supplied ITHARE_KSCOPE_SEED macro), which allows finding certain classes of bugs during randomized […]