Posts

Showing posts with the label page

Bit errors still not a myth

I had this post in draft for a long time now, however it is evergreen. Just consider the recent exploits  focused on RAM leakage. Although, do note that ECC by itself can't give 100% protection against row hammer, so it is only loosely related. An excellent empirical work has been published in 2009 regarding DRAM Errors in the Wild: A Large Scale Field Study . " About a third of machines and over 8% of DIMMs in our fleet saw at least one correctable error per year. " - analysis by  James Hamilton " Besides error rates much higher than expected - which is plenty bad - the study found that error rates were motherboard, not DIMM type or vendor, dependent. This means that some popular mobos have poor EMI hygiene. " - analysis by ZDnet Note that such an event plainly translates to faults on non-ECC machines. So despite the fact that human error is much more probable, it is not unlikely at all that you encounter bit errors in everyday life. Consider the foll...

Ergonomy - provide editing context

A good rule of thum is to always provide proper context for the user. In case of a text editor, it's the de facto standard to only scroll the screen when the text cursor would leave the visible window. However, consider the use case of composing an answer to a letter. It feels more comfortable to be able to read a bit ahead, as well as back in this case. Toggling full screen via scroll lock was a working strategy in the past, though only a few editors support it, and nowadays less and less keyboards have a button for it... There exist another breed of editors which, on automatic page scroll, advance only a small proportion of the editing window at a time. A third possible implementation would scroll in such a way as to always position the cursor in the middle of the editing window. I have constructed a few prototypes on this paradigm way back in primary school which worked nicely to me.