Hi IH,
I have been working on an app for the past few months and I've potentially found a partner to work on it with me. While I'm excited at the idea of having someone else excited about my app and help build it out with me, I'm nervous to grant them access to my GitHub repo, and database, as the code can easily be copied and used for a similar app.
I have no experience in this field and would love some advice from anyone who has gone through this before...
Does anyone recommend a license or any sort of safeguard I can use if granting someone access to your GitHub repo so they cannot steal the code/idea?
Are there any other potential problems I should keep in mind?
Thanks!
Hey Brendan, I think it's super important to build trust with this partner before you dive into any business relationship with them!
Easy. If you're worried they're going to "steal" your code, then you shouldn't partner with them. There's way worse ways they can screw you if they want to after you go into business together.
Further, you might want to think about your business model if it relies so much on somebody not copying your app. Regardless of who has the source code, almost any code can be recreated just by looking at its outward behavior.
Finally, almost nobody wants to steal your code. It's just not that valuable, for the same reason as above.
I'd argue if you're worried they're going to steal your code they shouldn't partner with you.
You get a + 1 my friend.
A partnership, by its very nature is about equals and trust. If your partner wants to screw you - they will.
Sure you can write strong contracts and all that Jazz, but how do you stop them from taking all the money when they’re able to withdraw from the bank or stop them from stealing IP when they have access to the code.
In the long run you can go to court. In the short term you cant do much of anything.
Very good points, thanks for the feedback!
Code isn't valuable, execution is
A contract between you is always a good idea. Get it out the way and then everyone can relax.
I genuinely don’t believe code is stealable. I have never been able to reuse more than 5 lines of code across any of the projects I’ve ever worked on.
I think you have a misunderstanding of where your value comes from. It's not the code. Even without your code repos, someone could easily copy your app without any of the source code. There is nothing magical about it. The value is in the domain knowledge of your business and the service you provide.
You should look into open source and the copyleft movement.
There's a lot of good comments here, most of them focusing on: if you don't trust your partner, don't work with them (+1 to all).
There's another piece: your code isn't going to be your business. Neither is the idea. It's the execution and presentation and marketing, etc.
It's not a bad thing to want to make sure your product doesn't get lifted, but you could stress about that (and waste so much time trying to "protect" yourself), or you can dive in and keep building it up. No one can steal that latter part.
you can revoke company githubs not private ones which means you have to pay for
I would recommend partnering only with people that you can fully trust.
Good old agreement written on paper or email and then get it notarized by a local bank or UPS store stating that he cannot just take the code and run with it. You'll both have to be present and you'll both have to sign stating that he can't copy the idea exactly the way it is or whatever.
Hi Brendan if you don't trust them completely, maybe do up a contract or something with them when you set up this partnership. If it was me, I would find someone who I completely trust (I know harder to say than do). Because if you now are concerned about them stealing code, then what about when further down the road when you have customers - they could potentially steal those.. which is more concerning in my opinion.
At the beginning of my career, I worried about such things as well. Eventually, I learned that having an idea and having a product is just 10% of the process. Execution is the 90%. I can point out 2 things:
That being said, I literally build my software in the open. My twitter is full of tweets showing step by step process of how I build and launch software. People collaborate and share their thoughts constantly. In 2018, there's no such thing as a 'closed' software development process. At least to me, building a software is all about transparency and building a solution in the middle of a community that truly needs it.
Thanks for the feedback @dinuka.
I remember in college, every programming assignment I had, I pretty much wrote 5 versions. The first 4 versions were out in the circulation for rest of the classmates to mod. There's probably only a handful of students actually wrote from scratch like I did. Bottom line, unless your algorithm is so magical, most likely someone will copy. Give me a topic/problem, I'll find a way to solve it. I could careless about how you solved it. In fact, that's how tech move forward in general. Not some big idea, but tons of small improvements.
side story, I was pretty arrogant in software back then. I hold myself to such high standard that if it doesn't compile, I'll rewrite the whole thing. So basically I had no debugging skills when I graduated, but really experienced in organization. And to think most of my career is problem solving and debugging is just an irony.
Thanks for the feedback!
If you can provide him a skeleton project and a sample database and not give him access to real repo and real database, that'd be the best way to start. You can take his code and integrate it yourself.
Licenses, NDAs and other paper is just that: paper. You might win a lawsuit in the end but, even if he flagrantly rips you off, it's a civil matter that will take time (years), money and effort to get anything out of him. On the flip side, if your site bombs and his site becomes a huge success, you can ride his success to the bank by suing him and arguing that you are a partner in his (copycat) business.
Most partnerships don't pan out, often disintegrating within the first few weeks. Many people over-estimate their productivity, their discipline and their interest in the business such that they never provide any value.
Thanks for the feedback!
First IANAL and this is probably overkill. Add a one line copyright header to all your code that references a text file. The text file should contain the full text of your copyright license. Even if you don't have this, basic copyright law should protect you at least in the US.
Now that we're done with that, I wouldn't worry. Your code base probably has bugs and incomplete features to implement as well. Add to that: most programmers don't like learning other people's code and it's even worse when there's no good documentation. Also most common natural reaction is that it's a chore to learn other people's code or the feeling that other people's code is wrong or garbage.
If you're really paranoid, I would just keep all your tests in a separate repo and pretend you haven't gotten to it yet (which in most cases isn't a lie.)
Thank you for the suggestions
I wouldn’t enter any business relationship with someone I don’t trust before hand. Maybe revise if your are comfortable working with this person, at all.
Contracts and NDA are fine, but before that there’s gotta be trust.
Open Source??
If all the code is public then there is no code to steal
MemeGif*
But actually, not a bad idea, do you have any network effects that reduces the incentives to copy it??
The code is in a private repo and is not open source.
This is covered in the agreement between you and the partner. Do not grant them access to anything until you have a signed agreement that has been reviewed by your attorney prior to signing.
Here's some sample language to demonstrate: https://www.lawinsider.com/clause/intellectual-property-ownership
Thank you for the suggestion and link. How would you handle this if the partnership is possibly outside the US?
That's definitely a question for your attorney.
Outside of that, ask for references they've worked with in the past and seek out contacts within those companies to get a feel for what you're getting in to.
Companies who have multiple satisfied clients generally aren't in the business of stealing IP.
I heard the opinion that the presence of an agreement lets you resolve/argue the breach later (if it happened), but doesn't actually prevent breach if the intent is malicious to begin with.
So definitely have some agreement, but I suggest you make it up collaboratively instead trying to force down on partner's throat. That way it won't leave a bitter taste in the mouth.
But first, as other mentioned, be sure you trust the person regardless of agreement. Or willing to risk, if you lack other options.
Some sort of NDA? But I haven't done it yet.
This comment was deleted 8 years ago