With iOS 9, Apple enabled ad blocking in Mobile Safari. This change received a lot of attention. Users were happy, because web ads and trackers significantly degrade the user experience and intrude privacy. However, publishers were quick to announce that their publications are doomed, since they will be unable to make any money when everybody blocks ads.
A central question of the debate is this: are users morally obliged to not block ads?
I look this question from the perspective of software compatibility. When you publish a website, you’re essentially shipping a piece of software of your readers around the world. Some of them are bound to be using setups that are not fully compatible with your site. Maybe they’re running an old browser that doesn’t support the latest HTML5 features, or maybe they’re running an ad blocker. Do they have a moral obligation to maintain 100% compatibility with your website?
A couple of years ago, Flash ads were very popular. A simple way to block a big chunk of the most annoying ads was to uninstall Flash. Do your users have a moral obligation to have Flash installed?
A web site is a kind of distributed system: typically the user’s computer will have to gather the pieces of code and content from a bunch of different servers. Network partitions are a common failure mode of distributed systems.
For example, I have this one computer that does not run ad-blocking software per se, but that is unable to connect certain well-known hosts that serve tracking code. It is essentially partitioned off of certain parts of the Internet. Do your users have a moral obligation to ensure that there are no network partitions in your distributed systems?
How to make money with Internet publishing is a hard question. I do not have an answer, but I doubt that limiting the users’ ability to be picky about the software they run on their computers is the way.