Licensing Questions


#1

I have a few questions about licensing (the answers to these could possibly be stickied for everyone else’s benefit):

  1. If I make software that involves a publicly available client that connects to a private server that is not available for download, do I still have to release the source code for the server component?

  2. Does the GPL license mean that even if I intend to release a completely free of charge product that in no way makes any money whatsoever, I would still have to pay more than the cost of a computer + Windows 7 + MS Office + a decent graphics card + more just to keep the source code private? (If this is true, I seriously think you should consider re-licensing under the LGPL where the application source can be private as long as it links with the dynamic library)

  3. Do you offer any form of commission, i.e. I make a commercial product and share a percentage of the earnings instead of buying a license outright?

  4. Is accepting donations (e.g. to keep a server/web hosting running) for an open-source project based on JUCE acceptable?


#2

I would rather have that you can keep code private but if you go commercial you pay for a license. And a pay as you go kind of thing would be handy, Like 10% or monthly earnings till you paid the 700 or something.


#3

That’s what I meant by commission.


#4

Not under the GPL, no. You haven’t distributed the server binary, so you don’t need to distribute the source.

Yes. The whole point of the GPL is to encourage code sharing.

What incentive would there be for I, or anyone else, to pay the license fee then?

[quote]
4. Is accepting donations (e.g. to keep a server/web hosting running) for an open-source project based on JUCE acceptable?[/quote]

The GPL in no way limits your rights to charge, or accept donations, for software, or software related services.


#5

To make a commercial product. I was simply stating that if someone makes a free product and doesn’t want their hours of unpaid work taken and made into another program, they shouldn’t have to give up their life savings and more.


#6

[quote=“shane91c”][quote=“valley”]

What incentive would there be for I, or anyone else, to pay the license fee then?
[/quote]

To make a commercial product.[/quote]

But the LGPL makes no distinction for commercial or freeware. If JUCE was available under the LGPL, I could, as a commercial developer, ship my code with JUCE as a dynamic library for free, or statically linked for $. One of these options looks more appealing than the other. At that point you might just as well license it under a BSD style license, and be done with it.

But that’d put the derivative code under the GPL too. Taken from that perspective, what’s the difference between someone using your code in their project, and you using Jules’s code in your own?


#7

JUCE is publicly available and open-source, so it’s not like the program would be hiding the fact that it’s using JUCE, nor making any of it’s functionality unavailable for anyone else. So developers can’t clame JUCE as their own, but what about the code they write that makes use of JUCE? It’s a little bit like saying no Java developer owns the code they write because they make use of the JDK.

Take CrossOver Office for example. Do I see any source code for that? No. But it certainly charges for something that makes use of the Linux API. So does that mean Linus Torvalds owns CrossOver Office?

I personally don’t have a problem with open-sourcing - I’ve realised it’s for the best having lost the source of a program I wrote in VB a while ago. But there’s one thing that ticks me off - The fact that some 13 year old kid could quite easily download the source code, change the name and the logo of the program, upload it to his/her own website and say “Look at this awesome program I made!”, leaving no evidence that it was actually someone else that created the program. I wouldn’t have a problem if someone took code that I wrote and made it quite clear that it’s my code, just modified a bit, but there are people out there who won’t do that - And as far as I know the GPL is not legally enforcable, and if it is the police, at least here in the UK, won’t give two shits about it when there are far bigger problems to be dealing with.


#8

(I realise that this is going way OT from your original questions, so I apologize)

Well, yes and no. The idea behind the GPL, as I’m sure you know, is to enrich the eco-system. JUCE provides a great basis for applications and is provided under the free-speech GPL license. If your code was GPLd, sure I could take it, and do something else with it, but I’d have to release my code back under the GPL too. Potentially therefore you stand to benefit from my work.

I don’t know much about CrossOver, but I believe, with the exception of Wine, it doesn’t link to any GPLd code. Kylix (Borland’s weak attempt at porting Delphi to Linux) was the same. It was fully proprietary, and mostly closed source (the open bits were by choice, not necessity), it also made no use of GPLd code, only LGPLd libraries.

It’s never really been tested. The flip-side though is that even large corporations have never had the nerve to try. The claim that the GPL is unenforceable was largely put around by Microsoft[1] IIRC. There will undoubtedly be jurisdictions around the world where the GPL will have no standing for the same reason that some jurisdictions do not recognize the existence of a Public Domain. I wouldn’t want to chance my luck in Europe, or the US though. :wink:

To be fair, it’s not their issue. The GPL is a civil matter, and would need to be enforced directly by the plaintiff. That’s why the FSF will typically pursue these cases pro-bono on behalf of the software’s author. As far as I can tell, they’re usually pretty effective at it.

Which is not to say, I don’t get your point. It’s a pain in the ass, and there are far too many asshats in the world who will spoil it for everyone else. :frowning:

[1] not mud-slinging here. MS have a clear philosophic dispute with the GPL quite aside from any risk it may present to their business model.


#9

OK this topic seems to be swaying a little. So basically, if I build an online RPG, and in the game there are items that can be traded for real cash, that’s fine under the GPL license?

OT: The forum now has 1000 members!


#10

[quote=“shane91c”]OK this topic seems to be swaying a little. So basically, if I build an online RPG, and in the game there are items that can be traded for real cash, that’s fine under the GPL license?
[/quote]

Yes. The GPL does not restrict your right to make money. It just grants to your users the right to modify your code.

As I said above, your server code is safe since you’re never distributing it. The client code will be public, but if you approach that in the same way that you would, say, a website that is powered by a PHP back-end, it should be clear how to:

a) protect your intellectual property
b) harden the server against maliciously modified clients


#11

Ah. So open-sourcing will actually force me and any other developers to ensure maximum security from square one. In my opinion anything worth hacking that is downloaded to a user’s computer is essentially open source.

Even I could make some sense of an executable in a hex editor :slight_smile: (By some I mean I know that 0xEB followed by a signed byte is the opcode for JMP, and 0x90 is NOP. That is all)

OK that was really off-topic :smiley: But this forum has nowhere for such general computer-related chat so…


#12

[quote=“shane91c”]Ah. So open-sourcing will actually force me and any other developers to ensure maximum security from square one.
[/quote]

Yup, you certainly wont be able to rely on security through obscurity.

As you say, that’s not a bad thing. :slight_smile:


#13

Thanks valley, for your excellent replies!

I often get asked to allow it to be used for free in non-commercial apps, but I believe that if you’re creating something for free, there’s really no excuse not to make it open-source… If you’ve invented some algorithm that’s so fantastic that it must be kept secret, then it must be worth doing commercially! If not, then go open-source and earn kudos from it instead.

And sorry, I can’t possibly find the time or energy to negotiate custom percentage-based contracts with people. They’d be a PITA to sort out, and might make me little or no money at all.


#14

[quote=“valley”][quote=“shane91c”]Ah. So open-sourcing will actually force me and any other developers to ensure maximum security from square one.
[/quote]

Yup, you certainly wont be able to rely on security through obscurity.

As you say, that’s not a bad thing. :)[/quote]

Despite my theory, I’d actually like to see someone crack the registration system in place on an old program of mine called PCAno. If someone makes a keygen for it then I’ll never trust public-key algorithms and therefore SSL again :P. Speaking of PCAno, that is what I am currently trying to re-create (in open-source, cross-platform form) with JUCE. I would probably have something by now if it wasn’t for a little bug that at the time of writing I’m waiting for Jules to get back to me on :slight_smile: