Przekaż kod źródłowy klientowi


21

Zrobiłem dla klienta kilka aplikacji na iPhone'a i poproszono mnie dzisiaj o przekazanie kodu źródłowego, aby mogli przeprowadzić konserwację, gdyby była to wymagana. Do tej pory nie omawiano żadnych problemów z kodem.

  • Czy istnieje jakaś „powszechna” praktyka w tym zakresie?

  • Ponadto, w jaki sposób powinno to wpłynąć na cenę?

Odpowiedzi:


33

Co mówi Twoja umowa z klientem?

Jeśli tak nie jest, a to jest praca najemna , to są właścicielami kodu źródłowego, chyba że umowa mówi inaczej.

W przyszłości prawnik może przejrzeć twoje umowy.

Nie jestem prawnikiem, nie jest to porada prawna i prawdopodobnie powinieneś skonsultować się z prawnikiem.

Wydaje się, że odpowiedź polega na tym, czy mieści się ono w zakresie, co uznaje się za pracę najemną. Na Bitlaw jest świetny artykuł na ten temat , a jak powiedziałem wcześniej, tylko prawnik będzie w stanie odpowiedzieć na twoje pytanie.


31
@Bold: Ogólnie rzecz biorąc, osoba płacąca za opracowanie oprogramowania na zamówienie jest właścicielem kodu źródłowego. Nie potrzeba hiperboli o posiadaniu własnego życia.
Cameron Skinner,

3
@Cameron Skinner, czy jesteś prawnikiem? czy porada prawna jest zgodna z prawem obowiązującym w kraju Egila? JESTEŚ PEWNY? dodając do tego, powiedziałbym, że jeśli tworzysz stronę internetową, dajesz kod, ponieważ ukrywanie kodu nie ma sensu, ten przypadek jest inny, kod jest renderowany przez kompilator i jest ukryty dla użytkownika. aby uruchomić aplikację na iPhone'a, nie potrzebujesz oryginalnego kodu, co jest całkowitą sprzecznością z programem serwera WWW, ponieważ kod i tak jest przezroczysty. może twierdzić, że podał kod, za który zapłacił klient, który jest renderowany przez kompilator, który zmienił się w aplikację na iPhone'a
Nazwa wyświetlana

10
+1 za uwzględnienie możliwości, zalecenie większej ostrożności przy przyszłych umowach, zalecenie prawnika i nie wykraczanie poza to .
David Thornley,

10
@Bold: Nie, nie jestem prawnikiem. To nie jest porada prawna. Jednak w wielu jurysdykcjach ogólny przypadek jest taki, że nabywca oprogramowania na zamówienie jest właścicielem całego produktu wyjściowego (źródło, skompilowany kod, grafika / grafika itp.), Chyba że w umowie jest coś konkretnego, co stanowi inaczej. PO nie określił kraju, w którym się znajduje, więc nie można udzielić konkretnej porady. OP poprosił o „powszechną praktykę”: Powiedziałem, czego doświadczyłem, pracując dla firmy, która zajmuje się rozwojem.
Cameron Skinner

2
@Kate Gregory: Nie, „praca najemna” jest specyficzną koncepcją prawną w USA, więc odpowiedź nie jest tautologią. Warto przeczytać artykuł w Wikipedii (nie mylić z poradami prawnymi). Mówi, że stosunek pracodawca-pracownik w USA to praca najemna, ale poza tym istnieją surowe wymagania i musi to być jawne. Nie polegaj na tym bez konsultacji z prawnikiem.
David Thornley,

9

Jest to kwestia, która powinna zostać przedyskutowana przed projektem i wyraźnie zapisana w umowie; jest to nie tylko kwestia prawna lub finansowa, ale także w pewien sposób wpływa na sposób realizacji projektu. Na przykład, gdy wiesz, że musisz przekazać źródło, jako dobry dostawca będziesz robić dobre komentarze i dokumentację, która będzie zgodna z najlepszymi praktykami. Możesz także uniknąć ponownego wykorzystywania własnego kodu, ponieważ kod ten może być tak sprytny, że po prostu nie chcesz go rozdawać.

