pyc files are compiled files, you asked for compiled files in the OP, and both solutions rely on pyc files. Ok, pyc files are weak (from an obfuscation point of view), anyway your code can be attacked by reverse-engineering whether it is a pyc file or an executable file, ... Executables produced by Panda's deployment tools are executables which contain pyc files, and you could obfuscate them. Anyway your code could be still attacked, there aren't client-side solutions. The only solution is to store important code on server-side. The pragmatic approach is to not waste time in protecting code (face the problem only if this is crucial).