Monetizing Open Source with Fairware: Interview with Virgil Dupras



The Powerbase: The lack of developer interest played a big part in your rethinking of how you license your source code. You came up with a whole new way of licensing and monetizing your projects which you’ve deemed “Fairware”. Can you explain how Fairware works, and how it’s different than something like the basic donation model?

Virgil: Fairware is nothing more than an informal “social contract” between developers and users (at the licensing level, it’s your typical open source license). The contract is that developers produce open source software that users use, but these developers expect to be compensated for this development time. They choose an hourly rate (mine is 35$) and count every hour they spend developing the app. Each contribution from users is allocated to a developer time log. If all hours are compensated, nobody is expected to contribute anything.

For this social contract to work, users need real time information telling them how many hours have been invested and how much money the project has received. This is what I’ve done with

Additionally, the user needs to be aware of that social contract so there’s a reminder popping up at the app startup telling him about Fairware. This reminder is only active when there’s hours that still have to be compensated. Also a registration key is given to contributors so that they can disable reminders even when there are still hours to compensate (after all, they’ve already contributed).

With the typical donation model, such a contract is unclear and even if the user wanted to follow that contract, the information that is needed to do so is lacking.

The Powerbase: Do you really think one of the main reasons other open source projects struggle to get donations is simply because the end user is unsure as to an appropriate amount to donate, or where there donation will actually end up?

Every donation is meticulously detailed.

Virgil: Partly, but not exclusively. The main problem I think is that many, too many people see “open source” as a synonym for “free stuff” and that is why a clear contract is needed for donations to be sufficient. Open source projects that desire donations should make their contract clearer.

The Powerbase: If Fairware works based on paying the developer for the hours invested in an application, what happens when all the hours have been paid? Are projects that don’t see constant development, such as those who have already reached maturity, a good fit for this concept?

Virgil: When all development hours are compensated, nobody is asked to contribute and there’s no in-app Fairware reminder. Because Fairware is open source and thus is not about charging user for using the app, but rather to charge for development time, it doesn’t make sense to continue asking for money when all development time is compensated.

If a project has already reached a point where further investments in development time are expected to be trivial, it might indeed not be a good idea to adopt Fairware. However, even a mature app can require a significant amount of maintenance. The time that has to be invested in maintenance could be enough to warrant a conversion to Fairware.

The Powerbase: When your applications start up, they show a popup briefly explaining the Fairware concept. Do you ever worry this is too obtrusive and might put off users? Have their been complaints?

Fairware Popup

Virgil: This has actually been a problem in the first year of Fairware. People would download dupeGuru at a time when all hours were compensated, so they thought it was free (as in beer). Then, I would upload new timelogs so these same users would start to see the Fairware reminder. They would be confused and send me emails telling me to stop begging them for money. This situation was definitely problematic.

I eventually realized that many (if not most) people are absolutely not interested in reading about open source or intellectual property, they just want to use the app. They’re never going to read your social contract and they’re never going to care. At first I was a bit sad, but then I thought that hey, it’s to be expected. People don’t download dupeGuru to learn about open source, they do it to delete dupes. It’s unfair of me to force this contract on them.

Thus, I introduced “dual mode” Fairware. Users don’t care about the Fairware social contract? We can simply offer them an alternative contract, one that they’re familiar with, the closed source contract: You can try the app for free, but there are demo limitations unless you pay for the software.

That closed source contract is the initial mode the app is in. The demo reminder tells the usual demo notice stuff you’ll see in any closed source app, except it mentions Fairware with a button leading to more information. There, the user who bothers reading the text will learn that he can enable the classic Fairware mode by typing “fairware” in the registration dialog.

You know what? More than half of my contributions are of the “closed” type, and I’m OK with that. Whether they care or not, they still fund open source development and I don’t get confused emails anymore. I call that “having your cake and eating it too”.

The Powerbase: Overall, how has the experience been so far? Are you ready to claim Fairware a success?

