Hacker News new | ask | show | jobs
by Bogdanp 3146 days ago
Yep, that's understandable. If someone makes a cost-benefit analysis and decides that they prefer the cheaper option then that's perfectly fine with me, I'll still be here a year later when they realize their mistake. ;)

That said, I do give out commercial licenses for free for companies that are just starting out. My goal with this is not to get rich, it's just to get people to contribute something back in whatever way they can.

2 comments

I'm sorry about your decision. AGPL is not a way to make corporations pay for your code. It's a way to make corporations stay the hell away from your code. This may be a legitimate goal, but apparently not in your case.

Due to the viral nature of AGPL, they have hard time trying your code to decide if it is worth using. Due to copyright assignment and patent clauses, they have very hard time contributing anything back.

What more or less works is GPL + commercial license, the freemium model. You need to get enough free users on your bandwagon to show corporate users that the code is worth trying, and maybe paying for. You need to get corporations hire you to provide support and develop special features they need in the paid tier.

Not that this problem is completely solved, but likely you heard about e.g. MySQL or Nginx who use the freemium model.

I've always been kind of unclear on how the AGPL works, even after reading various TL;DR-ish explainers. What happens if you link/import AGPL code in, vs running an AGPL service as a separate process as part of your architecture?
I approve the share and share back spirit. AGPL for a library means that the application that uses it must be licensed under the AGPL too, right?
It's a little more nuanced[0] than that and I confess I don't fully understand it myself. IANAL, but my understanding is it depends on how it's used. If a user action on your website ends up triggering Dramatiq code then you have to open source that code in addition to providing access to Dramatiq. If all you do is batch processing on your own servers, then you don't have to do anything; you're merely a user of the software.

[0]: https://opensource.stackexchange.com/a/5004

Is asynchronous interaction still "interaction" for the purposes of the AGPL? If End User A's manual changes are placed into a database or file which is read by Dramatiq code in a subsequent cron-triggered batch process, is that considered interaction? These questions are not at all cut and dry, but companies like MongoDB who use the AGPL could conceivably argue that this would be considered an interaction. [I am not a lawyer.]

As a separate point, it's odd that anyone would use a license that they "don't fully understand," when (presumably) they would hold themselves to a higher standard of understanding the behavior of libraries they uses in their software itself. Is it irrational to consider this, at the very least, an indication of lack of attention to detail, and a tremendous red flag?

I am not a copyright lawyer so when I say I don't fully understand the implications of a particular license that's all I mean. I would say exactly the same of thing of other licenses I've used such as the 3-Clause BSD License, the Apache License and the MIT License. I understand what they're for and broadly how they may be applied, but I don't understand all the intricacies and interactions they have with copyright law because it's not something I have deeply studied. Hope that makes sense!