Here’s a tidbit I found again in a post by @gruber from 2019, about scroll views:

“Just by looking at it, there’s no reason to think there’s more. But ‘just by looking at it’ is the way user interfaces *should* be designed.”

Yes. Let’s bring that back.

https://daringfireball.net/linked/2019/10/24/perfectly-cropped

‘Perfectly Cropped’

Link to: https://tyler.io/perfectly-cropped/

Daring Fireball
@dmd @gruber I have tried to achieve this "scroll hint" whenever I am faced with such situations. However, it's incredibly difficult to do on iOS because of Dynamic Type. There are some combinations of settings where your content will get clipped *just so* and the scrollability won't be obvious. Add window resizing to the mix on iPad, and various popover quirks, and this feels like an impossible problem to solve globally—especially for a one-person development team.
@liscio @dmd Here's a recent one I screenshotted. The "Leaderboard" button isn't a flat tire. It's scrolled off the bottom of the view by just a few pixels. When you do scroll, everything fits, of course, so there was never need to scroll in the first place. But I get it that it's because everything is laid out dynamically, not statically, in today's world.

@gruber I can think of a few possible solutions, but it’s always a balance of concerns; fix one thing, break another. Also, like @liscio said, there's too many confounding variables to feasibly test them all. I don’t know what constraints the developer was working under, so I hesitate to infer too much from a screen shot.

The platform could do more to avoid this kind of common pitfall. Probably a controversial take, but I think scroll bars should be permanently visible on iOS and macOS.

@gruber @dmd yeah. On iOS those kinds of views *must* be scrollable or else they are completely useless with even one or two bumps to the default text size. And figuring out the “will the content fit without a scroll view” code is highly impractical and prone to introduce other issues. (Not impossible, but hey—one dude here writing and maintaining the code!)