If you have a super secret algorithm that you want to keep safe an okay programmer could make some server code to run it pretty easily (the protocol part, cant comment on your algorithm). Then you would write a GUI interface program in whatever language you want for the desktop that calls out to the server over TCP or something for the processing.
I am trying to hide the results of a professor (whom with I am working) that allows future stock price to be predicted from the input. That's only a concern before the research is published. Perhaps I am overthinking protecting my code? Am I?
We are getting to a large number of posts for a HN thread. An actual conversation system would be easier if you have more questions. Email me at "anthracitelight@gmail.com" if you want to enter a chatroom.
Another issue: If the software is to be sold as a yearly subscription, is it easier to run this remotely or can I actually sell an .exe that expires after a year?
It is definitely easier to control subscriptions by selling SaaS. A binary that expires in a year can be circumvented in various ways (how does it know what year it is now?) if it is valuable enough.