Don’t sleep on Google Sheets for backend infra!

(Originally from Indie Hackers)

For analytics on Timestamps usage I log directly into a Google SheetπŸ˜‚

And this actually works great! Minimal infra, structured, fast (no querying GBs of server logs), and I can manually touch up the data (needed for the user column).

Don’t sleep on Google Sheets for backend infraπŸ€ͺ

Don’t confuse std::move and std::forward

This was a pretty interesting buggy scenario I found while reading the clang-tidy checks. If you’re writing a function that takes a forwarding reference (what looks like an rvalue reference, but whose type is a template argument), you need to be careful to not call std::move on it. You need to make sure to call std::forward instead. Otherwise, you might accidentally trigger a move on an object passed by a caller! This would be confusing, since their object would be moved from, and they never explicitly called std::move on it.

Continue reading

Getting bit by unique_ptr

I got bit by unique_ptr when implementing a linked list today. You need to be careful to manually release() the unique_ptr before resetting or you might accidentally free the entire list. This comes up when doing insertions and stuff like that.