Paying for FOSS apps

tl;dr: TrinkGeld is a proposal for a GNOME project (but should be usable in most free desktops out there) that uses monthly donations and distributes them to app developers based on how much their apps are used, together with a Humble Bundle style customization options.

There’s been an ongoing topic in the GNOME community about how developers can get some money for their apps. From a fixed price to pay-what-you-want or donations, getting people to pay for software as end users is not easy. This is true even if you’re selling software through a mainstream platform like Google Play or the Apple Appstore, let alone if you’re a Free Software developer and you are relying on donations from your users.

Even if you’re willing to donate a couple of euros for supporting an app you’re about to install, you’ll have to go through the trouble of finding out how to make the donation. This may involve: 1) going to the app developer’s website; 2) finding out whether they accept donations; 3) hope they receive donations through a service you already use (PayPal, bank transfer, Bitcoin, etc.) and perform the donation.
During GUADEC, Richard Hughes organized a discussion around the problems of getting donations through GNOME Software. And now the GNOME app center has a “donate” button for apps that declare a donation link.
So that donation button solves most of the steps I enumerated above, however it still requires that users pursue that option, which will simply take them to the app’s donations page. If a user eagerly installs an app and uses it for a while, they will have to remember to make a donation later on if they want to support the app monetarily.

Spot the donation button at the bottom of an app's details page in GNOME Software.

Spot the donation button at the bottom of an app’s details page in GNOME Software.

There are of course other approaches for getting people to pay for apps, like the one that Elementary uses: showing a price for an app but allowing the user to modify that price including offering 0 (meaning you get it for free). While this seems like a good way to allow people to pay what they will, the downside is that many users find it deceptive when all indications are that you have to pay for an app; it’ll scare off users who think they have to pay for those apps; and it’s still a step to be done before getting the app (before you know whether you’ll even use it for more than 5 minutes…).

A (not so) new model

So, if having to pay before installing an app is not ideal (and not really a donation!), and post-installation donations are tend to be forgotten and thus minimal, what else can we do?

Subscription based services like Spotify and Netflix are extremely successful these days. Some people may think that’s simply because of their large catalog (access to “all” songs for only 9.99 EUR a month? a bargain!), but I dare argue that a lot of their success is due to people’s lazyness. Why are those platforms successful when there was/is so much “piracy” out there? Either a good percentage of the people who downloaded content illegally suddenly started caring about increasing Hollywood’s profits, or they just feel like they’re now being offered a very convenient service for a reasonable monthly price (besides being completely legal of course)! Set up the monthly payment and off you go!

I think that a subscription based donation model for apps in the Linux desktop is something that could work. I think that a good number of people are willing to give some money for the apps they use, but they’re too busy to remember to do it regularly. In this subscription model, users wouldn’t pay for installing apps, they would donate money for the apps they use instead.

TrinkGeld

I am very bad at naming stuff but it’s good to have a way to refer to this project easily, and I think I got a good one for it: TrinkGeld! “Trinkgeld” is a German word that means “tip money” but as you may have guessed it comes from the words that translate as drink+money. I think it sounds great! It’s easy to write and pronounce, and associates with the concept of paying a developer a drink, which I like.

Here is the base concept of Trinkgeld: it is a desktop application where you sign up and choose a monthly amount you think the software you use is worth (and that you can afford, of course). Trinkgeld then tracks the applications you use on your system (which ones were installed and, more importantly, how much they were used), and at the end of the month your donation amount is divided according to how much each app has been used, and finally the divided amount is sent to its respective app’s developer. Think of it as Flattr + Spotify (+ Humble Indie Bundle… just keep reading).

I think this concept has many advantages: users won’t have to pay upfront for an app they don’t know they’ll use or not. Nor will they have to remember to go to an app’s page in the app center in order to donate some money. It’s affordable for users because they set up how much they can give out. It’s fair for app developers because they will keep getting paid as long as users keep using their apps.

An oversimplified diagram of how TrinkGeld operates is something like the following:

TrinkGeld diagram

Money flow

