Saya seorang pengembang PHP untuk mencari nafkah tetapi belum pernah bekerja atau berkontribusi pada proyek open source sebelumnya.
Saya mengembangkan CMS untuk saya gunakan sendiri. Saya memiliki prototipe yang berfungsi dan saya pikir setelah siap (mungkin beberapa bulan) ini bisa menjadi sesuatu yang menarik bagi komunitas PHP.
Saya seorang pengembang yang cukup percaya diri tetapi ada bidang-bidang di mana pengetahuan saya kurang, terutama ketika menyangkut masalah open source:
- Apa cara terbaik untuk mempublikasikan proyek dan / atau menemukan orang lain yang mungkin tertarik berkolaborasi
- CMS saya diberdayakan oleh CakePHP dan pada dasarnya duduk sebagai layer di atasnya. Saya telah memotong proyek CakePHP di GitHub: Saya pernah menggunakan sistem kontrol versi (SVN) sebelumnya, tetapi saya cukup baru di GIT, jadi saya ingin memastikan saya melakukan sesuatu dengan "cara terbaik"
- Bagaimana saya bisa mengetahui tentang masalah perizinan? Lisensi open source mana yang terbaik untuk aplikasi saya? Juga, proyek saya meminjam dari banyak proyek open source lainnya, misalnya saya memiliki bagian kode (yang telah banyak saya modifikasi) tetapi yang memiliki pemberitahuan hak cipta / lisensi - Saya tidak tahu apa kewajiban saya dalam hal menyimpan ini di
Ini hanya beberapa contoh dari pertanyaan yang saya miliki, tetapi saya merasa seperti harus ada sumber daya di luar sana yang akan berguna bagi saya. Di mana tempat terbaik untuk memulai, apa komunitas / situs terbaik di luar sana yang mencakup masalah ini? Saya sudah melihat-lihat tetapi belum bisa datang dengan banyak ...
sumber
Jawaban:
Saya bukan Pengacara, tetapi saya akan mencoba yang ini.
CakePHP dilisensikan di bawah lisensi MIT , yang pada dasarnya berarti memungkinkan penggunaan kembali dalam perangkat lunak berpemilik dengan ketentuan bahwa lisensi didistribusikan dengan perangkat lunak itu. Ini kompatibel dengan lisensi GPL , yang dirilis oleh banyak proyek sumber terbuka.
Adapun proyek lain yang Anda "pinjam", Anda harus memeriksa jenis lisensi mereka dan memeriksa kompatibilitasnya satu sama lain dan jenis lisensi yang Anda putuskan untuk digunakan. Jika salah satu dari mereka menggunakan lisensi GPL , Anda juga harus merilis dengan GPL, sebagai ketentuan dari negara lisensi
Saran saya adalah untuk merilis di bawah lisensi GNU GPL v3 karena memberi Anda hak kepemilikan yang memadai atas pekerjaan Anda sementara memungkinkan orang lain untuk menggunakannya dalam proyek komersial dan terbuka. Ingat, bagaimanapun, lisensi dari proyek "pinjaman" harus kompatibel .
Adapun praktik terbaik dengan Git dan Github, gunakan
git submodule
untuk memasukkan proyek lain di perpustakaan Anda sendiri. Ini lebih baik daripada memasukkan file secara langsung karena Anda tidak akan mengaktifkan kembali pekerjaan itu sebagai milik Anda.sumber
git submodule add git://github.com/jquery/jquery.git public/vendor/jquery
Lihatlah panduan ini dari Eric S. Raymond (buku lainnya juga layak dibaca).
Secara pribadi, saya tidak akan terlalu mengkhawatirkannya - Anda tidak akan menghasilkan uang dari hal ini secara langsung, dan tidak ada orang lain, karena sudah ada banyak CMS tujuan umum gratis yang luar biasa. Saya sarankan Anda menggunakan lisensi paling liberal yang Anda bisa (MIT atau BSD), kecuali jika Anda meminjam kode yang berada di bawah lisensi viral (biasanya GPL atau beragamnya), dalam hal ini Anda dipaksa ke lisensi itu dengan satu atau lain cara.
Pastikan untuk membaca dengan cermat semua lisensi perpustakaan dan snippet yang Anda gunakan; mereka harus menyatakan apakah Anda diizinkan mendistribusikan ulang dan memodifikasi kode, dan apakah Anda perlu memasukkannya ke dalam karya turunan (sebagian besar lisensi memerlukannya, dan bahkan bagi yang tidak, atribusi adalah yang paling dapat Anda lakukan untuk berterima kasih kepada penulis asli untuk pekerjaan mereka).
sumber