Pytanie:
Profesor doradca prosi o kod źródłowy mojej pracy doktorskiej
W_H
2016-10-31 08:59:25 UTC
view on stackexchange narkive permalink

Jestem doktorantem i napisałem program komputerowy do pracy doktorskiej. Niedawno moja profesor adiunkt dostała stypendium i chce w ramach stypendium wykorzystać mój program komputerowy i prosi mnie o kod źródłowy komputera. Skończę studia w maju przyszłego roku i planuję wykorzystać ten program na innych moich studiach. Dlatego nie chcę jej udostępniać kodu. Nie wspomniała o przyszłej współpracy, a ja również nie będę z nią współpracować z powodu ogromnych różnic w naszych zainteresowaniach badawczych i perspektywach.

Więc jak mogę jej odmówić?

Uwaga: Nie byłem dla niej RA, kiedy pisałem program komputerowy, ale w tym semestrze dostała stypendium i ustawiła mnie jako RA.

Czy udostępnienie jej swojego kodu uniemożliwia Ci wykorzystanie go w innych badaniach? Nie rozumiem, dlaczego udostępnianie kodu jest tutaj problemem. Projekty badawcze z zakresu CS i Computer Engineering często wykorzystują kod innych grup, nie naruszając wzajemnych badań.
To wspaniale, że ktoś chce używać twojego oprogramowania! Gratulacje, możesz nawet znaleźć kilka cytatów z tego! Możesz nawet umieścić to na githubie lub czymś w tym rodzaju, aby ona też mogła to zacytować, a inni mogą skorzystać z twojego programu.
Nie jestem w CS ani pokrewnych domenach. Jestem neurobiologiem, cytowanie kodu komputerowego jest dla mnie bez znaczenia i nieinteresujące. Szczerze mówiąc, jednym z powodów, dla których nie chcę się z nią dzielić kodem, jest brak wsparcia w moich badaniach.
_w tym semestrze dostała stypendium i ustawiła mnie na RA_ Jesteś obecnie jej RA. Dlaczego mówisz _ z powodu jej braku wsparcia w moich badaniach? ”?
Rozumiem, że z jakiegoś powodu jesteś zdenerwowany na swojego doradcę. Ale możesz wiele stracić, odmawiając udostępnienia swojego kodu (zrażając doradcę, nie otrzymując od niej dobrych listów polecających po ukończeniu studiów itp.). Z drugiej strony, nie przychodzi mi do głowy żadna rzecz, którą zyskasz odmawiając udostępnienia.
Jeśli napisałeś program swoich badań doktorskich, czy nie należy on do twojej instytucji?
Nie jestem tego pewien, ale czy twoja praca doktorska nie powinna być nieco nowatorska i oryginalna? A co, jeśli zostanie to skompromitowane przez „wyciek” badań PO, zanim będzie mógł je opublikować pod swoim nazwiskiem? Moja rada: przekaż kod, ale upewnij się, że otrzymasz kredyt wszędzie tam, gdzie jest używany.
@W_H Ogólnie rzecz biorąc, nie cytujesz kodu komputerowego, cytujesz artykuły, które jako pierwsze wprowadziły lub opisały kod komputerowy. Artykuł cytowany w sekcji metod wygląda dokładnie tak samo w twoim CV lub indeksie h (i dla komisji ds. Kadencji) jak artykuł cytowany w sekcji wniosków.
@R.M. chociaż papier jest z pewnością preferowany, możesz również cytować kod - i powinieneś to zrobić, jeśli jeszcze go nie ma.
([Odniesienie do dostępności kodu źródłowego używanego w artykułach z badań informatycznych] (http://academia.stackexchange.com/q/29137/452))
Mój doradca jest znacznie bardziej doświadczony, a więc znacznie bardziej wykwalifikowanym badaczem niż ja. Myśl, że mój doradca przyjmie jakąś szorstką koncepcję, o której z nim rozmawiałem, i sam poświęci wiele wysiłku, aby przekształcić własne badania (które zostaną opublikowane tylko pod jego nazwiskiem), byłaby dla mnie przerażająca. Jest bardzo mało prawdopodobne, aby ktoś, kto zmoczył stopy podczas badań, mógł konkurować z kimś, kto już jest uznanym badaczem. Nie znam ogólnej etyki dzielenia się kodem, ale nie chciałbym, żeby ktoś nam doradzał, próbując konkurować w ten sposób ze swoimi uczniami.
Co zrobiłaby z kodem źródłowym? Proponuję skontaktować się z biurem Ombuds w swoim instytucie. Powinni być w stanie lepiej zrozumieć dostępne opcje i, jeśli to konieczne, pomóc rozwiązać problem z doradcą.
@JimmyB: Jeśli przekazanie informacji od doktoranta do doradcy kandydata zostanie uznane za „wyciek”, coś wydaje się zasadniczo nie w porządku z projektem doktorskim. (Osobiście posunąłbym się nawet do stwierdzenia, że ​​nie ma w pobliżu „wycieku”, o ile informacje są przekazywane tylko między ludźmi na tej samej uczelni, ale z tego, co czytałem na tej stronie przez lata, nie znam wszystkich miejsc czy na początku współpracują).
Jeśli ten kod był ważną częścią Twoich badań doktorskich, najlepiej byłoby, gdybyś udostępnił go wszystkim (open source lub w podobny sposób). Brak udostępnienia informacji nawet przełożonemu sprawia, że ​​przejrzystość badań jest raczej wątpliwa. Nie kwestionuję twoich zamiarów, możesz mieć wszystkie powody, żeby nie współpracować z przełożonym, ale generalnie trzymanie wszystkiego dla siebie nie jest dobrą polityką.
W moim podpolu, jeśli kod nie jest udostępniany przynajmniej wewnętrznym recenzentom i wszystkim innym w ramach określonej współpracy, artykuł po prostu nie jest publikowany. Jestem bardzo zdumiony, że jesteś / byłeś w stanie złożyć pracę magisterską, która wykorzystuje nowy / własny kod bez udostępniania jej swojemu przełożonemu. Jeśli naprawdę chcesz to zrobić, upewnij się, że stoisz na solidnym prawnie gruncie.
@Marianne013: Opierając się na pytaniu, właściwie nie ma zbyt wielu informacji na temat tego, czym właściwie jest kod. * Czy * kod jest „wynikiem” lub „badaniem”, czy też jest to tylko narzędzie upraszczające badanie, czy tylko demonstracja rzeczywistych badań? Przychodzi mi do głowy wiele przypadków, w których „nowy / własny kod” został utworzony jedynie do celów wewnętrznej demonstracji i nigdy nie był w stanie do udostępnienia (np. W zależności od specyfiki konfiguracji systemu PO). Jeśli tak jest, PO powinien mieć jeszcze mniej powodów, by obawiać się, że zostanie wykorzystany na podstawie kodu.
Jeśli kod był znaczącą częścią twojej rozprawy, powinien być częścią twojej rozprawy. Chyba nie rozumiem, w jaki sposób twoja rozprawa mogłaby zostać przyjęta, gdyby nie było gdzieś umieszczonego kodu źródłowego. Jeśli to tylko kod, który napisałeś, aby pomóc Ci coś zrobić lub wyjaśnić, być może będziesz musiał rozważyć zasady dotyczące własności intelektualnej w Twojej szkole. Na ogół są właścicielami, więc możesz nie mieć wyboru.
Jeśli chodzi tylko o uznanie swojej pracy, najpierw udostępnij kod na całym świecie. Następnie podaj jej link. W innym przypadku nie wiem, jak postępować.
Pójdę dalej niż inni komentatorzy: jeśli nie udostępniasz swojego kodu źródłowego, to nie są badania, to anegdota. Nie można go opublikować i nie należy go używać w żadnej z Twoich publikacji. * Zła nauka * nie pozwala na publikowanie kodu badawczego.
Możesz przyjrzeć się warunkom otrzymania stypendium naukowego - może się zdarzyć, że napisany przez Ciebie kod nie jest Twój, ale uniwersytety.
@KonradRudolph: Jak wskazałem w [moim drugim komentarzu] (http://academia.stackexchange.com/questions/79101#comment194597_79101), myślę, że Twój komentarz zawiera wiele założeń, które w żaden sposób nie są oparte na tym, co faktycznie wiemy pytanie. Jeśli w artykule przedstawiono algorytm, koncepcję interakcji lub inną dającą się programować rzecz, a algorytm ten jest jednoznacznie zdefiniowany w artykule lub materiałach dodatkowych, to jest to w pełni wystarczające, aby badanie potraktować poważnie. W żaden sposób nie sugeruje się, że konkretna implementacja samego algorytmu lub samej koncepcji * musi * być dostępna, ...
... a tym bardziej jakikolwiek otaczający kod, taki jak interfejs użytkownika do uruchamiania algorytmu / koncepcji, kod do zapisywania i ładowania przypadków testowych oraz inne narzędzia peryferyjne, które mogły być przydatne dla OP (a być może nawet dla innych code), ale po prostu nie są one częścią wkładu naukowego.
@O.R.Mapper Zasadniczo się nie zgadzam. Wydaje się, że zawężasz definicję wyniku badań jako rozpowszechniania wiedzy. Jednak bardziej interesuje mnie * skumulowany wzrost * wiedzy. Odmawiając udostępnienia użytecznych implementacji algorytmów, sprawiasz, że inni ludzie tracą czas na przyziemną reimplementację, zmniejszając w ten sposób ich czas wykonywania pożytecznej pracy. Być może nadal przyczyniałeś się do rozwoju nauki, ale zrobiłeś to ewidentnie nieskutecznie, bez dobrego powodu.
@KonradRudolph: Osobiście jestem zagorzałym fanem i współtwórcą projektów open source i lubię dostarczać mniej więcej wszystko, co robię do ponownego wykorzystania w Internecie, kiedy mam na to pozwolenie. Niezależnie od tego, uważam za całkowicie nieetyczne odrzucenie artykułu, który jasno przedstawia jego ustalenia i wszystko, co prowadzi do tych ustaleń, tylko z tego powodu, że autor po prostu dostarcza informacji, jak przebudować wszystkie narzędzia użyte zamiast narzędzi. sami. Takie postępowanie jest ogromną wygodą i dobrą praktyką, ale * wymagające * odciągałoby uwagę zbytnio od wyników ...
... w mojej opinii. A co z narzędziem, które zostało zbudowane w taki sposób, że nie można go zintegrować z moim kodem badawczym? Czy liczy się to jako „narzędzia opublikowane” czy „narzędzia nieopublikowane”? A co z opublikowanym narzędziem, które działa tylko w mocno dostosowanym systemie operacyjnym, którego nie można opublikować? Może potrzebujemy oddzielnego kanału publikacji dla materiałów / narzędzi badawczych (w przeciwieństwie do wyników), który przyczynia się do tego, jak oceniani są badacze, ale nie widzę sensu w łączeniu tych dwóch. ...
... Wreszcie istnieje [wiele dobrych powodów, dla których kod badawczy może nie być gotowy do ponownej dystrybucji] (http://academia.stackexchange.com/questions/37370#42806). Jest to jednak trochę nie na temat - moim celem w tym pytaniu było raczej to, że nie mamy wystarczających informacji, aby ocenić, jak kluczowe dla ich badań jest rozpowszechnianie ich kodeksu, niezależnie od wskazania im ogólnie dobrych praktyk pomagając innym badaczom, zapewniając wygodne narzędzia.
jeśli zdecydujesz się udostępnić, rozważ zrobienie tego z wolną licencją - GPL v3 +
A więc jesteś badaczem, który nie umożliwia odtworzenia swoich badań poprzez dobrowolne wstrzymanie części narzędzi do gromadzenia / analizy danych? Niestety, to prawdopodobnie stawia Cię na dobrej drodze do zatrudnienia w systemie amerykańskim ... :-(
Czy ta osoba jest w twoim komitecie?
Czytając niektóre odpowiedzi na to pytanie, pojawia się inne powiązane pytanie: co by było, gdybyś uważał, że twój kod przyniesie społeczeństwu więcej szkody niż pożytku?Na przykład.otwarta metoda skutecznego obalenia gospodarki, powiedzmy, armiami twitter-botów ... czy udostępnianie tego kodu byłoby niemoralne?
Jedenaście odpowiedzi:
#1
+235
Raghu Parthasarathy
2016-10-31 09:49:53 UTC
view on stackexchange narkive permalink

Jednym z powodów, dla których nauka odniosła taki sukces, jest to, że naukowcy traktują wiedzę i narzędzia jako dobra publiczne. Nie gromadzimy wiedzy, ale raczej piszemy prace, dzielimy się technikami, proponujemy sugestie itp. Z pewnością są przypadki, w których dzielenie się nie jest korzystne, ale wydaje się, że tutaj nie mają one zastosowania. Więc oczywiście powinieneś udostępnić swój program komputerowy! Powinieneś podzielić się nim z ludźmi, których lubisz, ludźmi, których nie lubisz i ludźmi, których nawet nie znasz.

Komentarze nie służą do rozszerzonej dyskusji; ta rozmowa została [przeniesiona do czatu] (http://chat.stackexchange.com/rooms/48049/discussion-on-answer-by-raghu-parthasarathy-advisor-professor-asks-for-my-disser).
#2
+87
Weckar E.
2016-10-31 15:45:00 UTC
view on stackexchange narkive permalink

Idealnie byłoby, gdybyś udostępnił swój program publicznie.

Zapewnienie innym dostępu do tego kodu nie przeszkadza Ci w jego używaniu i pomoże Ci zbudować reputację w Twojej dziedzinie.

Nie tylko to, ale udostępniając je publicznie, a nie tylko Twojemu doradcy, nie ma ryzyka, że ​​uznają Twoją pracę za własną - co, jak przypuszczam, jest Twoim głównym zmartwieniem w odniesieniu do obecnego bilansu sił w Twoim związku.

Jeśli opublikujesz go online z licencją wolnego oprogramowania (np. GNU GPL, licencja oprogramowania Apache itp., Zobacz [tę stronę] (https://www.gnu.org/licenses/license-list.html), aby uzyskać listę i komentarze ) - jest mało prawdopodobne, aby mógł zostać niewłaściwie wykorzystany do przywłaszczenia przez Twojego Profesora.
@einpoklum: istnieje duża różnica między licencją typu copyleft (jak GPL), która wymaga, aby kopie pozostały open source, a licencjami MIT lub BSD, które pozwalają ludziom używać kodu w ramach projektu o zamkniętym kodzie źródłowym. Wybierz, co chcesz, w zależności od tego, jak chcesz, aby ludzie mogli używać Twojego kodu.
@PeterCordes: Masz rację, ale - kod nadal nie nadawałby się do użytku jako coś, co strona trzecia może przedłożyć jako własną pracę do jakiejś komisji grantowej lub innego organu finansującego.
@einpoklum: Ach tak, tego rodzaju nadużycie. Myślę, że nawet gdybyś udostępnił swój kod jako domenę publiczną, to nadal byłoby plagiatem, gdyby ktoś inny przyznał się do tego. („Spójrz na tę sztukę, którą napisałem, nazywa się * MacBeth *”). Różnica polega na tym, że możesz podjąć kroki prawne bezpośrednio, ponieważ naruszaliby również Twoje prawa autorskie, a także popełniliby plagiat / oszustwo (przeciwko komisji grantowej, a nie przeciwko tobie).
#3
+76
R.M.
2016-10-31 20:17:14 UTC
view on stackexchange narkive permalink

Jako osoba zajmująca się informatyką naukową zgadzam się z tym, co mówią inni, i prawdopodobnie poszedłbym o krok dalej. Ujmując to hiperbolicznie:

Odrzucanie rozsądnych próśb o kod użyty w opublikowanym artykule jest niewłaściwym postępowaniem etycznym.

Jeśli polegałeś na wynikach programu w celu uzyskania wyników naukowych, to program jest częścią "materiałów" twojego referatu i obowiązują te same wytyczne dotyczące udostępniania innych materiałów wykorzystywanych do tworzenia referatów. Podobnie jak jesteś etycznie zobowiązany do rozsądnego udostępnienia (niekomercyjnie dostępnych) plazmidów, linii komórkowych, szczepów myszy itp., Które wygenerowałeś dla swoich opublikowanych badań, tak samo jesteś zobowiązany do udostępnienia (niekomercyjnie dostępnego) kod, który wygenerowałeś dla swoich opublikowanych badań.

Jest to jeszcze bardziej odpowiednie do kodu, ponieważ kod to nie tylko „materiał”, ale także „metoda”. Chociaż z pewnością powinieneś opisać algorytm w tekście, zazwyczaj istnieje duża liczba szczegółów, które są widoczne tylko po zbadaniu kodu. Jest mało prawdopodobne, aby badacz był w stanie odpowiednio podsumować wyniki z ponownej implementacji algorytmu z samej sekcji metod. Jest to szczególnie prawdziwe w przypadku (mało prawdopodobnego?) Zdarzenia, w którym występuje błąd. Niewydanie kodu jest równoznaczne z powiedzeniem „Oczyściliśmy białko” lub „Zmierzyliśmy X” w sekcji metod: brak szczegółów potrzebnych komuś do odpowiedniego odtworzenia wyników.

Oczywiście, rozsądnie „jest w wymaganiach wydania, ale„ rozsądne ”odmowy dotyczące materiałów laboratoryjnych mokrych mają tendencję do uwzględniania dostępności i czasu: obecnie nie ma ich wystarczająco dużo do udostępnienia lub wysłanie ich do Ciebie byłoby dużym obciążeniem dla laboratorium. Zwykle nie dotyczą one oprogramowania - możesz wykonać dowolną liczbę kopii i jest to tanie.

„Rozsądne” odmowy dotyczące oprogramowania prowadzą do problemów z licencjami. Na przykład, jeśli nie masz prawnych możliwości rozpowszechniania kodu ze względu na używane biblioteki. Lub jeśli Twoja instytucja sprzedaje kod w celach komercyjnych, może być konieczne zażądanie od innych, aby uzyskali oprogramowanie w sposób komercyjny.

W Twoim przypadku nie wygląda to tak, jakbyś miał powód związany z wysiłkiem lub licencją za odmowę. Nie brzmi to nawet tak, jakbyś odmawiał ze względu na potencjalną konkurencję („ogromna różnica w naszych zainteresowaniach i perspektywach badawczych”). Zamiast tego wygląda na to, że bardziej odmawiasz, ponieważ żywisz urazę. To nie jest dobrze. Z pewnością zdarza się, że inni postępują w ten sposób, ale myślę, że większość ludzi zgodzi się, że odrzucanie rozsądnych próśb o udostępnienie metod i materiałów z powodu urazy jest nieetyczne.

Mam nadzieję, że teraz dadzą mi kody do brytyjskiego modelu pogody Met Office, ponieważ ktoś na pewno coś z nim opublikował. Jeśli jest to wykroczenie akademickie ...
I tyle artykułów na temat symulacji z ANSYS / Fluent ...
Wygląda na to, że masz to, ale twoja odpowiedź tak naprawdę nie wyjaśnia, dlaczego kod źródłowy opracowany przez OP musi zostać opublikowany, ale potencjalnie zastrzeżone narzędzia używane przez OP (np. MATLAB) nie.
Nie musi wypuszczać MATLAB-a, ponieważ MATLAB jest już dostępny dla wszystkich naukowców (i innych). (to samo dla innych narzędzi)
Zgadzam się z Twoją odpowiedzią, ale w przypadku pierwotnego pytania nie ma publikacji do natychmiastowego cytowania.
Z całym szacunkiem, ale kategorycznie nie zgadzam się ze stwierdzeniem, że „Jeśli polegałeś na wynikach programu w celu uzyskania wyników naukowych, to ten program jest częścią„ materiałów ”twojego artykułu”. Na tej podstawie powinienem rościć sobie prawo własności do kodu źródłowego Microsoft Word dla tego wspaniałego przepisu na chili, który napisałem dziesięć lat temu.
@DavidW Tylko dlatego, że są to materiały, nie oznacza, że ​​masz do nich wszystkie prawa. Na przykład, jeśli przeprowadziłeś badanie naukowe na temat Viagry, to Viagra byłaby materiałem na twój artykuł. Nie oznacza to, że możesz rościć sobie prawo własności do Viagry. Większość odpowiedzi dotyczy tylko kodu, który sam wygenerowałeś. Jak wspomina David Balažic, jeśli kod (lub inne materiały) zostały uzyskane za pośrednictwem osób trzecich, możesz skierować osoby, które chcą udać się do tych samych stron trzecich.
@VladimirF Gdybyś napisał do nich z prawdziwym naukowym dochodzeniem opartym na czymś, co pojawiło się w opublikowanym badaniu, wówczas Met Office by ci pomógł. Oczywiście nie przekazaliby pełnego kodu źródłowego swojego modelu komuś, kto chce go wykorzystać komercyjnie lub uniknąć płacenia im za prognozy pogody.
„Mówiąc hiperbolicznie” - Nie. To * nie * jest hiperbola. To dosłowna prawda. I na szczęście instytucje coraz częściej zajmują się tym problemem (chociaż postęp jest powolny).
@VladimirF Met Office świadczy usługi finansowane, a nie publikuje doktoratów. rozprawy lub prace naukowe wszelkiego rodzaju. Twoja analogia nie ma sensu.
@EJP Z pewnością żartujesz https://scholar.google.co.uk/scholar?q=met+office+journal+of+atmospheric+sciences+unified+model&hl=cs&as_sdt=0&as_vis=1&oi=scholart&sa=X&ved=0ahb7EwjqQAxUKh , jwg prawdopodobnie ma rację, a badania MetOffice mogą w niektórych przypadkach pomóc. Ale nie mogą rozdać kodu, którego użyli do swoich badań.
@VladimirF FYI http://earthscience.stackexchange.com/questions/6552/paper-result-validation-and-the-scientific-method-in-earth-science
#4
+72
Dylan Richard Muir
2016-10-31 15:42:33 UTC
view on stackexchange narkive permalink

Jeśli napisałeś kod w ramach swojej pracy jako doktorant i byłeś w ogóle uważany za pracownika instytucji jako doktoranta, to instytucja może posiadać prawa własności intelektualnej do napisanego przez Ciebie kodu („praca do wynajęcia ”). Zależy to oczywiście od prawa kraju, w którym znajduje się Twoja instytucja.

Jeśli napisałeś kod, który jest niezbędny do dalszej pracy twojego przełożonego i który odzwierciedla ważny wkład intelektualny, to albo (a) należy go zacytować, jeśli istnieje publikacja opisująca kod; lub (b) powinieneś być autorem publikacji korzystających z kodu.

W każdym przypadku masz moralną (i prawdopodobnie prawną) odpowiedzialność za udostępnienie kodu; Twój przełożony ponosi wzajemną odpowiedzialność za właściwe uznanie Twojego wkładu. Najlepiej byłoby, gdybyś opublikował swoją metodę (np. Frontiers Neuroinformatics), a następnie będzie można ją zacytować w pracy naukowej.

Bardzo często doktorant to student, a nie pracownik.
Często, ale nie zawsze.
Pisanie kodu jest czasami, ale ** nie zawsze **, wkładem intelektualnym zasługującym na autorstwo. (To, czy jest to „istotne” dla dzieła, niekoniecznie decyduje o tym, czy wskazanie autorstwa jest odpowiednie).
@VladimirF Takie zasady dotyczące własności intelektualnej mogą mieć również zastosowanie do studentów.
@ff524: Masz rację. Istnieje duża różnica między pisaniem funkcji kreślącej a tworzeniem łańcucha narzędzi analitycznych. Lekko zredagowałem odpowiedź.
IANL, ale podręcznik dla studentów na moim uniwersytecie brzmi tak, jakby uniwersytet mógł twierdzić, że wszystko, co zostało opracowane jako prace studenckie / praca dyplomowa / rozprawa, jest własnością intelektualną uniwersytetu. W praktyce na uczelni powstaje zwykle kilka startupów, które później są wydzielane jako niezależne firmy. Nie jestem pewien, jak radzą sobie z przekazywaniem praw własności intelektualnej.
Co to mówi o społeczności, w której mieszkam, że zobaczyłem IANL i zamiast myśleć, że może to być literówka dla IANAL, od razu pomyślałem: „co, czy Iowa ma National Lab?” ...
#5
+36
Jeff
2016-10-31 18:46:40 UTC
view on stackexchange narkive permalink

Wiele osób wspominało o udostępnianiu twojego kodu i całkowicie to popieram. Aby uzyskać bardziej szczegółowe informacje, umieść to na GitHubie.

Publiczne repozytoria są bezpłatne, przechowują historię wersji Twojej pracy, więc nawet Ty nie możesz jej zepsuć w terminal way, a inni mogą rozgałęzić twój kod w innym kierunku i rozwinąć go, zachowując przy tym właściwe odniesienie do ciebie jako twórcy. Możesz dołączyć swoje licencje do repozytorium ; często potrzebujesz takiego, który umożliwia bezpłatne korzystanie, ale wymaga cytatu. GitHub nawet automatyzuje to za Ciebie.

Możesz również wyjaśnić swój kod i pozostawić linki do swojej witryny / opublikowanej pracy / itp., Używając znacznika w pliku readme.md

Następnie, gdy ktoś taki jak Twój profesor poprosi o Twój kod, po prostu udostępniasz swój link GitHub.

Tak to. Oprogramowanie open source zajmuje się tym problemem od lat i wiele [standardowych umów] (https://github.com/blog/1530-choosing-an-open-source-license) pozwala po prostu na licencjonowanie oprogramowania.
To dobra rada, a GitHub z pewnością jest świetny, ale która część tego odpowiada na pytanie?
@RyanfaeScotland Jak przeprowadzić sugerowany sposób działania, nie wydaje Ci się odpowiedni?
Ktoś pyta, jak odmówić udostępnienia czegoś, a Ty udzielasz odpowiedzi na najlepszej platformie, aby podzielić się tym ze światem. Więc nie, jestem afriad w tym przypadku nie wydaje się to istotne. Powinienem wspomnieć, że jestem ze szkoły, w której większość z tych odpowiedzi nie odpowiada w rzeczywistości na pytanie, ale podjąłem tę jedną, ponieważ wydaje się, że jest to kolejny krok od tych odpowiedzi.
@RyanfaeScotland Myślę, że jest to niepotrzebnie pedantyczne trzymanie się dosłownego odczytania pytania, co nie jest sposobem, w jaki działają StackExchanges. Pytanie brzmiało * „jak go nie udostępniać” *, a prawidłowa odpowiedź to * „właściwie powinieneś to udostępnić i oto dlaczego” *, podczas gdy moja odpowiedź po prostu dodaje * ”, a także, oto jak możesz to udostępnić powinien rozwiązać wszelkie problemy związane z udostępnianiem go. ”*
@JeffL. Hmmm nadal się nie zgadzam i mam tendencję do myślenia o udzieleniu odpowiedzi na pytanie, które jest zadawane, jako o słusznym postępowaniu (dosłownie pedantycznie lub w inny sposób). Jednak inne odpowiedzi i głosy wspierają twój tok myślenia. Dzięki za poświęcenie czasu na wyjaśnienie.
@RyanfaeScotland Jestem wdzięczny za tak troskliwą postawę i mam nadzieję, że moje wyjaśnienie będzie miało nieco więcej sensu. Czy zawsze zakładałbyś, że pytający zna najlepszy sposób działania * X *, kiedy zadaje ukierunkowane pytanie, Jak mam zrobić * X *? Sam nawet nie zakładam, że OP zna nawet najlepszy sposób na opisanie problemu, ponieważ dość często znajduję się w takiej sytuacji. Ci, którzy potrafią zadać najlepsze pytania, często sami (już) są ekspertami. I odwrotnie, kiedy nie jestem ekspertem w danym temacie, polegam na komentarzach / odpowiedziach, aby doprecyzować moje pytanie lub poszerzyć swoją perspektywę.
@Jeff Właściwie, jeśli umieszczasz treści na GitHub bez licencji, jest to * automatycznie * na licencji MIT, która jest jedną z najbardziej liberalnych (np. Zezwalających na komercyjne ponowne wykorzystanie)! MIT wymaga jednak atrybucji; a to mniej więcej tak mała ochrona, jak tylko można wyjść poza domenę publiczną. (Innymi słowy, „** [musisz] ** dołączyć swoją licencję…”, ponieważ jeśli nie (jawnie), nadal dołączasz (domyślnie) licencję MIT).
@JeffL Nie zakładam, że OP zna najlepsze rozwiązanie i może to być rozwiązanie, z którym potrzebują pomocy, co pogorszy sytuację. Radziłbym, ale nadal odpowiadam na pytanie. Weź to pytanie jako przykład, gdybym miał przedstawiciela, moja odpowiedź brzmiałaby: `` Jeśli jesteś zobowiązany do odmowy, możesz to zrobić grzecznie w następujący sposób ... pamiętaj jednak, że kod może należeć do uniwersytetu w ramach warunków pamiętaj również, że możesz palić mosty i ograniczać dobro, które może pochodzić z dzielenia się swoją pracą ”. Niestety nie mam przedstawiciela (być może z powodu moich zbyt dosłownych odpowiedzi!)
Istnieją inne systemy kontroli wersji niż Git. Github obsługuje tylko Git.
@jpaugh: Jestem prawie pewien, że [Github nie ma „domyślnej licencji”] (https://help.github.com/articles/open-source-licensing/). Cytując: _ "[Brak] licencji oznacza, że ​​mają zastosowanie domyślne prawa autorskie. Oznacza to, że zachowujesz wszystkie prawa do swojego kodu źródłowego i nikt inny nie może reprodukować, rozpowszechniać ani tworzyć dzieł pochodnych na podstawie Twojej pracy." _ ( Github zastrzega sobie jednak pewne prawa poprzez Warunki korzystania z usługi.)
@You Dzięki. Musiałem to źle przeczytać, dawno temu. Tak, GitHub musiałby zarezerwować wystarczające prawa, aby faktycznie świadczyć Ci usługę, nawet jeśli zarezerwowałeś wszystkie prawa w inny sposób.
#6
+20
Murphy
2016-10-31 15:58:26 UTC
view on stackexchange narkive permalink

Generalnie za dobrą praktykę uważa się publikowanie kodu używanego do badań / analiz związanych z publikowanymi rzeczami. Nie wszyscy to robią, ale wiele osób nie przestrzega najlepszych praktyk.

Niepublikowanie tego jest jak utrzymywanie części metod w tajemnicy lub używanie poufnych środków chemicznych.

Jeśli używałeś go w innych publikacjach, to nie tylko powinieneś go jej dostarczyć: powinieneś udostępnić go każdemu, kto chciałby sprawdzić / powielić twoją pracę.

Ponadto, jako osoba pracująca w oddziale neurologii, która pisze dużo kodu: Tak, cytaty do analizy nadal liczą się pozytywnie, nie tak bardzo, jak cytaty z rzeczy z twojej dokładnej specjalności, ale pokazuje, że jesteś bardziej dobrze zaokrąglony.

#7
+15
Mołot
2016-10-31 15:43:12 UTC
view on stackexchange narkive permalink

Kod użyty w badaniach powinien zostać poddany wzajemnej weryfikacji, tak jak i tak każda inna metoda.

Po pierwsze: dowiedz się, kto jest właścicielem! Nie jestem prawnikiem. W zależności od sytuacji, kraju itp. Kod może już należeć do instytucji, grupy badawczej itp. Zanim odmówisz, najpierw upewnij się, że to naprawdę Twoja decyzja.

Jeśli to twoja, proponuję upublicznić go. licencja, która będzie wymagała wzmianki o jej użyciu podczas korzystania z wyników i wymaga udostępnienia Ci ulepszeń.

W praktyce (i niestety) koszty przeglądu (potencjalnie dużych ilości) kodu do wymaganego poziomu są wygórowane, nie jest też jasne, czy te same osoby, które recenzują artykuł, powinny przeglądać kod (mówiąc wprost, nie wszystko dobrze naukowcy są dobrymi programistami). Co więcej, wiele kodów badawczych jest (szczerze mówiąc) zhakowanych razem tuż przed ostatecznym terminem do tego stopnia, że ​​przeglądanie go byłoby (a) bezbożnym koszmarem i (b) bezproduktywnym.
Mówię to jako ktoś, kto spędził dużo czasu w ciągu ostatnich kilku lat, przeglądając kod w kontekście badawczym - możesz to zrobić, ale zajmuje to wieki i musisz być skłonny pozwolić ludziom zaciągać (znaczny) dług techniczny po prostu przed terminami i (miejmy nadzieję) spłacić je później. Nie jest to idealne rozwiązanie, ale sposób, w jaki ustrukturyzowane jest środowisko akademickie (tj. Priorytetyzacja prac nad jakością kodu) sprawia, że ​​trudno jest zrobić znacznie więcej.
@StuartGolodetz, nawet jeśli kodu nie można przejrzeć, powinien być przynajmniej widoczny, prawda? Jeśli ktoś miałby wątpliwości, czy wyniki programu są dobre, czy powinien sam się przekonać?
Tak, w zasadzie. W praktyce jednak zastrzeżenie, że cały kod źródłowy musi być udostępniony jako warunek publikacji (co jest oczywistym sposobem próby wyegzekwowania tego), ograniczyłoby tylko to, kto może publikować artykuły - w szczególności kwestie licencyjne i prawa własności intelektualnej mogą uniemożliwić ludziom publikowanie kodu źródłowego, nawet jeśli tego chcą. Błądziłbym po stronie nagradzania ludzi, którzy publikują swój kod źródłowy, zamiast karania tych, którzy tego nie robią. (Uwaga: publikuję swój kod źródłowy i chcę ciasto, więc nie jestem bezstronny).
„Kod używany w badaniach powinien być recenzowany, tak jak inne metody i tak”. - Nie jestem przekonany, że warto w jakikolwiek sposób wydawać zasoby naukowe na ocenę plików makefile, które kopiują nasze dokumenty na nasz wewnętrzny serwer udostępniania.
#8
+12
E.P.
2016-11-03 01:01:38 UTC
view on stackexchange narkive permalink

Przeczytaj zasady swojej instytucji.

Twoje stanowisko zakłada, że ​​jesteś właścicielem praw autorskich do wspomnianego kodu, i ogólnie jest to fałszywe. Będzie to silnie zależało od uczelni, na której uczęszczasz, formalnego statusu studenta / personelu i instytucji, które Cię finansują, ale jest wiele przypadków, w których prawa autorskie do wyników badań doktoranta spoczywają na uniwersytecie. Ponadto w takich przypadkach osobą odpowiedzialną za tę część własności intelektualnej jest zwykle Twój przełożony - czyli Twój przełożony.

Oznacza to, że Twój przełożony może mieć prawo do żądania że dajesz jej kod i powstrzymujesz się od używania go w dalszych badaniach poza obecną instytucją. Oznacza to, że Twoim pierwszym przystankiem jest sprawdzenie, czy tak nie jest.

#9
+4
user21264
2016-11-01 17:05:56 UTC
view on stackexchange narkive permalink

Jeden z moich znajomych był w podobnej sytuacji. Nie chciał przekazać swoich notatek LaTeX naszemu szefowi, ponieważ były postdoc w grupie zrobił to wcześniej, a nasz szef (według nich) publikował rzeczy w notatkach bez współautorstwa tego byłego postdoc. W rezultacie stosunki między moim przyjacielem a szefem w tamtym czasie zepsuły się, a mój przyjaciel stracił kilka możliwości pracy z powodu złych listów polecających.

Z drugiej strony, ja zawsze udostępniam kody. Kody nie są przeznaczone dla doradców, którzy rzadko mają czas, aby się w nie zagłębić. Są przeznaczone dla przyszłych absolwentów, którzy mają czas, aby się od nich uczyć, a czasami zdarza się, że znajdują błędy, o których nigdy nie pomyśleliśmy.

Mogą istnieć pewne zasady, jak powiedziano na innych plakatach, dotyczące dzielenia się własnością intelektualną powstałą podczas pracy na uniwersytecie, a Twój doradca może próbować je egzekwować, w zależności od twoich relacji z nimi. Zamiast odmówić, wolałbym prosić o odpowiednie cytowanie, a jeśli potrzebna jest dodatkowa praca, aby pomóc jej w uruchomieniu kodu, powinieneś jej powiedzieć, że chcesz współautorstwa artykułów.

Dlatego publikacja kodu online na githubie jest idealna. Podobnie jak publikowanie notatek o ARXIV w przypadku twoich doradców. Jeśli zostały już opublikowane, doradca będzie miał trudności z ich plagiatem.
#10
+4
Stephan Branczyk
2016-11-03 17:04:00 UTC
view on stackexchange narkive permalink

Jeśli musisz odmówić, odmówić osobiście lub odmówić telefonicznie. Nie zamieszczaj niczego na piśmie, chyba że masz absolutną pewność swoich praw.

Ponieważ Twój doradca mianuje Cię Asystentem ds. Badań, pamiętaj, że może pośrednio kupować również Twoją przyszłą współpracę. W końcu, jeśli Twój kod jest wystarczająco złożony, może wymagać Twojej wiedzy, aby go zainstalować, zrozumieć, poprawnie uruchomić i ewentualnie zmodyfikować.

W takim przypadku możesz wykorzystać fakt, że nie masz czasu na pracę z nią, ani czasu na oczyszczenie kodu, aby był teraz bardziej czytelny lub użyteczny. Możesz też po prostu odrzucić jej prośbę, nie usprawiedliwiając się przed nią (ale znowu nie pisz tego na piśmie, po prostu powiedz jej osobiście lub telefonicznie, jeśli nie masz całkowitej pewności co do swoich praw).

A niektórzy wspomnieli, że możesz chcieć być cytowany za kod źródłowy, ale może też być tak, że nie chcesz, aby twoje imię i nazwisko kojarzyło się z jej projektem. Więc możesz też o to poprosić, jeśli chcesz.

A może możesz wyznaczyć sobie za cel wydanie kodu źródłowego, ale tylko za rok lub dwa od teraz, do tego czasu będzie też spóźniła się, by wykorzystała go w ramach swojego grantu. A może mógłbyś wypuścić starszą, mniej użyteczną wersję kodu.

Lub jeśli twój związek zakończył się naprawdę źle, możesz po prostu powiedzieć jej, że nie pomożesz i nie chcesz, żeby to zrobiła kiedykolwiek ponownie się z tobą skontaktuję. A potem możesz utworzyć filtr, który zapewni, że nigdy więcej nie zobaczysz jej wiadomości e-mail.

Chodzi mi o to, że masz wiele opcji. Chodzi tylko o to, że nie mam pewności co do powodu odrzucenia jej prośby. Gdybyśmy znali dokładny powód, być może moglibyśmy udzielić ci dokładniejszej odpowiedzi.

#11
+4
Joel
2016-11-04 10:09:09 UTC
view on stackexchange narkive permalink

Oto, co radziłbym: napisz artykuł, który używa i wyjaśnia kod. Następnie, gdy udostępniasz kod, poproś, aby osoba, z którą go udostępniasz, zacytowała Twoją pracę.

Dobry przykład jest tutaj: http://www.modelinginfectiousdiseases.org/. Przeczytaj ostatnią linię, w której rozprowadzany jest kod z wierszem „jeśli używasz któregokolwiek z programów w swoich badaniach, prosimy o odniesienie się ...”

Szczególnie w przypadku, gdy mówisz, że masz różne zainteresowania badawcze, więc Twój doradca nie będzie z tobą konkurował, po prostu wyrzucasz bezpłatne cytaty (i dobre listy polecające), jeśli odmówisz udostępnienia. Fakt, że nikt nie udzielił dobrej odpowiedzi na pytanie „jak odmówić”, wynika z faktu, że nie możemy wymyślić żadnego dobrego uzasadnienia, aby to zrobić. Jeśli naprawdę potrzebujesz odpowiedzi na to pytanie, musisz wyjaśnić, jaki jest tego powód. „Nie chcę współpracować” nie jest dobrym powodem.

Nie jestem przekonany, że artykuł o zestawie procedur narzędziowych łączących arkusze kalkulacyjne z różnych plików Excela w jeden plik Excela zostanie zaakceptowany wszędzie. Po prostu nie jest interesujący jako badanie. Nie, OP nie mówi, że to właśnie robi ich kod, ale też nie mówią nic poza „programem komputerowym do moich badań naukowych”, więc jest całkowicie możliwe, że ich program komputerowy jest przeznaczony do takich „podrzędnych” zadań. Ta odpowiedź dotyczy tylko ograniczonego przypadku, gdy faktycznym przedmiotem badań jest program komputerowy.


To pytanie i odpowiedź zostało automatycznie przetłumaczone z języka angielskiego.Oryginalna treść jest dostępna na stackexchange, za co dziękujemy za licencję cc by-sa 3.0, w ramach której jest rozpowszechniana.
Loading...