There are good reasons for ad-blocking and there are bad reasons. However, most people are going about it all wrong.
If you were to visit one of the major media sites, you’d quickly come across ads that are horrific. They prevent you from viewing content, they are distracting, and you just want them to go away. So you install an ad-blocker and no more ads.
The problem here is that not all sites are full of ads and not all ads are horrible. We’ve got a handful of popular sites that are causing issues so we’re blocking everyone. The bigger sites may complain a lot but they’re still making a good deal of money. For the smaller sites, their complaints go unnoticed and they’re the ones that hurt the most. We end up punishing everyone when it’s just some that have the problem.
Why are we blocking every site and all ads? Why punish everyone for some site’s mistakes?
Ad-blockers should do nothing by default. That’s right, nothing. When you get to a site that puts ads before usability, then block that site. It takes a bit more work on your part, but you’re actually making the web better this way. The sites that run ads and respect users will continue to make adverting dollars, remain online, and everyone is happy.
Only AdBlock works this way, and it only works this way if you configure specifically to do so. It’s not the norm, but it should be. Every other ad-blocking solution I’ve found is all or none.
The current state of ad-blockers treat ads like they are the criminals when they’re technically not. It’s the sites that control where they put the ads, how many they have, and what types of ads they use. Don’t block everyone because some sites cause problems, block the problem sites.