For what it's worth I've decided to move foward with this. I've created a basic NDA to ensure confidentiality which will be signed electronically and proofed by a third party online. I will then demonstrate what I have in full and at which point the developer can choose to withdraw from a collaboration. If we move forward with a collaboration I will draft a new legal document which specify the minimum outcome of the collaboration and the obligation of both of us. I will require as a minimum that we re-develop the solution in an improved manner. At that point I will be happy to continue the collaboration, but if the developer should lose interest or other stuff happen along the way, I should at least be ensured that I have a much better solution at hand than what I have today. Comments/thoughts?
Excuse my ignorance here, and I'm the last guy who has anything worthwhile to contribute to this thread because of my lack of experience, but this makes no sense to me. The NDA essentially just covers you in case you find him using it or selling it. What about him using it for his own personal use under the radar? You would never know, and could never prove it. You say you will show him everything, then he will turn you down, saying its too complex for him or whatever, and then he goes on to code it himself for his own use. What is to stop him from doing this? If he codes it for you and you share in profits, he maybe keeps 50%. But if he turns you down and codes it for himself, he keeps 100%. I don't care how much you trust him. Money corrupts everyone. Maybe he will even find a way to do it better than you, with small improvements, and justify it to himself by saying your version was not good enough until his tweets were utilized. As other members have said, give him dummy variables that you can then change, or have him code just parts of it to start with.
You're not ignorant, but maybe you didn't read the original post? What you're saying here would be my precise concerns with a collaboration and which is why I've been very skeptical. I'm also not sure how much these legal documents protect me, but I do know that without them I have zero rights for sure. So I'm doing what I can to protect myself and make sure I get something back. These documents are regulated by Norwegian Law so I could use it in court at some point. Something I'm 100% sure would never happen regardless of the outcome, but I figure it should be a way to keep some pressure on the developer. First I will show him in some detail how it all works, but without revealing any calculations or source code. If at that point he still wants a collaboration we'll sign a document which guarantees that I'll get my end, i.e., a software solution. That would only make sense if I were hiring him or trying to exploit him in some way. The very nature of a collaboration means that I'll have to share and help him out just as much as he's helping me. Someone suggested that I would have the programmer work for free or that it was even slavery. I never considered it that way. But I actually brought up those concerns to the programmer and he assured me that he didn't feel that way at all about it.
I was also approached by the professional developer (head of a software firm with expertise in ML) once again, but I think I'll decline that offer as they will want to use it commercially if they find it have value. I see the benefits in that the solution may be better and solved faster. Additionally, the firm are breaking into algorithmic trading and he suggested that I could trade for them at some point if we find something that's workable. There's a lot of ifs and buts there, though, and I consider the risk of being left in the dust higher. So, I think the best choice for me is the private guy and keeping this as private/secret as possible.
When you buy a software company, you buy the skilled developers, not the code. The code ages and gets outdated, as you are experiencing. The first thing the developers want to do is rewrite it. N.B. These are DEVELOPERS, not PROGRAMERS. This is a critical distinction. Likewise, you are the trader, it is your knowledge and skill set that is key, not the system. No one is going to be able to run away with your system, maintain it, upgrade it, adapt it, in any meaningful way medium or long term.
Well, this is very true. You do after all say collaboration. And I very much remember reading the Jim Simmons book, and there, each team member had access to what everyone else was doing since Jim structured the team in such a way that there would be no secrets. I just really feel for you. I would hate to show a guy in 30 minutes what took me years and years of blood, sweat and tears to put together. It would be one thing if he is brining trading knowledge as well to the table, but it sounds like he is just the programmer that will be learning a shit load from you while getting paid, and then eventually branch off on his own. Maybe I'm just pessimistic, but what I totally see happening is he works for you during the day, coding up what you want, and then at night he makes his own version that will be a little better with his own parameters and he will be trading it on the side. You would never know. Its like a husband who finds his wife all of a sudden in a good mood everyday. He thinks that she is now finally being nice to him and hence concludes this is a positive change, but really, she is banging some other dude and hence why she is in a good mood. And before anyone jumps to conclusions about how I know, its because I've the boy toy on the side and some other poor guy was getting cheated on! But I'm sure you have a good sense of judgement, and I'm also sure that there are many people in this world that are honest, so chances are somewhat good that this won't happen to you.
Yes. To be clear - he will not be receiving any $$$ from me. His payment is that I share with him my current system/technology and years of research. In return, he will code the entire solution for the benefit of both of us. In monetary terms, I imagine the cost of this if I were to pay someone to do it would easily be $15K. If it turns into a larger project and long term collaboration - possibly much more. What you're suggesting is definitely a possibillity, but I think that's a risk I'll just have to live with if I do this now. If it turns into a good collaboration the up side is potentially very good. If I were to hire a programmer to do it at some point in the future it would be very consuming and since I would have to guard the details it's possible it wouldn't be that great in the end. The obvious benefit of a collaboration is that when you come clean and show how it all works the programmer can better understand and even help out with new features and ideas for improvement. That said, your post did once again give me some second thoughts, although I do think I'm going to move forward with it... I have a good impression of the guy, but like you say, you never know. I've been around long enough to both been disappointed of good people and seen it happen with others.