Teraz jest już za późno. Zrezygnuj lub skontaktuj się z prawnikiem.


6

Dosyć typowe jest to, że niestandardowy kod dla konkretnego klienta powinien być dla niego swobodnie dostępny na żądanie. Kupują ci czas, aby coś dla nich wygenerować, i prawdopodobnie w pewnym momencie będą chcieli wszystkiego od pracy, za którą zapłacili. Istnieją oczywiście wyjątki.

Zwykle oprogramowanie napisane i „ogólnie” sprzedawane nie będzie mieć wolnego kodu źródłowego, ale może być dostępne za pewną cenę.

Jest to jeden z powodów, dla których oprogramowanie niestandardowe kosztuje o wiele więcej niż oprogramowanie „ogólnej sprzedaży” (nawet jeśli oprogramowanie „ogólnej sprzedaży” może mieć niewielką liczbę w obiegu).


5

Ogólna zasada jest taka, że ​​autor dzieła jest właścicielem praw autorskich: to, co tworzysz, jesteś właścicielem.

Istnieją wyjątki od tego. Najbardziej oczywista jest praca stworzona przez pracownika . Drugi wyjątek ( ustawa o prawie autorskim z 1976 r., 17 USC 201 ) dotyczy doktryny „praca na wynajem”, która mówi, że dzieło należy do osoby, która za nie zapłaciła. Ale aby WFH mogło się zdarzyć, muszą być spełnione wszystkie poniższe warunki:

  1. Prace zostały zamówione lub zlecone. Prawdziwe.
  2. Uzgodniono, że praca zostanie uznana za WFH. Fałszywe.
  3. Praca jest częścią zestawu dziewięciu specyficznych kategorii pracy: tłumaczenie, wkład w dzieło audiowizualne, wkład w dzieło zbiorowe (takie jak czasopismo), jako atlas, jako kompilacja, jako tekst instruktażowy, jako test, jako materiał odpowiedzi na test lub pracę uzupełniającą. Fałszywe.

Więc w tym przypadku, gdy nie jest wymagane do przekazania czegokolwiek.

(Niektóre teksty potwierdzające to są tutaj , tutaj , tutaj , tutaj i tutaj )


4

W mojej codziennej pracy przedsiębiorstwa nierzadko wymagają, aby nasz kod źródłowy był przekazywany do usługi depozytowej. Chodzi o to, że przedsiębiorstwo nie chce polegać na naszym oprogramowaniu bez możliwości naprawienia błędów - albo nasza firma przetrwa, abyśmy mogli je naprawić, albo usługa escrow wyda im kod.

Jednak jest to przypuszczalnie bardzo wyraźny punkt w umowie, uważam, że nie otrzymują kodu źródłowego, chyba że nasza firma zawiedzie, i spodziewam się, że jest to odzwierciedlone w dużej metce cenowej związanej z umową. Nie jestem pewien, jak to odnosi się do indywidualnego wykonawcy, scenariusz małej aplikacji.


Myślę, że jest to najczęstsza i najbezpieczniejsza praktyka stosowana do obsługi tego rodzaju wniosków.
respekt

2

Cóż, dla mnie kod źródłowy byłby wart rzeczywistej ceny * 5


1
Dlaczego * 5? Dlaczego nie * 4 lub * 6 .. A nawet * 10? Wydaje mi się to dość skomplikowane i nielogiczne.
JTS

Oczywiście, może to być * 4 lub 6 lub dowolna liczba, powinieneś widzieć to tylko jako moją polisę. Nie próbujemy sprzedawać kodu źródłowego, ale czasami gdy staje się to nieuniknione, taka jest cena
maz3tt 14.01.11

1
Wyjaśniać. To, co robisz, nie jest dobrą odpowiedzią. Czemu to robisz?
Dynamiczny

2

Miałem podobną sytuację. Kiedy aplikacja została ukończona, firma zdecydowała, że ​​chce kupić kod źródłowy i poprosić kogoś innego o przejęcie (pracowałem nad nim tylko w niepełnym wymiarze godzin). Złożyli to, co uważałem za odpowiednią ofertę. Myślałem, że założono, że zawsze będę nad tym pracował i żadne z nas nie wiedziało, że mają prawo do kodu.

Zdarza się, że zostali wykupieni (nie wspominając mi o tym), a kupujący nie chciał żadnych luźnych licencji na oprogramowanie. Nie jestem pewien, czy wiedziałbym, że poprosiłbym o więcej. Prawdopodobnie nie, ponieważ osoba, która skontaktowała mnie z tą firmą, znalazła również kilka innych projektów. Myślę, że dobra karma może pochodzić z ignorancji.

W twoim przypadku należy podać im kod i poprosić o wykorzystanie go jako odniesienia do pracy.


1

Po pierwsze, jak prawie wszyscy zauważyli, powinno to być częścią pierwotnej umowy. Upewnij się, że ten punkt jest adresem w przyszłości.

Po drugie, ile warta jest dobra wola tego klienta? Czy możesz spodziewać się, że w przyszłości uzyskasz od nich więcej firm? Czy możesz wykorzystać je jako punkt odniesienia dla przyszłych prac?

Wreszcie, ile szkody mogą ci wyrządzić? W wielu, jeśli nie w większości branżach, słowo szybko się rozchodzi. Czy złe przeczucia tego klienta będą miały negatywny wpływ na innych klientów?

Prawdopodobnie poszedłbym dalej i dałbym im to, prawdopodobnie prosząc o niewielką kwotę pieniędzy. Upewnij się, że wiedzą, że robisz to dla ich korzyści i że chcesz, aby ten punkt został rozwiązany w przyszłej pracy, którą wykonujesz.


1

Jeśli nie było to częścią umowy, żadna ze stron nie utrzymała prawdy.

Potrzebujemy tutaj więcej tego, co powiedziałeś, co powiedzieli w punkcie porozumienia. jeśli nie zgadzasz się, weź prawnika i nie pozwól, aby ludzie cię popychali.

odsuń się i powiedz: nie pracuję dla ciebie, sprzedaję oprogramowanie dostosowane do twoich potrzeb, poprosiłeś tylko o oprogramowanie, kod nie był omawiany, ponieważ zmodyfikowanie kodu w celu wyświetlenia go na zewnątrz będzie wymagało ode mnie dodatkowej opłaty .

powodzenia

Nie jestem prawnikiem, nie zastępuje to dyskusji prawników w twoim lokalnym stanie


2
Jeśli planujesz upublicznić oprogramowanie, z pewnością najpierw skontaktowałbym się z prawnikiem. Jeśli opublikujesz kod, a później dowiesz się, że firma jest uprawniona do praw do tego kodu, możesz być w świecie (niepotrzebnego) zranienia.
Wonko the Sane

@Wonko dziękuję, zmieniam, ponieważ wymaga dogłębnej porady prawnika.
Wyświetlana nazwa:

-1

Jeśli twoja umowa nie mówi nic o kodzie, nie masz obowiązku przekazania go. Biorąc pod uwagę, że jeśli twój klient jest nieszkodliwy, zrezygnowałeś z możliwości poprawiania programu w jego imieniu, a co za tym idzie, być może będziesz musiał poprawić go za usługę. Z drugiej strony, jeśli Twój klient użyje tego kodu do stworzenia własnej aplikacji i sprzedaży, nie będziesz mógł nic z tym zrobić. Nawet jeśli zmusisz ich do podpisania umowy, w której stwierdzą, że nie mogą ponownie użyć kodu, trudno będzie ci w sądzie udowodnić, że tak zrobili.

Jeśli cokolwiek, pytasz, dlaczego chcą źródła. Nic, co mogliby odpowiedzieć na to pytanie, nie uzasadniałoby, dlaczego potrzebują twojego kodu, skoro możesz po prostu zrobić to sam.


4
Utrzymanie ich aplikacji jest doskonałym powodem, aby chcieć kodu źródłowego.
Larry Coleman,

1
Sprzedaje oprogramowanie, a nie kod. Zwykle programiści utrzymują aplikację, a nie klienta. Jeśli klient chce kodu, powinien mówić o sprzedaży praw do swojego oprogramowania, a nie po prostu o przekazaniu kodu.
Neil

7
Nie jestem pewien, czy to jasne. Jeśli zapłacili mu za opracowanie oprogramowania (tj. Napisanie kodu), a nie tylko zakup od niego wyniku jako produktu, mogą mieć uzasadnione roszczenie do źródła.
Ben L

@ Ben, jeśli zapłacono mu za napisanie kodu, dlaczego miałby być nawet spór? Jakie pytanie zadaje, gdy pyta, w jaki sposób przekazać klientowi kod? Czy to pytanie techniczne? W tym momencie powinien znajdować się na stackexchange.com.
Neil

3
@ben nieprawda, jeśli płacisz pracownikowi, wówczas całe jego dzieło należy do ciebie, jednak on nie jest pracownikiem, jest kontrahentem. TO ROBI SWÓJ KOD, a umowa rozwija produkt. Jednocześnie pytaniem mogłoby być „czy mogę wydać kod na GNU?” co jeśli on zrobił? co by wtedy powiedziała druga strona? NIGDY NIE MÓWIŁY O TO, a kiedy pytasz o nowe rzeczy w Oprogramowaniu, musisz WIĘCEJ PŁACIĆ ZA TO.
Wyświetlana nazwa:

-2

To jest stary post, ale wciąż w dyskusji w dzisiejszym świecie.

Moim zdaniem, jeśli otrzymujesz wynagrodzenie za godzinę i jesteś kierowany przez klienta do zbudowania programu, powinieneś przekazać kod źródłowy.

Jeśli posiadasz komercyjne oprogramowanie i sprzedajesz je im w celu użycia… NIE, nie powinieneś przekazywać kodu źródłowego.

Bez względu na to, co jest legalne, czy nie ... ponieważ nie jestem prawnikiem. Właściwe jest przekazanie kodu źródłowego. Co jeśli coś ci się stanie? Twój klient nie jest przeziębiony. Ponadto, co jeśli twoje oprogramowanie wyrządza szkodę firmie? JESTEŚ ODPOWIEDZIALNY! Porzuć trzymanie kodu w nadziei, że otrzymasz zapłatę za przyszłą pracę. Po prostu wykonaj dobrą robotę za rozsądną cenę, a praca będzie kontynuowana.

I osobie, która pobiera 5X za kod źródłowy. Jako programista zakładam, że jesteś bardzo dobry z matematyki. Dlaczego ktokolwiek miałby płacić 5X za coś ... skoro może zapłacić 1x innej osobie tylko za odtworzenie tego, co zbudowałeś? To szybki sposób na zwolnienie z pracy. Nie możesz zjeść swojego kodu źródłowego ... więc przy takim myśleniu ... ty i twój kod źródłowy będziecie siedzieć na uboczu.


1
wydaje się, że nie oferuje to nic istotnego w porównaniu z punktami przedstawionymi i wyjaśnionymi w poprzednich 10 odpowiedziach. Poza tym ostatni akapit wydaje się być jedynie komentarzem do innej odpowiedzi tutaj, mylącym dla czytelników, którzy nie mogą zrozumieć, dlaczego tam jest
gnat
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.