Hacker News new | ask | show | jobs
by xp84 1041 days ago
Tangentially related: storing a bitmask in your database (as a single 32-bit value) to track many flags, and using bitwise math to manipulate/interpret it. Much more space efficient than what everyone would do now (a bunch of tinyints, enums, or booleans) but obviously you’d be rightly fired out of a cannon now for introducing something so difficult to grasp for young devs, just to save “cheap” memory and storage.
2 comments

Bit masks are cool

They are also very fragile

Far better to have some maintainable and extendable (what happens when you exceed 32 binary flags?) than being overly clever for the sake of saving a couple bytes of storage

No dispute there, it would be silly now, I just think it was kind of cool how programmers used to understand how binary worked, and appreciate that it was worth it at one point to use 1 actual bit to store a true/false value.
I have a few simple bit questions in my coding interviews and most programmers simply don't know how to set a bit in a byte (or word), rotate bits in a byte (or word), or what endian is.