|
|
|
|
|
by martin_hnuid
3276 days ago
|
|
I know this is a tough one. I'm trying to understand what the options might be while fully understanding that JS is, in the end, not protectable. Say you develop a site that offers a very specialized CAD package unique to an industry. The entire thing has to be client side JS and it could take a year or more to develop. Theft of code in a case like that could be catastrophic. Frankly, I'm surprised nobody has come up with a real solution for this. |
|
The first question I would ask you is why does it have to be client side? The second is why does it have to be in javascript?
As I said above, in using javascript you have forced the horse to bolt and then you close the barn doors.
Javascript requires you to send them the source. If you use it, then that is the fundamental choice you are making at the outset. You cannot complain about someone copying your source code if the choice you make is for them to have to copy the source code to be able to use the application you have so painstakingly built.
If you don't want them to have the source code then you give them a binary blob that has everything appropriately encrypted.
The other point, I want to highlight is that having a copy of something is not theft. You can only steal something when you remove it from the control of the person you are stealing from. Not any copies, the actual object itself. These objects can be intangible such as your reputation, but that is another subject.
It is an unfortunate fact of our society that this very important distinction has been lost. Theft only applies when the item being obtained is unique and belongs to someone else.
Once you share something, whether it be code or an idea or anything else that can be treated as an infinitely copiable, intangible object and it is copied, it no longer is uniquely yours. Any copies that are made that are not made by you are not morally yours, irrespective of any monopoly rights granted to you by the reigning government over you. Governments do not deal with morally, they dictate law, which is a completely different thing.
So in this case being discussed, you freely (irrespective of any form of payment you might receive) have given away the source code because of the underlying architecture you are using. If you don't want this happen then you have to choose some other architecture for the dissemination of your application.
As I have said elsewhere, any copies created that have not been authorised by you under any monopoly rights that you have been given by some governing body can be used as free advertising but you cannot cry theft as a moral consequence.
These days, I work on free projects and so I freely give away my work. This is the hope that when I actually need to do paid work, I'll be able to show my previous work and they will see that I am worth having on board.