Inoltre, IANAL - quindi consiglierei di consultare un avvocato che comprenda o si specializzi specificamente in problemi di proprietà intellettuale del software .
Ma penso che la risposta sia abbastanza semplice: 1. Non credo che sia necessario discutere con il cliente il termine "open source" (leggi prima di formulare un'opinione su tale affermazione) 2. Nel tuo contratto, tu chiaramente è necessario dichiarare quanto segue: a. Qualsiasi lavoro che crei per il cliente che TU SEI PROPRIO e ognuno può creare prodotti di lavoro derivati. Ciò significa che ognuno di voi può usarlo come meglio crede, incluso il contributo a un progetto open source (consultare ovviamente i requisiti IP del progetto open source). b. Mantenete la proprietà di qualsiasi prodotto di lavoro preesistente che siete abbastanza carini da includere gratuitamente e rilasciate una licenza senza restrizioni al vostro cliente per utilizzare quel codice per sempre, inclusa la creazione di opere derivate c.
Ti consigliamo inoltre di assicurarti che DAMN NON abbia mai firmato un contratto con una clausola di assegnazione di invenzioni che non sia estremamente limitata (non lo sono mai) o che potresti essere legalmente SOL. Si noti che ci sono diversi stati (ad esempio la California) che limitano (ma non eliminano) questo per legge, indipendentemente da ciò che dice il contratto. Ciò è previsto in un contratto di lavoro (ma i limiti possono essere negoziabili), ma IMHO non dovrebbe essere concesso per un contratto di appaltatore indipendente.
La tua più grande sfida sarà far loro accettare la comproprietà del codice sorgente. Ciò è in conflitto con la dottrina "Lavoro fatto per assunzione" che è un linguaggio specifico che viene molto spesso utilizzato nei contratti di sviluppo software quando si utilizzano appaltatori.
Se comprendono l'IP, potrebbero non essere d'accordo con questo, ma suppongo che quelli non siano il tipo di client con cui hai a che fare. Posso dirti con certezza che esiste almeno una società di software estremamente grande che lo fa per qualsiasi codice di consulenza / personalizzato scritto per qualsiasi cliente - e se non lo accettano, non lo faranno - periodo ( ma li riferiranno a un partner).
Se si possiede una comproprietà, si dovrebbe andare bene per quanto riguarda l'IP per contribuire a quel codice a un progetto open source, fatte salve le restrizioni imposte da quel progetto.
Ti consigliamo anche di essere selettivo in ciò che open source. Faresti un disservizio al tuo cliente se apri un codice specifico del settore di provenienza che sarebbe utile ai suoi concorrenti diretti. Il tuo cliente sarà anche meno felice se si renderà conto che l'intera app che ti hanno pagato per scrivere per loro è disponibile gratuitamente - e all'inizio potrebbe persino pensare di averla appena installata invece di scriverla da zero. Hai anche appena diminuito il loro valore percepito dei tuoi servizi.
Penso che questo copra le tue domande 1,2 e 4.
La domanda 3 potrebbe essere un problema - a seconda del modello di licenza del progetto open source da cui stai creando un lavoro derivato, il cliente può certamente pagarti per farlo, ma potrebbe non avere la proprietà completa o addirittura di quel codice per il modello di licenza del progetto open source. Questo non vuol dire che non puoi farlo - ma potresti volerlo coprire con una clausola aggiuntiva nel tuo contratto - ed eseguirlo da un avvocato IP - o farlo solo dopo che un client ti ha chiesto di farlo - e quindi potresti essere in grado di addebitare i costi di un avvocato che rivede un addendum al tuo contratto a copertura di questa situazione.