
Handsontable drops open source for a non-commercial license - jontro
https://github.com/handsontable/handsontable/issues/5831
======
jasonkester
Great to hear.

It's painful to watch so many good developers giving away their best work for
free, because they feel it's somehow their duty to do so. It's the same
feeling I get watching fresh graduates working 100 hour weeks for these
startups because there's free food and everybody else is doing it. You want to
help, but the culture is just so well geared towards attracting new kids to
exploit and convincing them that the exploitation is a good thing.

It's like a cult. Except that nearly every software developer in the world is
in on it.

I'm certainly not helping the situation personally, and will happily use
whatever Open Source software product helps my business for free. But I do
hope that people come to their senses at some point and stop peer-pressuring
each other into continuing to spend so much effort polishing good software
only to give it away for free.

The things you build have value. They're making other people billions of
dollars. Charge accordingly.

~~~
TAForObvReasons
This announcement is about Handsontable completely shutting down the open
source offering and _using the same distribution channels to pump proprietary
software_. Wheres a month ago
[https://github.com/handsontable/handsontable/](https://github.com/handsontable/handsontable/)
had open source code, now it is all proprietary. That's not something to
celebrate.

As pointed out in the github discussion, Elastic did the same thing with
Elasticsearch, and that contributed to AWS forking the project:
[https://aws.amazon.com/blogs/opensource/keeping-open-
source-...](https://aws.amazon.com/blogs/opensource/keeping-open-source-open-
open-distro-for-elasticsearch/)

The same exact issue applies here:

> The maintainers of open source projects have the responsibility of keeping
> the source distribution open to everyone and _not changing the rules
> midstream_

> we believe that maintainers of an open source project have a responsibility
> to ensure that _the primary open source distribution remains open and free
> of proprietary code_

Those comments aren't an indictment of the open core business model or of
attempts to monetize open source, but rather a criticism of "muddying the
waters" and trying to create licensing confusion.

~~~
mrighele
> The maintainers of open source projects have the responsibility of keeping
> the source distribution open to everyone and not changing the rules
> midstream

> we believe that maintainers of an open source project have a responsibility
> to ensure that the primary open source distribution remains open and free of
> proprietary code

I disagree. Nobody has the responsibility to do anything for free. Amazon is
free to take that responsibility for itself though.

The fact that this comes from a company that in more than one case has
modified an open source project and kept the changes hidden behind a SaaS only
adds insult to injury.

~~~
sqrt17
> Nobody has the responsibility to do anything for free.

In general, yes. If you call something an Open Source project, however you
take on certain responsabilities that you wouldn't otherwise have, such as not
playing bait-and-switch, and can hope for people sending in bug fixes and
patches (and even signing copyright assignments if required for dual
licensing).

If it were just "doing things for free" and not receiving anything in return,
FOSS would not interest anyone and we'd get back to the shareware world of the
90s where (as a user) you got an evaluation license but no stake. Some
developers prefer the shareware model to going full OSS, which is fine.
Playing bait-and-switch by turning an Open Source project (with the community
and the help and credibility that potentially come out of it) into a Shareware
product will, like any bait-and-switch, irritate people.

------
lixtra
I used hands on table (free) in an internal project. I would have had the
budget to pay a license but the “N developer” option[1] was too confusing. We
have interns and outsourcing partners potentially touching the code, how many
licenses do I need? Negotiate an enterprise license?

This would have involved legal department and dramatically increased cost and
time to resolve.

A “not more than 100 unique users per day” license for 1000 USD I would have
bought in a blink of an eye.

[1] [https://handsontable.com/pricing](https://handsontable.com/pricing)

~~~
q3k
Agreed, seat-based licenses suck. Like, do you pay for developers that do code
review but not necessarily touch this particular codebase? What happens when
your company grows, or you get acquired?

Same for 'machine' (or even worse, 'cpu') based ones...

I don't know what a good number for cost scaling would be, if any. But what
most companies offer right now is plainly terrible.

------
dmitryminkovsky
> The MIT license is replaced with a custom, ‘free for non-commercial and
> evaluation’ license

This is really all I want out of anything. I don’t want to pay to evaluate,
just to see if it’s a good fit. But if I’m going to use something
commercially, I actually want to pay for it, at least if that thing is a
complicated component like a rich text editor or handsontable. These open
source projects usually have 1-2 developers who account for 95% of code
changes[0][1]. If they went away, the project would die. Commercially, that’s
a huge risk.

EDIT: Just read this license. I wonder why they went with license keys?

[0]
[https://github.com/quilljs/quill/graphs/contributors](https://github.com/quilljs/quill/graphs/contributors)

[1]
[https://github.com/basecamp/trix/graphs/contributors](https://github.com/basecamp/trix/graphs/contributors)

~~~
kelnage
Because commercial software companies never die (and take their IP down with
them)? And are you seriously advocating that a lack of knowledge about a
factor you have identified as being important (most commercial companies
rarely tell you how many developers account for the majority of the code
changes) is somehow beneficial to you, compared to actually knowing?

~~~
dmitryminkovsky
> Because commercial software companies never die.

I wasn't clear. I wasn't comparing to commercial companies. I basically don't
use commercial software because I'd rather have to code features myself than
depend on somebody for documentation. Depending on someone for documentation
(ie. having to reverse engineer something you paid for!) is one of the worst
feelings in the world. Commercial open source is the best of both worlds for
project that require a lot of domain knowledge from developers (eg. the
highest-end knowledge of browser compatibility issues, which is required to
build a contenteditable rich text editor). You may not agree, but my
perspective is that in the open source world, the reality is that the primary
developer is the difference between the project existing and not existing. You
can just ignore that and not compensate that person with anything but good
vibes, but then you'll find that the project no longer exists.

~~~
kelnage
Okay, I can see what you're getting at. I'm still not convinced that this move
is the right way to go about it, as compared to simply keeping an FOSS license
and setting up consultancy payments or similar (as they had previously) - as
others point out, the commercial licenses can be a serious pain to navigate in
many companies, that can significantly reduce the benefit your product offers.

~~~
Reinmar
Which FOSS license? Because if it's a permissive one, like MIT, BSD or MPL,
then you get results like we did with CKEditor 4:

> From these thousands of businesses and millions of downloads, a very small
> group (less than 0,5%) decides to enter into business relations with
> CKSource.

Source:
[https://github.com/ckeditor/ckeditor5/issues/991](https://github.com/ckeditor/ckeditor5/issues/991)

CKEditor (a rich-text editor) is this kind of really complex piece of software
which requires years of experience and years of development. It's also a piece
of software which is complex enough to scare people from contributing to it.
So people use it for free and report bugs to you. That's all. With that
conversion rate about 0.5% and a rather niche market, it's possible to slowly
grow your business (as we did – CKSource is 40+ people today), but hard to
keep up with the world.

Just to give a context – CKEditor 5 (which was written completely from
scratch) required 5+ experienced developers working for more than 4 years
right now. Therefore, for CKEditor 5 we chose GPL2+. We hope to have a more
healthy paying/free users ratio. The future will show us if that's a good
direction

BTW, you say that:

> commercial licenses can be a serious pain to navigate in many companies

From my experience, it's actually the opposite. Companies like our commercial
license because it's easier for them than going with e.g. LGPL or MPL and
hoping they won't violate it.

~~~
kelnage
I agree completely - there are FOSS licenses that are easier to make money
with than others. One of the most frustrating things I regularly encounter on
HN is the “MIT/BSD is best, don’t use anything else” mentality. I think some
of that is likely coming from the ease of use commercially (I worked for
organisation who’s legal department literally said MIT/BSD = green, GPL2 =
yellow, others = red).

But as you have yourself pointed out, it is (or at least may be) possible to
make money as a commercial entity whilst still using a FOSS license, without
entering the netherworld of “what is commercial use” arguments that these
bespoke licenses create.

P.S. I know CKEditor very well, having used its predecessor FCKEditor on a
small website for a local charity over 15 years ago! So thank you for
continuing to support FOSS :)

------
asimjalis
"Essentially, [Handsontable] was kept running thanks to the money earned from
Handsontable Pro. Unfortunately, our observation is that the ratio of
commercial to free users is about 1 to 25. Hence, the only way for us to keep
investing in the product is to convert more free users into paying."

This license change can play out in three ways: (1) free users convert to
paying users, (2) free users move to other products with more liberal
licenses, (3) combination of (1) and (2).

~~~
TAForObvReasons
(3) free users stick with the latest MIT-licensed version

(4) free users fork the free version, like what AWS did with Elasticsearch
[https://opendistro.github.io/for-
elasticsearch/](https://opendistro.github.io/for-elasticsearch/)

------
lazerwalker
> Unfortunately, our observation is that the ratio of commercial to free users
> is about 1 to 25.

That's a ~4% conversion rate. Anyone have data for any similar OSS software
libraries with a free tier?

~~~
sheetjs
We ( [https://sheetjs.com/](https://sheetjs.com/) ) started from a series of
open source projects (our largest [https://github.com/sheetjs/js-
xlsx](https://github.com/sheetjs/js-xlsx) has more than 15K stars) and offer a
slew of related solutions, including more advanced builds of our open source
offerings as well as complementary software.

The ratio of customers to open source users is largely useless. To "convert"
users, you need to offer something above and beyond what is available in the
open source offering. Unless you have something compelling, people won't
"convert" out of altruistic desires. Unfortunately that's not how business
works. We found many companies deciding to fork our open source libraries
before even considering contacting us (for example, the John Deere homepage
[https://www.deere.com/en/](https://www.deere.com/en/) uses a forked version
of our open source offering)

To "increase the conversion rate" you have to either improve the value of the
commercial offering or cripple / remove the open source offering. They seem to
be doing the latter.

~~~
threeseed
Most people simply don't understand how enterprise companies work.

You think you have plenty of money to spend and it's easy to get licenses for
software. Nope. It's often harder than being in a small business. Licenses
often mean lengthy RFPs with extensive Legal and Procurement involvement.

Need to try and sneak things under the radar if you want to get them to buy
your products.

~~~
Traster
This is a good point. To add some colour to this. In my experience it's not
that there's no money to spend. There's tonnes of money to spend, but there's
also tonnes of people to spend it. The result is within the company you
develop experts, people who know how to get access to the budget. Every year
those experts spend a non-trivial amount of time making sure they get the
company's budget. They spend tonnes of money, whilst the average employee
never sees any cash in their entire tenure.

So in some ways it makes sense to make your enterprise price incredibly high -
because the people within large companies will either be able to spend loads
of money, or non at all. Very few will be anywhere in between (and will find
it very difficult to pay or continue to pay over time).

~~~
sokoloff
Related, search for free cheap and dear in this clsssus Spolsjy article:

[https://www.joelonsoftware.com/2004/12/15/camels-and-
rubber-...](https://www.joelonsoftware.com/2004/12/15/camels-and-rubber-
duckies/)

------
eitland
Understandable but a bit disappointing, just like Caddy.

With Caddy I'm fairly certain I donated (as did others, including Mozilla). I
guess my contribution didn't mean much but it still felt weird.

With Handsontable we recommended it at a project and made sure to get
commercial licenses - _because it was open source_.

That said, when I recommend open source at work it is not because of the price
but because of peace of mind it gives.

~~~
Sphax
Caddy is still open source.

------
siscia
As somebody trying to make a living out of open source software, I am really
glad of this new movement.

I predict that eventually we will see more and more projects following the
same route and try to monetize their products and it will become much more
normal, companies will get used to it and eventually everybody will be better
off.

~~~
nullandvoid
Whilst I certainly understand ( and mainly side with ) your point - to plays
devils advocate would they?

Reading `samuelcolvin` comment on that thread made me think - mainly on point
#4

" One definition of anti-social is "something that would break society if
everyone did it". Take a minute to image a world where every successful
software project made this move: node, webpack, react, angular, vue,
bootstrap, python, rails, django, etc. etc. etc. - we've all decided to charge
$2000/year - what would handsontable inc.'s toolchain or website cost? Would
you have even learn to code? The software industry would look like the airline
industry, the world would be a less fun place. "

I think they pose a good point - How is any hobbyist meant to get setup with a
solid JS stack which involves 10's / hundreds of dependencies if you have to
pay 10k/y+ licence fees before you have any paying customers? It actually
feels like the opposite of progress as now only the big bugs can afford to set
up shop with the best tech for their product.

Ultimately I think there's space for commercially available open source
projects - the issue is the lack of companies / individuals giving back to
sustain this movement.

~~~
ThrowawayR2
> _The software industry would look like the airline industry, the world would
> be a less fun place._

Yes, but the point is that the airline/aerospace industry exists, as do many
other industries and profession that require expensive tooling. Heck, the
software industry existed and produced a variety of successful products in the
late '70s to early '90s before FOSS started taking off.

Paying for tools is not an insurmountable obstacle.

------
myliang
[https://github.com/myliang/x-spreadsheet](https://github.com/myliang/x-spreadsheet)
was MIT License

~~~
myliang
a new choice

------
jchw
Interesting. This reminds me a fair bit of ag-Grid but I've never heard of it.
Is there some comparison somewhere of how all these data tables libraries
stack up?

~~~
TAForObvReasons
From a business perspective, ag-Grid seems like the most successful / popular
solution. They've donated $47500 to webpack
[https://opencollective.com/webpack#contributors](https://opencollective.com/webpack#contributors)
which is really impressive!

~~~
jchw
Yeah, a place I worked for decided to license agGrid because it was simply the
best solution we could find. The React integration was still a bit rough but
it did deliver pretty well on the promised features and performance was pretty
good too. I imagine a lot of the solutions today are pretty good, but it's
been a long time since I've been looking at any of this stuff.

------
mcguire
" _Handsontable is a JavaScript /HTML5 data grid component with spreadsheet
look & feel. It provides easy data binding, data validation, filtering,
sorting and CRUD operations._"

They may have shot their user stream in the feet.

------
svnpenn
I would like to use a license like this with my software

is a general one available?

~~~
icebraining
There's [https://commonsclause.com/](https://commonsclause.com/) which has
been much discussed on HN:
[https://hn.algolia.com/?query=%22commons%20clause%22&sort=by...](https://hn.algolia.com/?query=%22commons%20clause%22&sort=byPopularity&prefix&page=0&dateRange=all&type=story)

------
nickstefan12
I will never forget what I found when hacking the internals of Handsontable
many years ago...

JavaScript For loops with

\- :label (eg go to)

\- continue

\- break

It was definitely an interesting sperlunk!

~~~
arcturus17
What’s so bad about continue and break? I’ve seen it in different languages in
what I consider great projects...

Sometimes you really need an exit in the middle of the loop.

~~~
Drakim
Worst part is, I've seen devs wrap their entire for-loop in an anonymous
function JUST so they could use a return; to break out of the loop, instead of
using break;

