What is it: Painware

musings by Bast on Friday December 17th, 2021

On the backs of shareware and freeware, "painware" is open source software that is also available as some sort of centralized distribution or SAAS offering that is, if not intentionally, carelessly poorly distributed as a "free" (as in beer or as in liberty) form.

The term "Painware" is less detailed and widely known than shareware–the term originates from the ideas around "dark patterns"–which are a way of psychologically directing "users", or, really, anyone who interacts with your software/device/organization/store/blog/tweeter, to do what you want and not what they want. They're a subclass of Heuristic Design (for which I'll have written another blogpost at some point) that takes advantage of predispositions and expectations that a user has for the interface/environment you put them in that, rather than in the classic "good ux" way that directs them towards safe, comfortable functionality, instead pushes them towards giving you permission to do various heinous or undesired things.

A good and literally-in-your-face-everywhere example of a dark pattern are all the cookie banners (ok, not all, but the vast, vast majority of them). If you want to let the website do whatever it wants (track, sell, manipulate, etc) it's one button. Highlighted in bright green! Want to tell them not to run any ad code? There's a "more choices box" (this already is a dark pattern: more choices is suggesting that it's not the usual to want to choose anything but to give up your data. It's also adding an extra click, which is effort. And if desire path's are anything to go by, adding a few seconds (and a page load) between a user and their destination definitely guides them away from their "goal" by a significant degree.

In fact, it's well known in the advertisement and marketing industries that even adding a single extra click between a user and a purchase they are going to make (positive! not negative patterns) results in a huge decrease in conversions (>10%) Here is a random article I pulled, or one of it's sources. 21% of users left shopping because the process was "too complicated". Imagine being able to expand your userbase by at least twenty one percent by adding additional complexity to your opt out process.

Actually, you don't have to imagine it. Take the New York Times and their unsubscribe debacle. It's covered in many places, but here's lawandcrime with a class action against them. My personal favorite is more direct, though. The NYTimes' own help article for cancelling. Take a look. "Call us, active hours…". Amazing. So I can subscribe with absolute ease by just giving you my card. But to get away I have to give you a phone call? What a titanic barrier to exit.

( This information accurate as of 2021-12-17 ).

But, back to what we were talking about..

..specifically, painware, or "open source" software that utilizes entrance and exit barriers to make or extract money, in contrast to the typical give and be given of open source development.

When working with painware, you'll experience Kubernetes-only deploys. Docker-only deploys (I don't mean straightforwards yml configs, I mean "download from our docker repository of precompiled binaries, build config not included"). Needing to compile a specific bazel install and then install arbitrary, undetailed and unlisted packages to get the standard offering. Tweaks to configuration to reduce ram that aren't shared (because that's not needed for "source released") yet turn what should be a download, compile, and configure into a time-sucking, waking nightmare. Like chrome taking several days and 200+gb disk to compile. Google doesn't wait for that. But take one look at the ungoogled chromium project. I'll even quote the important part for you here:

NOTE: These binaries are provided by anyone who are willing to build and submit them. Because these binaries are not necessarily reproducible, authenticity cannot be guaranteed; In other words, there is always a non-zero probability that these binaries may have been tampered with. In the unlikely event that this has happened to you, please report it in a new issue.

If that's not a big red flag driving users away from an open source project, I don't know what is. I don't mean to expect that a browser–which is basically a separate os in it's own right–should be easy to compile. But, well, you can browse the sources and build your own linux distro in much, much less time and space.

This is not to say everyone deserves a gift wrapped compile call to make a program run–but perhaps it should not involve bootstrapping and searching for several hours before the source code can be at least tested. And it especially rankles when it's clearly there as a dark-pattern style barrier to avoiding giving your data to some company that is clearly in the business of selling it.

Another "clever" hack to get the open source name without actually opening yourself up to become part of the community involves abusing plugins. Make a tool (say.. a text editor). Then cover it with plugins until it's pretty good. Remember: all your real work should be part of the plugins (the reason for this will become obvious shortly). Now, don't release the plugin source. And license them so that they can't be used with anything but Your Trademarked Product(TM).

Boom.

You've got a great "open source" editor that nobody but you can distribute, because as soon as they try none of your plugins can be used, and without them it's just a tiny shell. And if anyone would dare try to write those crucial plugins themselves.. why, just change the api of course! As a company selling software you absolutely can afford to have a code monkey change all the names of all the parameters for minimum wage, but I assure you the number of people willing to re-do all your work, and then try to keep up will rapidly decay to zero. Just be careful not to trigger the Streisand Effect. PR is crucially important when it comes to abusing the community for your own gain.

The final step is to tuck analytics into everything. Sell every last bit of your customers souls–what are they gonna do, write a competitor? But there's already an "open source" "community driven" one.

Painware, is, of course, "open source", on display in the bottom of a locked filing cabinet stuck in a disused lavatory with a sign on the door saying 'Beware of the Leopard.'. Perfectly accessible.

Friends don't let friends support evil.