While this may be slightly off-topic for TidBITS, I greatly improved my iPad+News reading enjoyment by installing a PiHole. One of its unexpected side effects was to reduce the numbers of page reloads on news sites. Now, the only time Safari seems to reload a page is if it was last visited several hours ago. What I think might be going on is that page reloads can be triggered by JavaScript if an ad has been displayed longer than the time paid for. I’m guessing that the timeout value must be part of each ad. If no ad never arrives because PiHole blocks them all then there are no timeouts to trigger page reloads.
In my case the hardware was a RaspberryPi3B+ running the software from https://pi-hole.net I think it cost around $40 all up, including the memory card.
I knew PiHole would block ads but I did not realise quite how effective it would be. Banner ads and inline ads are gone, replaced with whitespace. If your news site keeps a placeholder of a particular size in its banner which it routinely replaces with an ad of a different size, the screen either dances about or redraws as the page loads. With PiHole in place, that never happens.
If your news site is one where you’re reading an article and, suddenly, an ad rudely expands in the middle of the text that you were reading, PiHole stops that practice dead.
If your news site auto-plays video, PiHole seems to (mostly) stop that too (not sure how).
PiHole also interferes with ad-tracking mechanisms. Searching the web for something you have half an idea that you might, perhaps, get around to buying sometime in the next 20 years, no longer results in you being followed with pestering ads. Ditto the widget you bought yesterday where ads follow you for the next year in the hope you might really want another one.
Because PiHole works at the DNS level, it’s a whole-of-device solution. It works as well in Safari as Chrome as YouTube. And because PiHole can be anything between whole-of-device (eg you manually tell a single iPad to use the PiHole as its DNS) up to whole-of-household (you configure your DHCP client to tell all of your devices to use the PiHole as the DNS), you can customize your experience.
PiHole being too aggressive and blocking a site you need? One click to solve. Not being aggressive enough and letting something unwanted through? One click to solve too. Like macOS, PiHole tells you when there are updates available, and then it’s a single terminal command. Pretty much as set-and-forget and maintenance-free as you can get.
Also generally improves performance across-the-board. The PiHole console routinely informs me that it has blocked at least 50% of the DNS queries emanating from my iPad in every 24-hour period. That’s stuff I didn’t ask for and never wanted so now I’m never downloading it (saving on bandwidth and congestion) plus my browser never has to render it (saving CPU cycles).
Highly recommended.
Disclaimer: I’m not part of the PiHole or RasperryPi projects and have no association with either other than as a very-casual user.