Virgil: It was a rather smooth sailing. Before “dual mode”, revenues were slightly less than before when there were hours to pay and nothing (which is normal) when hours were paid off. What I didn’t expect is that during the period where dupeGuru was free as in beer (no reminders), I’ve got a lot of free publicity. The result of that is that when dual mode was introduced, I got such a big boost in contributions that revenues were significantly up compared to the closed source era. Now I’m stuck with a big surplus in the dupeGuru project and I’m not sure what to do with it.

At least in the type of software I produce (wide audience generic software not targeted at businesses), I’d definitely call that a success, especially since the “dual mode” thing.

Of course, it’s not magical either, so it’s not going to cause an unsuccessful software to become successful. That’s why dupeGuru was a good test because I already knew that it was successful. Now we know that a project can earn money despite being open source.

About Tom Nardi

Tom is a Network Engineer with focus on GNU/Linux and open source software. He is a frequent submitter to "2600", and maintains a personal site of his projects and areas of research at: .
  • Aaron Wolf

    This reminds me a bit of the Creator Endorsed Mark, which I think is generally superior.

    This discussion of fairware is great regarding the value of social contract and transparency where users understand what they are paying for. It’s grossly unfair when someone luckily gets a million buys of his $1 app while there are lots of other duplicates that just didn’t get the focus. The money just could have been allocated better than to randomly make someone unfairly rich and waste other people’s time.

    The value of the Creator Endorsed Mark is that it lives on top of any license. In other words, a common license can be used, and a very clear visual thing is present. I think this works best with physical media where the endorsement mark is visible. There’s some level where the social contract is best reinforced when there’s a mechanism to show off your good will to bystanders.

    I wonder if there could be a non-obtrusive way to encourage the social contract: I.e. have a logo like the endorsement mark that is in a prominent but unobtrusive location in the UI, so that the user is always reminded that they are a good person who supported the software…

    • Aaron Wolf

      Also, I don’t have the answer to this, but fair in some way ideally should reflect both capacity to pay (i.e. user wealth) and how many users there are. I guess I’m talking about matched payments or something. Like there should be a system where someone can commit to paying a certain amount for every other user who also pays a certain amount: “I’ll pay 1 cent for every other user who does the same, up to $35” for example. Thus, I’m not going to be a sucker and pay for everything and then everyone else is off the hook.
      This could be complex to implement but this is a big aspect of fairness. It isn’t just developers getting paid, it’s payers having a fair burden instead of some donating and others freeloading.

    • Virgil Dupras

      You say that one of the strengths of Creator Endorsed Mark is that it lives on top of any license: So does Fairware. The license for my apps are both unmodified BSD and GPL. The references to modified BSD in the article refer to an initiative that predates Fairware.

      As the “dual mode” experiment shows, even a pop up isn’t enough to encourage the social contract (most people don’t bother reading it), so I doubt that a simple logo would do the job.

      As for your suggestion for a system to ensure a fair contribution burden among users, it could be interesting, but I fear that it would be exceedingly complicated to implement.

      Moreover, as long as development of the project continues, the burden is rather evenly shared because you, as a contributor, stops being bothered by the fairware reminder when other users continue to be. Eventually, we can guess that all fair users will have paid their fair share if development continues long enough to get to that point (the point of “exhausing” all contribution potential from a project).

      Worrying about freeloaders is generally a bad idea because they will always exist, whatever you do.

      • Aaron Wolf

        I agree that there will always be freeloaders, but systems that discourage that are worthwhile. If you just get someone over the hump once, then they have a different self-image and are less likely to freeload in the future. This isn’t speculation, this is based on scientific research, such as from Dan Ariely (see his book Predictably Irrational)

        I personally am more likely to donate when I can be part of a matched thing. I like feeling that we are all agreeing to donate instead of my volunteering without anyone else committing.

        Anyway, the best solutions will have to be more systematic. When you or anyone else introduces novel ideas, there’s always an uphill battle to get people to bother paying attention. If this system were ubiquitous, everyone would deal with it.

        Good luck!

  • Pingback: Links 10/7/2012: Thunderbird Put to Rest, Catchup with Free/Open Source News | Techrights()