There are two approaches towards distributing the money: 1) send it directly to the app developers using some service’s API; or 2) use a “middle-actor”.
While #1 is tempting, it has some downsides: it’s technically much more challenging to schedule a bunch of payments to different accounts and systems; we’d have to offer ways for users to correct the donations if there’s a mistake/bug when sending out the money; usually smaller individual payments end up paying a higher percentage as a service fee; and maybe users can get in trouble with the law if they end up giving out money to some person or organization that they shouldn’t (I can think of sanctioned countries, dubious organizations, etc.).

I actually prefer approach #2 where the money would be donated as the pre-selected monthly sum to some entity that would be in charge of distributing it according to the report sent from TrinkGeld.
I can imagine this middle-actor being e.g. the GNOME Foundation, or distros. Let’s take the GNOME Foundation for this example. We’d select say 20 EUR monthly for TrinkGeld, the money would be sent out to the GNOME Foundation (say using PayPal for example), and the Foundation would also get the monthly reports from TrinkGeld. Then, it would distribute the money among the apps’ authors (that had registered as part of the GNOME Foundation’s TrinkGeld partners). The money could be sent out from the Foundation only when it reached a certain amount (common in other app distribution platforms) in order to minimize fees.
The GNOME Foundation would rightfully take a percentage of the monthly amount for covering the work Trinkgeld involves but also because of its role (in the example of using GNOME as your desktop, then surely supporting the GNOME Foundation is a good thing).
This means we could have more options of payment services between the middle-actor and the app developers since we’d not have to tie it to the users directly anymore. And users would also be safe as they only have to make sure they are eligible to donate to the middle-actor (GNOME Foundation/Fedora/Ubuntu/etc.).

As for the exact way the money is to be divided, it’s something that needs to be discussed as there are many ways we can do that: should we just simply divide the money according to how much an app is used? Should we always have a minimum for an newly installed app, even if it’s been used just for 10 minutes in the whole month? etc.
How the money is divided is not the main discussion to be held at this point.

Having a middle-actor also means that TrinkGeld should have a server part where it gets the information from users and organizes it for the distributor. This increases the complexity of the project but as I think it’s still less complex than what the approach #1 above implies.

Tracking Apps

I know some of you will have already frowned when you read about “tracking” apps. Yes, the apps you use and how much you use them is your own private information, but we can make Trinkgeld do its job and still respect everyone’s privacy. The obvious solution for that is to anonymize the data by doing the tracking and calculation in the client, and only send out the amount per app. It’s one thing to send out info like “Tor usage avg: 80 hours”, it’s another thing to send out, “Donation for Tor: 5 EUR”. How much information one could actually deduct from the amount given will depend on the way it’s divided + the customization options we give to users (see next section), but it shouldn’t be that easy.
It will also be important to understand who gets to see this information (do you trust Fedora to see this information?), and of course users should be able to tell Trinkgeld not to consider a certain app…

Besides, users should trust the money distribution partner, or middle-actor mentioned in the section above: i.e. if you are using a distro and you don’t trust the organization behind it, then maybe find another Trinkgeld provider (and/or switch to a new distro!), or maybe this service is not for you.

As for the technical solution for tracking the apps, I don’t know of any cross-desktop library capable of offering this functionality out of the box, but at least in GNOME Shell there’s already code in place that we can extend to implement whatever functionality TrinkGeld needs. I am sure other desktops could do something like this too.

Humble Indie Bundle style tweaks

The Humble (Indie) Bundle is a genius idea! I usually buy bundles that have games for Linux, and it’s awesome to be able to choose how much money each game gets (so I can make sure I pay more for the games I will play then for others), as well as giving something for charity.
A good complement to the TrinkGeld system would be to offer some choices of how the money is distributed. I imagine that the TrinGeld desktop app could pop up once per month showing the calculated division of the donation and options to tweak it. Say you realize that you’re always giving most of your money to one single app (I expect this to happen for web browsers for example), then you could tweak how much that app gets, and choose other apps to donate to because you find it to be more fair that way. Or you could choose organizations related to the software you use, much in the way that Humble allows you to donate to charity: e.g. if TrinkGeld is being run by Fedora, it could still offer the GNOME Foundation as one of these organizations, considering its role in the technology that powers the user’s desktop + apps. Here’s a mockup of what I imagine it would look like (we’ll need real designer work if TrinkGeld goes from idea to code, but for now you’re stuck with this):

TrinkGeld mockup

As you see, there are lots of possibilities here, but this post is getting large so let’s leave it for a later discussion.

