- You can run the program as you wish, for any purpose.
- You can study how the program works, and change it so it does what you want.
- You can redistribute unmodified copies without fear of the publiher suing you.
- You can distribute copies of your modified versions to others without fear of the publiher suing you.
Who wouldn't want to have all that in a tool that will be the basis for your own projects?
In all your three examples, the product they create is detached from the creation platform before release, and that product (text, music, images) is compiled/played/displayed on a different application; an also there are many alternative tools where the product could be processed if the original tool ceased to exist.
So there's no fear with those that, if the tool creator begins imposing more and more restrictions, you'll be locked-in. But a unique programming language for which your code can't possibly be ported to a competing platform? One would be stupid to develop for it anything requiring ongoing commercial support, beyond some cool tech demos.
Anyway not here looking to start a flame war. My point was that the product can be good or bad and it doesn't have anything to do with it's source code being available or not.
My 5c. Everyone feel free to disagree.
A product can be good or bad without OS. So long as you can deploy what you make with it effectively.
Sometimes that means mindshare, like UDK and Source.
Sometimes that means complete decoupling tooling from code like Sublime and Atom.
Sometimes it is more about the deployment, like Visual Studio and Unity.
However, to stand out, this product needs one of the above.
It's new, and doesn't seem to be backed by a big name, so no mindshare yet.
So they need to somehow make devs want to use it for their code. A nice experience is usually not enough.
An OS community, or a fantastic cross-compilation strategy are the only two things that I, personally, have seen work.
OS seems to be the easiest of the two.
While I side with your central argument, there are numerous cases where the above is absolutely enough.
There might be a cost/benefit analysis where some closed platform is extremely far ahead in every other aspect, but you should be very well aware of the risks of being tied to that platform.
I'm happy with non-commercial use (including providing the source), but if someone wants to make money from software I write, it's only fair that they should pay me, and under the open source model they don't have to, and usually they won't.
If a commercial user likes my software they can pay for it or hire me. (I'm available). Is that too much to ask?
1) you become unavailable?
2) you don't have the physical capacity to develop everything that the client needs?
3) you don't want to implement some feature that the user needs, for reasons? (related to the software architecture, or the direction you want the project to take, or whatever).
Open source gives the commercial client the flexibility to adapt the code to their uses, in a way that being tied to a single provider will never achieve.
If they pay for it, they'd have the source, and would be able to modify it for their own needs but not release it.
But having access to the source, without permission to modify it nor a perpetual license for using it, doesn't solve any of the problems I listed above. And if they have permission and are doing the modifications themselves, why should they pay the original author?
> if they have permission and are doing the modifications themselves, why should they pay the original author?
They should have paid the author for the right to use the software. That would normally include the right to adapt the software for their own purposes.
The author has the right to decide on the terms of the licence under which software is released. Any user who doesn't agree to the terms shouldn't be allowed to use the software.
I never said that this shouldn't happen, don't attribute me words that I didn't say. I said that typically it won't, since it doesn't make any sense to the users of the software.
> They should have paid the author for the right to use the software. That would normally include the right to adapt the software for their own purposes.
You didn't reply to my question, which was: why?
> The author has the right to decide on the terms of the licence under which software is released. Any user who doesn't agree to the terms shouldn't be allowed to use the software.
No one is arguing otherwise. What I'm trying to explain is that developers following that strategy will likely find themselves with very few users. In the long term, the developer who gives the users a product that better matches the user's needs will displace the one who doesn't, that's pure market behaviour.
Paying the author for the right to be locked in a closed software ecosystem is a terrible value proposition from the point of view of the client. Note that this argument applies primarily to software like the one in the article, which tries to be a development platform, not necessarily to applications.