• 0 Posts
  • 536 Comments
Joined 1 year ago
cake
Cake day: June 11th, 2023

help-circle








  • I would honestly expect that with modern spam filters the random rate fluctuations of spam getting through the filters would have a bigger impact on the spam you see in your spam folder than the actual number of devices sending it.

    Also, if your theory were correct that those make up a sigificant percentage of spam sending devices I would expect home office trends during the pandemic (which often use devices sending all their outgoing traffic over VPNs with relatively strict firewalls) and especially complete closures at the start of the pandemic to have a big impact on spam volume which has never been brought up anywhere to my knowledge.






  • You were the one who brought up assembly.

    And stop acting like you don’t know what I am talking about. Syscalls implement operations that are called by someone who has certain permissions and operate on various kinds of objects. Nobody who wants to debug why that call returned “Permission denied” or “File does not exist” without any detail cares that there is hardware several layers of abstraction deeper down that doesn’t know anything about those concepts. Nothing in the hardware forces people to make APIs with bad error reporting.



  • Returning error codes in-band is the reason for a significant percentage of C bugs and security holes when the return value is used without checking. Something like Rust’s Result type that forces you to distinguish the two cases is much better design here. And no, you are not working with a whole language ecosystem of “sufficiently disciplined programmers” so that nobody ever forgets to check a return value.

    Not to mention that errno is just a very broken design in the times of modern thread and event systems, signals, interrupts and all kinds of other ways to produce race conditions and overwrite the errno value before it is checked.




  • Passing around extra error handling info for the worst case isn’t free, and the worst case doesn’t happen 99.999% of the time.

    The case “I want to know why this error happened” is basically 100% of the time when an error actually happens.

    And the case of “Permission denied” or similar useless nonsense without any details costing me hours of my life in debugging time that wouldn’t be necessary if it just told me permission for who to do what to which object happens quite regularly.