2 ms·
All good points but I would add that you should never make it easy for people to copy valuable things from you if you depend on being unique. Unfortunately wha
by makecheck 9y ago
All good points but I would add that you should never make it easy for people to copy valuable things from you if you depend on being unique.
Unfortunately what’s easiest for programmers is pretty easy to copy. For example, any ordinary file in an app bundle is dead simple to copy (and unfortunately the most straightforward APIs for using data from code will assume that files are plainly located in the bundle, which I always felt was a bit of a design oversight).
One fairly low-effort defense against copying is to use your program to reassemble valuable data from parts. For example, instead of having easily-stolen complete files in your bundle, store a variety of bits and pieces that only the program knows how to assemble correctly. You can even create a technically-corrupt/invalid binary file and then have your program restore the bits that you know you removed. Obviously this is an extra pain to do but if you really need to reduce the chance of losing to a competitor then it may be worth the trouble. (Note that this isn’t foolproof either, as clever people can still figure out what a program actually does; it’s just way better than doing nothing.)