Aside from security, memory unsafety can be the cause of reliability issues and is notoriously expensive to debug. In the latest issue of "Queue: In Practice," four software engineers argue that the best place to start today is by improving our standard libraries.

Learn more: https://open.substack.com/pub/theofficialacm/p/practical-security-in-production?r=6w5qsy&utm_campaign=post&utm_medium=web&showWelcomeOnShare=true

#ACMNewsletter #Substack #softwareengineering

@ACM

Innaresting. I at first thought of Betteridge's Law, but in some environments this might work out. I just wrote a 200-line project on an Arduino Uno though, and it was clear that on that platform I had No Room for these niceities.

@lemgandi @ACM

that is quite a bs statement about bot C++ and Arduino Uno.

@PeterSommerlad @ACM

Huh? What'd I do? To clarify, I am writing sensor data to an SD card. The sensor and SD code takes up over 50% of available RAM before I even have a line of code written. I can stash some stuff in Flash, but not all of it.

@lemgandi @ACM
i understand your toot that a hardened library would not work on Arduino Uno (AVR).

while not all of the
C++ library are available on Arduino (ie due to lack of heap management iirc) some can be used beneficially, ie std::array, std::span and most of the algorithms(I did in the past).
i don't know if the provided Arduino library itself can benefit from hardening, but dismissing it for a small platform sounded a bit arrogant (like me, when I replied to you).

@PeterSommerlad @ACM

Ah, hm. Now that's an interesting take. I _can_ say that I tried to use String in an early attempt at this code, but quickly jettisoned that due to memory constraints. I am not trying to be arrogant, just relating my experience.