I was asked by a client to submit a proposal for a web-app he wants to built. This client is a startup with a relatively good traction so far (as it seems).
I have been asked to draft up a contract that prevents me from writing any of the code I write for them anywhere else. Up to this point I was drafting up contracts where I retain the exclusive rights to my source code but the client retains all rights as well (selling, modifying etc.)
So this sounds pretty bizarre to me:
What If I have another client with a similar (but not exactly same) project and he wants me to develop his application?
Of course I won't copy and paste from the previous project - but it sounds to me that I won't be able to use any of the insights I gained in the previous project and I won't be able to write this code again for any client.
So the question is - If I give all the rights of my source code to the client, does that mean I am never able to rewrite this code for someone else?
Note: I know most of you here are not lawyers and I'm not really looking for legal advice, rather just what these type of contracts really mean in terms of ownership to the source code, what's the usual thing to do etc.