W różnych miejscach pracy zawsze pisałem kod, który sprawił, że pomyślałem „byłoby to naprawdę przydatne w innych sytuacjach”. Rzeczywiście celowo piszę kod, nawet jeśli zajmuje mi to więcej czasu, co, jak wiem, pomoże mi w przyszłości (np. SubString()
Funkcje niestandardowe ). Dobrym kandydatem do tych fragmentów są różne klasy „Pomocników”.
Te fragmenty, jestem pewien, prawdopodobnie można je znaleźć gdzie indziej w Internecie, ale chodzi o to, że je napisałem i użyję ich później w innych pracach lub do osobistych projektów. Obecnie nie prowadzę osobistej biblioteki kodów, ale pytanie brzmi: czy błędem jest zabranie kodu, który stworzyłeś w pracy i ponowne wykorzystanie go ( a ) do osobistych projektów i ( b ) w innych pracach?
Odpowiedzi:
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. :)
źródło
To zależy od umowy o pracę. Obecnie najbardziej prawdopodobną odpowiedzią jest (a) tak, to jest złe i (b) tak, to jest naprawdę złe. Prawie wszystkie umowy oferowane dziś deweloperom zawierają postanowienia mówiące, że każdy kod, który piszesz podczas pracy w firmie (zarówno w godzinach pracy, jak i poza nią) jest ich własnością i automatycznie przenosisz na nie swoje prawa autorskie. Chyba że specjalnie negocjujesz z tym, prawdopodobnie dotyczy to ciebie.
Jednak jak zawsze:
Nie wierz nam! Skonsultuj się z prawnikiem przed zrobieniem czegoś potencjalnie niebezpiecznego.
źródło
Po prostu przepisz kod w razie potrzeby . Całkowicie unika tego problemu ze względu na kilka minut kodowania.
Są szanse, że nauczysz się więcej i napiszesz coś lepszego. Przepisywanie kodu również ogólnie czyni go bardziej eleganckim.
źródło
x()
jest tak konkretny i użyteczny, że nie ma aż tak wielu sposobów na napisanie go? W takim przypadku, w jaki sposób można go rozdzielić, jeśli implementacja jest tak podobna?W zależności od warunków zatrudnienia może tak być. Skonsultuj się ze swoim przełożonym, działem zasobów ludzkich, działem prawnym i / lub działem etyki, aby ustalić, co jest własnością Twojej firmy i tego, co jest Twoją własnością, a także jaki jest proces wnioskowania o uzyskanie praw do użytkowania lub własności rzeczy które produkujesz w pracy.
Prawie w każdym miejscu, w którym pracowałem, rzeczy, które biorą udział w projektach, są własnością firmy, ale szukałem i otrzymałem pozwolenie na wydawanie rzeczy na osobiste projekty na podstawie indywidualnych przypadków, co zwykle wymagało wyjaśnienia, czego chcę zrobić z tym i jak nie byłoby szkodliwe dla organizacji, aby pozwolić jej odejść.
źródło
Odniosłem pewien sukces (nie całkowity sukces) w przekonaniu moich pracodawców do wydania na licencji open source części mojego kodu napisanego podczas pracy dla nich. Przeważnie kod napisałem w swoim własnym czasie, ale czasem nie. Cały kod nie jest specyficzny dla żadnej branży.
Zacząłem od napisania kilku bibliotek, kiedy byłem bezrobotny, a następnie wydałem je na licencji MIT. Następnie podczas procesu rekrutacji przy późniejszych pracach wspomniałem o tym i mówiłem, że użyję tego kodu, aby im pomóc, jeśli to możliwe, ale czy mieliby coś przeciwko, gdyby dodali rzeczy, które napisałem podczas pracy dla nich, ale tylko rzeczy, które nie były specyficzne dla ich działalności i tylko za ich zgodą.
Wyniki były różne, ale z czasem mogłem rozbudować swoją bibliotekę. Zdarzały się przypadki, w których posiadanie biblioteki przyspieszyło rozwój moich pracodawców.
źródło
Dziwi mnie, że najczęściej głosowaną odpowiedzią jest „tak”. Jako programista odpowiedź zawsze brzmiała „absolutnie nie”, z wyjątkiem sytuacji, w których kod jest albo:
Ktoś zapłacił ci za napisanie kodu. Z wyjątkiem innego porozumienia i porozumienia, co jest w porządku, nie jest właściwe, aby ktoś inny mógł czerpać z tego BEZPOŚREDNIE korzyści.
Teraz - słowo BEZPOŚREDNIE. Jeśli osiągniesz koniec projektu i nauczyłeś się czegoś ciekawego i stworzyłeś z niego coś użytecznego, co nie jest bezpośrednio związane z własnością intelektualną klienta, poświęć trochę czasu i stwórz sobie bibliotekę. Jeszcze lepiej - ROZPOCZNIJ Z NIM OTWARTY PROJEKT ŹRÓDŁOWY, aby wszyscy byli dla niego bogatsi. Myślę, że jest absolutnie w 100% etycznie czysty jak śnieg na jeździe i rzeczywiście zrobiłem to sam.
W krótkim okresie ponowne użycie kodu, który zapłacono za napisanie dla kogoś innego, spowoduje prawne problemy. Na dłuższą metę spowoduje to bóle głowy postaci.
źródło
Jestem pewien, że jest to kwestia prawna w zależności od tego, gdzie mieszkasz / pracujesz i co zostało uzgodnione / twoja umowa.
Jeśli nauczę się czegoś na własną rękę, we własnym czasie, wszystkie wydatki poniesione przeze mnie (komputer, dostęp do Internetu, oprogramowanie itp.), Czy nie chcieliby, żebym wykorzystał to w mojej pracy? Znajdujesz wyrażenie regularne dla osobistego projektu i decydujesz się wysłać go e-mailem na swoje konto służbowe, ponieważ prawdopodobnie możesz go użyć. Trochę głupio byłoby spędzić czas w towarzystwie udając, że ponownie go szuka w Internecie. Oczywiście staramy się ulepszać nasze rzemiosło, tego oczekuje się od programistów, bla, bla, bla, ale co, jeśli byłby w obszarze poza programowaniem, a nawet IT? Mogę się powstrzymać, jeśli chcą zagrać w tę grę.
Firma może starać się ściśle trzymać kod, który produkuję. Budowanie relacji jest po prostu słabym fundamentem. Jeśli tak bardzo im zależy na kilku liniach kodu, nie wyobrażam sobie, w jakim stopniu zdominują mój czas; co jest warte dużo więcej.
źródło
W przeszłości miałem te same myśli. Niestety, myślę, że wszystko, co piszesz bezpośrednio na temat swojej pracy, technicznie byłoby chronione prawem autorskim przez twojego pracodawcę. Musisz poprosić o zgodę na ponowne użycie tego kodu w innych pracach niezwiązanych z firmą.
Z drugiej strony, jeśli pisałeś kod w wolnym czasie dla jednego ze swoich projektów, możesz chronić swój kod jakimś rodzajem praw autorskich, a następnie zaoferować przekazanie tego kodu pracodawcy.
Tak czy inaczej, musi być jasna komunikacja w tej sprawie.
Oczywiście IANAL.
źródło
Twoje pytanie jest bardzo podobne do tego „ Open Source - Czy legalne jest odtwarzanie / open source programu, który wcześniej stworzyłeś dla innej firmy? ”
Powiedziałbym, że masz chwiejną podstawę prawną, ponieważ firmy, dla których pracowałeś, prawdopodobnie posiadają kod, który dla nich napisałeś. Lepiej byłoby kodować procedury od zera, ale nawet wtedy mogą pojawić się pytania, czy nadal masz kopie innego kodu.
[Nie jestem prawnikiem, więc nie oczekuj, że moja rada pomoże ci w sądzie.]
źródło
Powiedziałbym, że tych ogólnych metod / funkcji najlepiej nie zachowywać między projektami. Przez większość czasu możesz użyć doładowania lub dowolnego innego języka, aby to zrobić. Najczęściej są one lepiej napisane niż twoje.
Dobrym pomysłem jest mieć dla nich zestaw testów jednostkowych i użyć ich do przetestowania kata kodu.
źródło
Zadania kierują się do Azji, więc przepisz kod, dopóki pociąg sos nadal istnieje. Jeśli otrzymujesz wynagrodzenie za napisanie kodu, napisz go lub wklej i udawaj, że przepisałeś go podczas zabawy. Albo jeszcze lepiej: pracuj z domu i zapłać bardziej wykwalifikowanemu, inteligentniejszemu i, co najważniejsze, znacznie tańszemu programistowi z Azji, aby napisał kod dla ciebie i pomieszał różnicę. Następnie możesz wyjść i cieszyć się światem, zanim nas korporacyjni Bogowie nas porzucą, a my wszyscy jesteśmy bez środków do życia, pracując w fabrykach chipów, wytwarzając chipy za 2 centy za godzinę dla bogatych chińskich i indyjskich konsumentów iPhone'ów.
źródło
Wiem, że to stare pytanie, ale ktoś go podniósł i uważam, że dobrym pomysłem byłoby dodanie odniesienia do bardzo smutnej historii Siergieja Aleynikowa . Zanim zabierzesz kod z pracy, przeczytaj, jak to zrujnowało mu życie i wsadziło go do więzienia .
źródło