Hacker News new | past | comments | ask | show | jobs | submit login

The project is really great, however license is really bad. A modern framework, should be open source under liberal license. Licenses like this worked in 90s, but currently they don't work.



At first I thought you meant this wasn't Free software, but then I had a look and realized it was AGPL[1] -- how's that not liberal enough?

What am I missing?

[1] https://github.com/intellifactory/websharper/blob/master/LIC...


This license makes it impossible to create non open source software without paying the company, which makes it practically useless for commercial development. Liberal license are licenses like BSD, Apache, etc, which allows people to create commercial derivative works without disclosing source code.


How does it make it useless? Why wouldn't you pay a license fee for developing commercial (closed source) software? If you want to sell the code to the client, use the AGPL, if you want to sell the (closed) service, get a commercial license?

The AGPL allows you to develop closed internal tools (no distribution to third party), optionally distribute without a cost under the AGPL -- and they also offer an option for commercial development. Asking for the code under a BSD license just sounds like you want to avoid paying for the cost of developing, supporting and maintaining a (presumably) quality product.

It's less than 400 USD/year for a freelancer... if it's any good it should pay for itself, practically?


Any open-source code would have to be released under the terms of the AGPL as well (although could potentially be dual-licensed). It could also not use GPLv2 libraries (although could use GPLv3 libraries), or libraries with other copyleft licenses for the most part.

It's... an extremely restrictive license, generally, and not one I'm comfortable using as an open-source developer. I know many others feel the same, which would lead to a lack of community, leading to a lack of community support, and potentially leading to the death of the product.


While I like the AGPL, for projects where it's appropriate (I think it fills a need to ensure that users of the software have the four freedoms, even if they only (mainly) use a service, not a local program) -- I also generally think libraries are better served by LGPL.

It's a rather complex issue -- not just how do delineate "libraries" as opposed to "derived works" -- but also how much is needed in the "main product" for it to be useful. Architecturally it might make sense to have the "program" or "service" be a thin wrapper around several libraries -- but if only the program is AGPL, and the libraries are LGPL -- how do we make sure the end user is free to maintain the software if needed?

The main thing with the GNU line of reasoning, is user rights. If viewed from the perspective as "just" a developer, many of the licenses look restrictive -- because it limits the developers power over end users.

I think we all end up with more freedom as a result of that -- not everyone agrees.

As for mixing -- I'm not sure how the "open source" exceptions in the license are supposed to affect that -- my cursory reading seemed to imply that the idea was to allow mixing with code under other licenses. But I must admit that's not a subject I've considered much.


Sure, sure. I get the goals of GNU. However, that's kind of irrelevant as to whether or not this will grow a community, and with a license that is restrictive to developers, it likely won't.

In fact, I don't think I've ever seen any AGPL software that's grown a significant developer community.


>It's less than 400 USD/year for a freelancer... if it's any good it should pay for itself, practically?

The problem isn't paying 400 USD/year. This is negligible cost compared to how much it costs to hire a developer. The problem is that software created in such a way wouldn't be widely used for reasons mentioned in one of my other comments.


I can't seem to find that. You mention something about risk -- but I'm not sure which risk that is. As I understand their license page, you need a license per developer. The resulting code you're free to sell under a closed license. If you want to sell work under a closed license, you're covered. If you want to sell it under an open license, you can sell it under the AGPL. Exactly what are you missing from this kind of dual-license?


I think he is trying to say he is going to miss a vibrant OSS community due to the perceived encumbrance. That's just my take.


For example, company decides to change a license, and I need a new developer. What should I do in this case especially if I work for a startup and its only product is created with this technology?


If you already have a project - you have a copy of the code under the old license. Is it really that different from a company changing from a bsd license to closed source? You'll have to negotiate or fork in either case.

I do get that there might be a question as to how you could get additional developers under the old license...


BSD license allows closed source derivative work.


In your example, the company changes the license. So you already have code under one license -- either proprietary if you've bought a license -- or under BSD. When the company owning the project decides to re-license -- you still have code under the old license. Either commercial or BSD. Right?


If it's a BSD license everything is great. If it's AGPL, which is the case for the company which we are discussing, I can't do anything without disclosing source code.


We're discussing how to do a commercial project. If you want to do a commercial project in this case, that means buying a commercial license. If it's BSD, you can also do a commercial project. If the company changes it license from commercial (to some more expensive commercial license?) -- you still have a copy of the code under the previous commercial license. If the company changes the license from BSD to a commercial license (or the AGPL or whatever) -- you still have a copy of the code under the BSD license.

