Zarabiam na życie programistą PHP, ale nigdy wcześniej nie pracowałem ani nie brałem udziału w projektach typu open source.
Tworzę CMS na własny użytek. Mam działający prototyp i myślę, że gdy będzie gotowy (prawdopodobnie za kilka miesięcy), może to zainteresować społeczność PHP.
Jestem dość pewnym programistą, ale w niektórych obszarach brakuje mojej wiedzy, szczególnie jeśli chodzi o problemy z otwartym oprogramowaniem:
- Jaki jest najlepszy sposób na promocję projektu i / lub znalezienie innych osób, które mogą być zainteresowane współpracą
- Mój CMS jest zasilany przez CakePHP i zasadniczo leży na nim jako warstwa. Rozwinąłem projekt CakePHP na GitHub: wcześniej korzystałem z systemów kontroli wersji (SVN), ale jestem dość nowy w GIT, więc chcę mieć pewność, że robię wszystko w „najlepszy sposób”
- Jak mogę dowiedzieć się o problemach licencyjnych? Która licencja typu open source byłaby najlepsza dla mojej aplikacji? Ponadto mój projekt zapożycza z wielu innych projektów open source, na przykład mam sekcje kodu (które mocno zmodyfikowałem), ale które zawierały informacje o prawach autorskich / licencjach - nie mam pojęcia, jakie są moje obowiązki w zakresie trzymanie ich w
To tylko kilka przykładów pytań, które mam, ale wydaje mi się, że muszą istnieć pewne zasoby, które byłyby dla mnie przydatne. Gdzie najlepiej zacząć, jakie są najlepsze społeczności / witryny zajmujące się tymi problemami? Rozejrzałem się, ale nie byłem w stanie wymyślić wiele ...
php
open-source
licensing
gpl
mit-license
użytkownik916336
źródło
źródło
Odpowiedzi:
Nie jestem prawnikiem, ale dam temu szansę.
CakePHP jest licencjonowany na licencji MIT , co w zasadzie oznacza, że zezwala na ponowne użycie w oprogramowaniu zastrzeżonym, pod warunkiem, że licencja jest rozpowszechniana z tym oprogramowaniem. Jest kompatybilny z licencjami GPL , na podstawie których wydano wiele projektów open source.
Jeśli chodzi o inne projekty, które „pożyczasz”, musisz sprawdzić ich typy licencji i sprawdzić ich zgodność ze sobą oraz typ licencji, z której zdecydujesz się skorzystać. Jeśli którykolwiek z nich korzysta z licencji GPL , musisz również wydać licencję z GPL, zgodnie z warunkami licencji
Moją propozycją jest wydanie na licencji GNU GPL v3, ponieważ daje ono odpowiednie prawa własności do twojej pracy, a jednocześnie umożliwia innym potencjalne wykorzystanie jej zarówno w komercyjnych, jak i otwartych projektach. Pamiętaj jednak, że licencje „pożyczonych” projektów muszą być kompatybilne .
Jeśli chodzi o najlepsze praktyki z Git i Github, użyj,
git submodule
aby dołączyć inne projekty do swojej biblioteki. Jest to lepsze niż bezpośrednie dołączanie plików, ponieważ nie wznawiasz pracy jako własnej.źródło
git submodule add git://github.com/jquery/jquery.git public/vendor/jquery
Sprawdź ten przewodnik Erica S. Raymonda (resztę książki też warto przeczytać).
Osobiście nie martwiłbym się tym zbytnio - nie zarobisz na tym pieniędzy bezpośrednio, podobnie jak nikt inny, ponieważ istnieje już mnóstwo doskonałych darmowych CMS-ów ogólnego zastosowania. Sugeruję skorzystanie z najbardziej liberalnej licencji, jaką możesz (MIT lub BSD), chyba że pożyczysz kod, który jest objęty licencją wirusową (zazwyczaj GPL lub jej różnorodność), w którym to przypadku jesteś zmuszony do uzyskania takiej licencji w taki czy inny sposób.
Pamiętaj, aby uważnie przeczytać wszystkie licencje bibliotek i fragmentów, których używasz; powinni określić, czy wolno redystrybuować i modyfikować kod oraz czy należy je uwzględnić w dowolnych utworach pochodnych (większość licencji tego wymaga, a nawet w przypadku tych, które tego nie robią, to co najmniej możesz zrobić, by podziękować oryginalni autorzy swojej pracy).
źródło