John Wilger wrote:
> On Tue, 8 Feb 2005 12:20:12 +0900, Assaph Mehr <assaph / gmail.com>
wrote:
> > Doesn't help. At some point in the program there is the
(conceptual) if
> > statement:
> >   if user_has_rights
> >     do_this
> >   else
> >     yell_at_user_to_buy
> >   end
>
> Actually, this method _could_ work with Ruby. You _don't_ need to
have
> that conditional, because Ruby has open class/module definitions. You
> could separate the extra functionality into a separate set of files.
> Then create an encrypted package of the files. When the files are
> pulled out of the package and placed in the correct directory, the
> extra functionality would be enabled.

For which you will need to distribute the decryption key. After the
user will have this key, they will have access to the sources. Why go
through all this trouble, when you can simply give the source once the
user paid? The end result is the same (user pays, gets access to
source).

> Sure, someone could distribute the files illegally after gaining
> access, but that's a slightly different issue.

Actually this is the exact same issue: if a user is bent on getting
illegal access to the software, will he care if he gets from a cracker
the decryption key or the actual sources? You just need to look at all
the sites distributing full and cracked software to realize that this
is indeed the same issue.

It all boils down to a cost-benefit calculation for the user: Will
paying for the software be better for me than getting the software
illegally? Each user will think of the costs, the risks and his efforts
and make a decision whether to pay or to obtain an illegal copy of the
software.


Cheers,
Assaph