Opinions?

Usually I blog more about stuff I’ve done than ideas that may never happen but TrinkGeld has been in my mind for a while, so I really wanted to share it and ask what Linux desktop users out there think of it. I know it’s a challenging project to set up, and that a lawyer may have to look into it, but it could may be worth the try.
I’m really curious to know what Linux desktop users think about this. Do you think it could help getting more people to donate? Would you use it? (comments in this blog are moderated so you may want to use the social network where you found this post mentioned in order to comment on it if you don’t want to wait until I approve the comments, thank you for understanding)

Going to GUADEC 2017

I am currently waiting for my flight to Manchester to attend another GUADEC!
This year I am also giving a presentation about the application story in Endless OS. Our infrastructure, our changes to GNOME Software, our heavy use of Flatpak, etc. Hopefully you’ll find it interesting.

A good number of Endlessers will also be around and giving other talks. We’re friendly people, so come talk to us!

Yay going to GUADEC!

Many thanks to Endless for making it possible for me to attend the event, and I am looking forward to meeting everyone again!

Killer Climate

This past weekend a big wildfire in the center of Portugal (Pedrógão Grande area) killed 62 people, left the same number of people injured, and around 150 families lost their homes.
Every year the country has a number of wildfires, many of them caused directly by people. However, according to the Portuguese authorities this fire has been caused by a lightening together with the record high temperatures.

One thing that caused a big impression on me is that the majority of the dead were not people that had their homes surrounded by the forest but they were just drivers who were caught by the fire while on the road. So something like this can happen to anyone, not only to the people who lived in the affected areas.

The firefighters have been tireless and are still trying to control a big fire that spawned from the one in Pedrógão Grande. While Spain, France, and Italy have deployed more resources to help fight the fire, the majority of the Portuguese firefighters are actually volunteers who risk their lives every year.
The 150 families who lost their homes come from a rural area and many lost not only their homes but also their cattle and, needless to say, will struggle to start over. So they could use everyone’s help.

There is a number of local initiatives to bring food and supplies to the area, and also a couple of bank accounts set up for donations. You can find the details for those in this Público’s article. Google Translator should be good enough if you don’t speak Portuguese. As a reference, I have donated to the account in the Caixa Geral de Depósitos bank that is listed in the article.

Surely many things will be said about the fire, that the forests could have been properly cleaned (in order to better contain the fire), that the roads could have been closed sooner (saving anyone from getting trapped), that it was “just” a tragedy. However, when every year the news talk about higher temperature records, it’s not crazy to think that Global Warming contributed to these deadly conditions. So when a man says he’s for Pittsburgh, not Paris, that’s not only a stupid argument and stance, it may also very well be a deadly one.

Not going to FOSDEM 2017

After 9 years of assiduous attendance, I am not going to FOSDEM this year.
Don’t worry, I still love Free Software and beer, but the reason for the absence is pretty understandable: new baby coming! So I will let you know soon how life with two kids is (if I have the energy for that 🙂 ).

Enjoy FOSDEM 2017 everyone!

Hope for a good 2017

As Berlin’s fireworks roar outside (for hours now!), I want to write my typical end of year post with some thoughts of 2016 and what’s coming.

We are leaving behind a year that many (most?) of us will not miss. I hope 2017 will be a better one but the global events that took place throughout 2016 do not make me very confident about that. With unusual political events affecting the lives of millions of people, an apparently acceptance of indecency, bigotry, and hate, together with the ongoing humanitarian crisis and senseless violence, this is surely not the world I had pictured for my children.
Still, I want to be positive and hope that by seeing what’s happening in some places, people can make good choices in 2017 (I am talking in broad terms but we got some important elections coming soon in Europe).

On a more positive note — because personally 2016 was actually a very good year –, this past year I also started working for Endless and moved from SwitzerFrance to Berlin, Germany. I love my job and I have been working very hard to do my share of Endless’ mission. The current direction of the world only validates our mission more, and motivates me to work harder. It’s difficult however to make time for everything, and again my pet projects took the hit, so no big updates in that subject this year.

The other big news is that Helena and I will be parents again soon! The joy of raising a child is something so special that it is hard for me to put into words so I can just say that we are of course extremely happy and curious (and scared too) about how life will be with two kids.

Happy 2017 everyone!