If you choose to not buy a commercial license, your commercial project in this case will have to be under the AGPL, and you can sell your products, but you also have to promise your users that you will provide a copy of the source on request. I think we both understand the demands of the AGPL, and it's not readily compatible with a closed source model. But you took the example of "what if the company changes the license" -- and if you were already doing a closed source project, that would mean you were not dealing with the AGPL, but the commercial license. So again, I ask, how would the BSD protect you from that risk? Upstream is still free to change the license of future releases...?


How do you propose they make money to pay salaries?


Paid support, tools, there're plenty of companies which follow this business model. Extjs, Vaadin, Typesafe, etc.

I understand that they want to make a money, however, using their license is unacceptable risk, especially taking into account there're comparable alternatives. I'd rather use GWT/TypeScript/Scala.js, than proprietary framework which I won't be able to work with if they changed license to something unacceptable (for example, charge per server or whatever).


ExtJS is GPL with paid commercial license, so essentially the same model as WebSharper. They even explicitly forbid to start developing a prototype in the open and then buy a license for it, which WS doesn't.


If you worry about such hypothetical licence or price changes, you could also contact the company and negotiate a custom licence/contract.


Usually, such companies have quite high price for such contracts and I think it's not worth is. While technically it might be superior, it has small user base, smaller talent pool to hire from, less books/documentation. All this happens because people want to make money in an old fashioned way.

The better option is to use, the most popular open source tool which in this area is GWT or TypeScript.


If you don't like the license, don't use the framework. It's that simple. Charging for commercial licenses for libraries is a perfectly valid business strategy, and I can see lots of F# developers paying for this.


AFAIK, even for the open-source license - you only have to provide source code to your client - i.e. when distributing...

If you're using this framework for your personal project - you're free to not to release source code - since you're not distributing the binaries of your project either.


>If you're using this framework for your personal project - you're free to not to release source code - since you're not distributing the binaries of your project either.

In this case you can't even publish the code, since compiled js is kind of binary.


Can't you treat the part you're "distributing" - i.e. the client side html/css/js - as a separate part and open source only this?

But not sure if this kind of thing is really distribution. GPL* licenses were more oriented towards traditional compiled software and it is somewhat unclear with regard to nowadays prevalent web apps.


Many years ago, a Steves job asked Stallman this very question regarding a similar situation. Stallman initial thought it sounded legally sound, but since he is not a lawyer, he asked one.

The laywer replied judges would consider such schemes to be "subterfuges", and ask whether it was "really" one program with different labeled parts. Stallman sent a reply back to jobs, based on that recommendation from the lawyer.

Websites might feel very different from a technical point of view, but trying to do smart and tricky things with law always end up with the same question: How will a judge or jury view it. If I go to hackernews, do I get several "works" of JS, CSS, HTML, or is it a singular work with different labeled parts?


>If you don't like the license, don't use the framework

That was the point, remember? Because of the terrible license, very few people will use it. So it will stay tiny and/or die out.

>and I can see lots of F# developers paying for this.

That's a non-sequitur. I pay for lots of free software. The problem is not cost, it is freedom.


You have the freedom to do anything you want from the result of using this framework.

I also have the freedom to do so with what you make, if I am a user of it.

Why are you so dead set on taking away my freedom. Adding restrictions on what I can do with the work you created from that framework is kind of rude when the developers is asking you to share, and share alike.


>You have the freedom to do anything you want from the result of using this framework.

No I do not.

>I also have the freedom to do so with what you make

Then clearly I do not have the freedom to do anything I want.

>Why are you so dead set on taking away my freedom

I am taking nothing from you. I release all my code under the ISC license. That is free. Restrictions are not freedom.

>the developers is asking you to share, and share alike.

The developers can ask whatever they like. And I can decline their offer. I will continue to use free software instead. Why is it so upsetting that someone would choose not to use non-free software? If the developers find my absence to be a problem, they are welcome to change make their software free. I have no interest in shareware.


While I sincerely doubt that you release all your code under the ISC license, I will take your word on it.

That mean you can use any open source license and release your contributions under that license. Be that BSD, GPL, MIT, Apache... what ever it is, your contributions can always be under the license of your choice.

So yes, you do have the freedom to do what you claim you only do, ie, release code you write under ISC license. 100% freedom to do exactly that. Write a addon to AGPL and release that add-on as ISC? No legal problem at all.

If you want freedom to release code someone else has written under the license of your choice, then I sit in the same boat. I would like too to have the freedom to chose that, but alas, copyright wont' allow that. It would be a neat freedom to chose the license of OS X and windows.


So, you have no idea what you are talking about, but you want to tell me both what I actually do, and what I should do? Gee, that's really compelling.


>That's a non-sequitur. I pay for lots of free software. The problem is not cost, it is freedom.

Exactly, it is really not about some kind of one shot payment. It is about freedom, future-proofing.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: