Zabezpieczenie przed kradzieżą kodu gema

Witam!

Chciałbym się zapytać, czy jest jakaś możliwość zabezpieczenia kodu Gem’a którego tworzę przed kradzieżą? Chodzi o to, że piszę pewnego Gem’a dla klienta i obawiam się, że mój kod będzie w późniejszym czasie wykorzystywany / odsprzedawany bez mojej wiedzy. Oczywiście chroni mnie zapewne kodeks cywilny natomiast chciałbym się dodatkowo zabezpieczyć tak, abym miał możliwość ew. “wyłączenia” działania gema.

Pierwsze co wpadło mi do głowy to oczywiście prywatne repozytorium dla gema oraz ukrycie gdzieś w kodzie metody która będzie odwoływać się do konkretnego linku na moim serwerze i sprawdzała zwracaną wartość i w razie czego wywalała błedy.

Czy jest jakiś inny, bardziej ludzki sposób, żeby się przed tym zabezpieczyć?

Pozdrawiam

Nie.

Sprawdzanie kodu na serwerze jest dyskusyjnym pomysłem - nie chcesz się chyba przejmować tym, czy Twój serwer działa?

Jeśli piszesz kod dla klienta i obawiasz, że się będzie on złodziejem… Może trzeba zmienić klienta?

3 Likes

Możesz zwrócić tez uwagę na to co masz napisane w umowie. Być może wg umowy przekazujesz prawo do ponownego wykorzystania.

Ten, który walczy z potworami, powinien zadbać, by sam nie stał się potworem. Gdy długo spoglądamy w otchłań, otchłań spogląda również w nas.
– Friedrich Nietzshe

Na myśl przychodzi mi prywatne repozytorium pod Twoją kontrolą i token do autoryzacji, który możesz zinwalidować. Ale przychylałbym się do tego, co mówili moi poprzednicy - wygląda mi to na mocno nieczystą sytuację: kto kogo wykiwa. Ja osobiście kieruję się przekonaniem, że jeśli piszę kod dla klienta, to staje się on jego własnością, bez względu na to, co jest w umowie.

Albo coś hostujesz dla klienta, albo coś piszesz

Programowanie to usługa nie produkt

Sprzedajemy “ręce do pracy” nie kod

Nie zdarzyło mi się bym był właścicielem kodu który piszę dla klienta X - wyjątek możesz być w spółce - mieć udziały w zyskach z produktu końcowego

Nie chcesz za 3 lata pamiętać że ten “klucz” tu musi być bo dawno zapomniany klient straci usługę

Myśl w kategorii “następny klient”, nie skupiaj się na tym jak uprzykrzyć życie obecnemu

Blog post w temacie rozwiązania problemu bez upubliczniania linijki kodu gema to będzie dobry sygnał dla potencjalnego klienta - ten Pan wie jak rozwiązać problem. Dodaj w opisie aktualnie wykonywanych zadań na “portalu społecznościowym” - klient X branża Y - wyciąganie funkcjonalności do gemów

chyba tyle musi wiedzieć Twój następny klient