As above, so below, part 2. Bare metal Rust generics
In this technical retrospective (2020), @M2Ys4U shares practical architectural lessons learned from running, scaling, or migrating production software under lean constraints.
HN engineers debated the tradeoffs between cloud convenience and raw server economics, database indexing strategies, and resisting premature architectural complexity.
We want our driver a bit smarter than that; it should first check whether it's possible to write the bytes directly. In other words, we want to ensure that every 1 in our intended write is also a 1 in the target space.
Is this standard practice? Everyone knows that one should write only on previously erased units (sectors/blocks/pages/whatever). Maybe it's just for the sake of the example, but I think it's kind of insane to produce a routine to check for EVERY BIT and see if it's 1 AND if we can fit whatever we want to write. What are the chances one can overwrite (for example) a string TWICE?
Anyone out there used Rust on an ATSAML21 MCU? How viable is it these days?
Interesting use of the Hermetic Axiom, there. Raised an eyebrow.
Why are comments by the author (__cuervo) showing up as [dead]?
NH discussion of part 1 here: https://news.ycombinator.com/item?id=24254048