I’m currently coding a kirby plugin for responsive images, that is able to generate <picture> elements, supports retina displays, and much more. While the code is almost finished, I’m still working on a proper documentation (which already took me several days). I’m now in a conflict, because I still don’t know, if and how I should sell it.
There has already some discussion on this in another thread, but I would like to discuss it more in detail, because the results might also be interesting for other plugin developers.
While I have a very libertarian attitude towards software and open source, there are a questions, that I’m asking myself now:
Writing this plugin was a lot of work for me, so should I charge money for it? And if so, how much should it cost? On the other hand, I don’t want to lock anybody out, just because that person does not have enough money. A solution would be to offer free licenses for personal/non-commercial projects or let people ask for a free copy of the software, If they cannot afford one.
Should the code be available for free for testing purposes? I really like that idea, because the only reason why I’m a convinced of Kirby now was the possibility to test it before buying it. On the other hand, I’m sure, that some people will not pay for it. But if at least some people pay, this licensing model might work. How honest do you think, is the Kirby community when it comes to paying for stuff? Would you buy a plugin for Kirby without the possibility of testing it before?
If you already sold software, what are your experiences? Which platform do use use for payments? Where did you find information on how to write a license?
I really would like to hear you thoughts, as well as your experiences on these topics!
Yes. Don’t be afraid to charge money for a quality product.
The Kirby 1 license model was 30 € for everyone with 50 % student discount. Every student had to contact Bastian for the discount, which takes time for both the student and Bastian.
The new license model (15 € for personal sites) is way easier in my opinion.
So my take on a plugin license model: If someone can’t afford it, let him/her use it without paying and without asking.
Which leads us to:
Yes. As you can see in the forum, the Kirby community is quite honest (most users are professional devs and know that good work deserves payment).
Piracy protection is just not worth it and not being able to test something isn’t either IMO.
I have not sold software myself, but something like PayPal should work just fine.
Shopkit doesn’t support digital products yet, it will be a couple of versions until that feature makes it into production.
I decided to copy the same license terms as Kirby itself when creating Shopkit. As @lukasbestle mentioned, and as @bastianallgeier has explained in the Kirby docs, it’s just not worth the effort to track down and monitor people who steal your product:
There’s no validity check of your code or any other communication between your Kirby installation and the Kirby server. You get a clean installation without any hacks or tricks. Entering the license code is for your own records, so you can track which installation uses which license.
I’m focusing on making Kirby better instead of fighting software pirates. I trust in you to support me with a legally purchased license if you like Kirby.
This model of “commercial open-source” works really well in my opinion. It gives people confidence to try something out before they commit. Don’t worry about the pirates, they will never buy your software anyway.
Alright, I think that both of you are right on this topic. I never intended to hunt »pirates«. Offering software while accepting a certain amount of »illegal copies« sounds like an elegant and practicable solution to me. I also want to provide clean and high-quality software to my customers. I think, I will handle it like Kirby & Shopkit do.
@bastianallgeier & @samnabi: May I use your License terms and modify them to my needs? Would make things easier for me and also for most Kirby users, if we all could use the same/similar license terms for our plugins.
Limitation of Allowed Uses:
However, there is one final thought that is still on my mind: There has been some discussion within the developer community about forbidding the use of software by the military and intelligence agencies. I thought about including a clause like this:
Even with a valid license, it is strictly forbidden to use the plugin for any project, that promotes racism, sexism, homophobia, animal abuse or any other form of hate-speech. It is also not allowed, to use it for any military or intelligence purposes.
While there is no (easy) legal way to prevent those uses, the problem I see here is, that most those terms are very imprecise. What the military and intelligence agencies are, seems to be very clearly defined to me. But in case of sexism for example, it becomes harder to make a distinction (just think of products like fashion or toys). And what is hate-speech and what is not?
I think it’s fair to put whatever conditions you think are reasonable. The hate speech / military / intelligence clause is a good one, although I think the language around “intelligence” could be clarified a little.
My all-time favourite license is this one, where the author modified the MIT license to suit his requirements:
If the Author of the Software (the “Author”) needs a place to crash and you have a sofa available, you should maybe give the Author a break and let him sleep on your couch.
If you are caught in a dire situation wherein you only have enough time to save one person out of a group, and the Author is a member of that group, you must save the Author.
I like it too, but not how it is named, as it can create confusion. This license explicitly states that neither Kirby nor ShopKit are actually open source, they are proprietary software. It’s more “disclosed-source” than “open source”