Zawsze rozwiązałem ten problem, mając osobisty projekt, w którym umieszczam wszystkie moje szalone pomysły i ogólne rzeczy, a następnie udzielam licencji na licencji BSD, która pozwala ludziom ponownie używać, zmieniać, rebrandować, zamykać i pobierać pieniądze za to. W ten sposób zachowuję prawa autorskie, ale mogę ponownie użyć kodu, tak jak mi się podoba dla tego i tego pracodawcy, aby zachować prawa autorskie do oryginału, ale pracodawca zachowuje prawa autorskie do ponownie użytej instancji. Wydaje mi się, że gdyby mieli z tym problem, to po prostu musieliby mi zapłacić za przepisanie go na czas pracy, co z ich punktu widzenia nie ma sensu. Co więcej, firmy cały czas używają kodu BSD, ponieważ idea BSD polega na umożliwieniu ludziom i firmom robienia z nim wszystkiego, co tylko chcą, w tym rebrandingu i sprzedaży.
Wtedy oczywiście, jeśli do kodu w miejscu pracy zostaną dodane dodatkowe elementy, nie będę mógł go użyć w innym miejscu bez przepisywania go w swoim własnym czasie ... co jest w porządku, ponieważ ogólne elementy są zwykle stosunkowo małe, chyba że jest to pomysł, który i tak wymaga znacznego wysiłku w czasie wolnym.
Pisanie go w swoim własnym czasie i licencjonowanie kodu w ramach licencji typu BSD powinno pozwolić ci na utrzymanie biblioteki dla siebie, z której możesz korzystać praktycznie gdziekolwiek chcesz.
Teraz, jeśli chodzi o umowy, które twierdzą, że pochłaniają wszystkie prawa autorskie do twoich osobistych projektów ... to prawdopodobnie różni się radykalnie między jurysdykcjami, ale przynajmniej w niektórych zachodnich jurysdykcjach rozumiem, że umowa nie może tego zrobić. Umowa może powiedzieć, że tak, ale nie byłaby egzekwowana w sądzie, ponieważ prawa autorskie muszą być jawnie przeniesione, w przeciwieństwie do „cała twoja baza należy do nas” - rodzaj umowy, która nigdy nie zostałaby podtrzymana (w jurysdykcja, z której i tak pochodzę). Istnieje szereg ograniczeń dotyczących tego, co można utrzymać w sądzie w drodze umowy, dlatego zazwyczaj (i mam nadzieję) zobaczysz klauzulę, która mówi, że jeśli jedna część umowy nie działa zgodnie z prawem , pozostała część umowy nadal obowiązuje.
Ale jak zawsze skonsultuj się z prawnikiem, zanim zinterpretujesz to jako dokładną poradę prawną. Nigdy nie zostałem postawiony przed sądem w tej sprawie, więc nie znam żadnej z tych rzeczy jako faktów prawniczych. :)