On mobile I'm fine with hidden ones. Since attempting to scroll down never has an unintended action (I'm sure someone on the Internet can name an exception, but I can't name a single one so it's not the common case) I always just try to scroll and notice when it doesn't go further.
Maybe for desktop, it might be solved by having a free spinning scroll wheel. Then you can flick like on mobile and nearly never need to actually drag the scroll bar. In the rare case that you do, you can still grab the one that appears on demand (like in many mobile apps), and by appearing on demand you have a visual indicator of how much more there is. (The home/end buttons also go a long way, but one doesn't always want to scroll to the end or use the keyboard.) But until we universally have such mice...
The most frequent one I've seen on Android is swiping down while (almost) at the top, and the entire view refreshes. This is mostly in the browser, which simply reloads the page after a few seconds (resetting any text fields you may have modified) and in this case the gesture can be cancelled by reversing it. Unfortunately, if the browser or app has been open for a long time (say, I've left a news app open for three days), the view can be quite different once it finishes reloading, and can be impossible to get back to where I was previously.
Lazy-loading content can also cause issues when offline if the placeholders don't update (Materialistic, the app I'm using now, has both these issues).
Occasionally I'll find an app that likes to do annoying bouncy things with the view when overscrolling the bottom of a list, but that's fortunately rare.
You can make a scrollbar that "ghosts" over/under the content.
It's the definition of false simplicity.
Everyone followed suit because Apple Keynote events just made everything look so magical, and Mac/iPhone snobs were taken seriously by the dumbed-down press, and now Windows laptops and keyboards are like their previously-less-functional MacBook counterparts.