Bir kütüphaneyi projeye eklemek teknik bir karar gibi görünür, ama aynı zamanda hukuki bir karar. Lisans, o kodu ne yapabileceğinizi belirliyor ve “açık kaynak” etiketi tek bir şey anlatmıyor.
Üç kavramı ayırmak
- Ücretsiz: para ödemiyorsunuz. Kaynak kodu görmeniz ya da değiştirmeniz gerekmez. Çoğu ücretsiz uygulama kapalı kaynaktır.
- Kaynağı görünür: kodu okuyabiliyorsunuz. Kullanma, değiştirme ve dağıtma hakkı vermiyor olabilir.
- Açık kaynak: kodu kullanma, inceleme, değiştirme ve dağıtma hakkını lisansla veren yazılım.
Bu ayrım bir kelime oyunu değil: kaynağı görünür ama kullanım hakkı kısıtlı bir projeyi ürününüze koyduğunuzda, sözleşme ihlali riski doğuyor.
İzin verici lisanslar
MIT, BSD ve Apache ailesi bu grupta. Özetle “yap, dağıt, satabilirsin; yeter ki telif bildirimini koru” diyorlar.
Ayrıntıda iki nokta önemli: atıf zorunluluğu gerçek bir yükümlülük — ürününüzde kullanılan lisans metinlerini bir yerde sunmanız gerekir, mobil uygulamalardaki “Yasal bilgiler” ekranları bu yüzden var. Apache ailesi ayrıca açık bir patent izni içerir; kurumsal hukuk ekiplerinin bu lisansı tercih etmesinin nedeni genelde budur.
Copyleft: paylaşımı zorunlu kılan taraf
GPL ailesi farklı bir sözleşme kuruyor: kodu kullanabilirsiniz, ama dağıttığınız türev işin de aynı özgürlükleri taşıması gerekir. Yani değiştirip ürün olarak dağıtıyorsanız kaynağı da vermeniz gerekiyor.
- GPL: güçlü copyleft. Kodu projenize gömerseniz proje de GPL olur.
- LGPL: kütüphane olarak bağlanmaya izin verir; kütüphanede yaptığınız değişiklikler paylaşılır, ana ürününüz kendi lisansında kalabilir.
- AGPL: en çok yanlış anlaşılan. Yazılımı kullanıcılara ağ üzerinden hizmet olarak sunmak da dağıtım sayılıyor. Yani AGPL’li bir bileşeni bulut ürününüzün içinde çalıştırmak, kaynak yükümlülüğünü tetikliyor. Birçok şirketin AGPL’li bileşenleri yasaklamasının nedeni bu.
- MPL: dosya düzeyinde copyleft; değiştirdiğiniz dosyalar paylaşılır, geri kalanı serbest.
Copyleft bir kısıt değil, bir takas: ortak havuzun kapanmasını engelliyor. Hangisinin doğru olduğu değerler sorusu; hangisinin size uyduğu ise ürün modeliniz sorusu.
“Açık kaynak değil ama kaynağı açık” dalgası
Son yıllarda bazı projeler, bulut sağlayıcılarının kendi işlerini yeniden paketlemesini engellemek için lisanslarını değiştirdi. Bu yeni lisanslar genellikle ticari kullanımı ya da hizmet olarak sunmayı kısıtlıyor; bu nedenle açık kaynak tanımını karşılamıyorlar.
Pratik sonucu iki yönlü: kullanıcı için “dün serbest olan bugün olmayabilir” riski, topluluk için ise son sürümden ayrılıp (çatallama) eski lisansla devam etme eğilimi. Bir bağımlılığı seçerken lisansın yanında lisans değiştirme geçmişine de bakmak artık makul bir alışkanlık.
Lisansı olmayan depo kullanılamaz
Çok yaygın bir hata: herkese açık bir depoda kod görünce serbest sanmak. Lisans belirtilmemişse, varsayılan telif kuralları geçerli — yani yazarın izni olmadan kullanma, değiştirme ve dağıtma hakkınız yok.
Aynı mantık yapay zeka araçlarının ürettiği kod için de tartışılıyor ve eğitim verisindeki lisanslar nedeniyle netleşmiş bir çerçeve yok. Yapay zekayla kod yazarken hangi risklerin gerçek olduğunu kod yazma yazısında ayrıca ele aldık.
Yapay zeka modellerinde “açık” ne demek
Model ağırlıklarını indirip çalıştırabilmek, açık kaynak yazılımla aynı şey değil. Çoğu “açık” modelin lisansı kullanım alanlarına sınır koyuyor, bazıları belirli bir kullanıcı ölçeğinin üstünde ayrı izin istiyor ve eğitim verisi neredeyse hiçbir zaman paylaşılmıyor. Doğru terim genelde açık ağırlık. Kendi makinenizde çalıştırmanın teknik tarafını yerel model yazısında anlattık; lisans tarafını ayrıca okumak gerekiyor.
Pratik uyum listesi
- Projedeki bağımlılıkların lisanslarını listeleyin — bunu otomatik yapan araçlar var.
- Ürününüzün dağıtım biçimine göre riskli olanları işaretleyin (özellikle AGPL ve ticari kısıtlı lisanslar).
- Atıf yükümlülüklerini tek bir “üçüncü taraf bildirimleri” ekranında toplayın.
- Kendi projenize lisans koyun; koymamak “serbest” değil “kullanılamaz” demek.
- Kurumsal projelerde katkı anlaşmalarını ve çalışan katkılarının mülkiyetini baştan netleştirin.
- Sunucu tarafı bileşenlerinizi de denetleyin; barındırma mimarisi lisans yükümlülüğünü değiştirebiliyor — barındırma yazısında anlattığımız modeller burada da belirleyici.
Lisans, kodun fiyatını değil kullanım koşullarını anlatıyor. “Ücretsiz” bir cevap değil, bir soru işareti.
Yorumlar (0)
Henüz yorum yok. İlk yorumu siz yazın.