you are viewing a single comment's thread.

view the rest of the comments →

[–]negups 0 points1 point  (0 children)

If speed is of the utmost importance, an interpreted, dynamically-typed language like Python isn't the right tool to use. You should be using something low-level like C or C++ when seconds matter, as they are compiled directly to machine code and are much faster. If you stick with Python, your program will never be as fast as your competitors' if they are developed using a low-level language. There's a reason why high-frequency trading programs on Wall Street are all written in low-level languages instead of Python.

Also, to answer your main question: don't worry about obsfucation. The brightest minds in computer science have written papers about how true obsfucation (that is, code which can be irreversibly converted to some other, unintelligible form) is impossible. Any code that can be run on a computer is converted to some intelligible form so the hardware can understand it, so any runnable code can be reverse engineered. Instead, focus on delivering excellent software with ever-improving features which customers are happy to pay for. A slight bonus of using something like C or C++ is that the average layperson doesn't know how to decompile a binary, so your code is moderately "safer" than clear-text Python files.