Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Açık Kaynak 101 - AçıkSeminer

Açık Kaynak 101 - AçıkSeminer

Açık Kaynak 101 İçeriği
- Açık Kaynak nedir?
- Açık Kaynak yazılımlar kapalı kaynak yazılımlara oranla hangi alanlarda güçlü?
- Açık Kaynak yazılımlar bir yazılımcıya ne katkı sağlar?
- Açık Kaynak geliştirmeye nasıl destek verebiliriz?
- Bir projeyi hangi özellikleri Açık Kaynak yapar?
- Projelerimizi Açık Kaynağa nasıl dönüştürebiliriz?
- Git ve GitHub arasındaki fark nedir?
- Hangi yazılımlar Özgür Yazılım’dır, hangi projeler Açık Kaynak’tır?
- Seçebileceğimiz lisansların tipleri nelerdir?
- Destek verecek Açık Kaynak yazılımları nerede bulabilirim?
- Topluluk nasıl birlikte geliştirme yapıyor?
- Şirketlerin Açık Kaynak’a vermiş olduğu destek hangi kapsamda oluyor?

Eser Ozvataf

April 14, 2020
Tweet

More Decks by Eser Ozvataf

Other Decks in Technology

Transcript

  1. AçıkSeminer
    14.04.2020
    Açık Kaynak 101
    Eser Özvataf

    View Slide

  2. HAKKIMDA
    ESER ÖZVATAF
    ▸ Yazılım Yöneticisi @ Setur
    ▸ Alaylı ve Mektepli
    ▸ açık-kaynak.org Topluluk Lideri
    ▸ İçerik Üreticisi
    /eserozvataf
    /eserozvataf /laroux
    /EserOzvataf

    View Slide

  3. ‣ AÇIK KAYNAK
    ‣ ÖZGÜR YAZILIM
    ‣ NASIL BAŞLARIZ?
    ‣ HEDEF BULMAK
    ‣ KATKIDA
    BULUNMAK
    Bugün bahsedeceklerim:

    View Slide

  4. AÇIK KAYNAK

    View Slide

  5. AÇIK KAYNAK
    Açık kaynak, bir çalışmanın (yazılım gibi)
    başkaları tarafından tekrardan
    oluşturulabilir halde paylaşılmasıdır.

    View Slide

  6. AÇIK KAYNAK

    View Slide

  7. AÇIK KAYNAK
    AÇIK KAYNAKTAN ÖNCESİ

    View Slide

  8. AÇIK KAYNAK
    15-20 YIL ÖNCE…
    GNU / Linux Apache

    View Slide

  9. AÇIK KAYNAK
    BUGÜN…

    View Slide

  10. AÇIK KAYNAK
    HATTA…

    View Slide

  11. AÇIK KAYNAK
    AÇIK KAYNAĞIN GÜÇLÜ NOKTALARI
    ▸ Birçok anlamda bilimsel yöntemlerle benzeşmesi
    ▸ Şeffaftır, herkes tarafından kullanılabilir ve gözlemlenebilir.
    ▸ Kişisel/kurumsal çıkarlar önplanda değildir, teknik anlamda kaliteli çözüm aranır.
    ▸ Mevcutu değiştirip kendi kopyanızı oluşturabilirsiniz.
    ▸ Toplulukla birlikte inandığınız/yarar sağladığınız ürün için geliştirme yapabilirsiniz.

    View Slide

  12. AÇIK KAYNAK
    BİR ÇALIŞMAYI HANGİ ÖZELLİKLER AÇIK KAYNAK YAPAR?
    ▸ Kaynağının bir açık kaynak lisansı ile yayınlanması.
    ▸ Diğer kişi ve kurumların katkılarına açık bir şekilde erişilebilir bir platformda yer alması.
    ▸ Kullanıcıları tarafından tekrar oluşturulabilmeleri.
    ▸ Nasıl tekrar oluşturulabileceğine dair iyi bir dokümantasyon.

    View Slide

  13. ÖZGÜR YAZILIM

    View Slide

  14. ÖZGÜR YAZILIM
    AÇIK KAYNAK VE ÖZGÜR YAZILIM ARASINDAKİ FARKLAR
    ▸ Özgür Yazılım olmanın şartlarından biri Açık Kaynak geliştirmedir.
    Bir başka deyişle, Özgür Yazılım Açık Kaynak olgusunu kapsar.
    ▸ Özgür Yazılımların onları özgür bırakan lisansları bulunur. (Örnek: GPL)
    ▸ Özgür Yazılım’da bir sahiplik hakkından bahsedemeyiz.
    ▸ Özgür Yazılım’a tüm kullanıcıları erişebilir.

    View Slide

  15. ÖZGÜR YAZILIM
    GNU DER Kİ…
    ▸ Herhangi bir amaç için yazılımı çalıştırma özgürlüğü (0 numaralı özgürlük).
    ▸ Her ne istiyorsanız onu yaptırmak için programın nasıl çalıştığını ögrenmek ve onu değiştirme
    özgürlüğü (1 numaralı özgürlük). Yazılımın kaynak koduna ulaşmak, bu iş için önkoşuldur.
    ▸ Kopyaları dağıtma özgürlüğü. Böylece komşunuza yardım edebilirsiniz (2 numaralı özgürlük).
    ▸ Tüm toplumun yarar sağlayabileceği şekilde programı geliştirme ve geliştirdiklerinizi (ve genel
    olarak değiştirilmiş sürümlerini) yayınlama özgürlüğü (3 numaralı özgürlük). Kaynak koduna
    erişmek, bunun için bir önkoşuldur.

    View Slide

  16. NASIL BAŞLARIZ?

    View Slide

  17. NASIL BAŞLARIZ?

    View Slide

  18. NASIL BAŞLARIZ?
    KİŞİSEL AÇIK KAYNAK KATILIMCILIĞIMIN EVRELERİ
    ▸ Üniversitedeki ödevlerimi USB ile taşımamak için GitHub üzerinden paylaştım.
    ▸ Sık kullandığım kod bölümlerini kütüphaneler haline getirdim.
    ▸ Deneysel (Proof of Concept) projeleri GitHub’da görünürlük sağlamak için atmaya
    başladım.
    ▸ Kullandığım başka yazılımları takip edip, issue’larına yazmaya başladım.
    ▸ Diğer projelere kod katkısı yapmaya başladım.
    ▸ Kendim projeler geliştirmeye çalıştım.

    View Slide

  19. NASIL BAŞLARIZ?

    View Slide

  20. NASIL BAŞLARIZ?
    TEMELDE NELERE İHTİYACIMIZ VAR?
    ▸ GitHub, GitLab, BitBucket, Azure DevOps, v.b. bir platform hesabı önkoşul.
    ▸ Demo
    ▸ Bir Sürüm Kontrol Sistemi (Git v.b.) kullanım bilgisi gerekiyor.
    ▸ Demo, GitHub ile Git arasındaki fark?
    ▸ İzinsiz kullanıma karşı bilinç için lisans tiplerini bilmemiz gerekiyor.

    View Slide

  21. HEDEF BULMAK

    View Slide

  22. HEDEF BULMAK
    DESTEKLENEBİLECEK AÇIK KAYNAK PROJELERİ NEREDE BULURUZ?
    ▸ GitHub’da birilerini takip etmeye başlayın. Onların aktivitelerinden haberdar olun.
    ▸ Kullandığınız bileşenlerden başlayabilirsiniz.
    ▸ İlginizi uyandıran, öğrenmek istediğiniz veya iş yapış tarzları hoşunuza giden projelerin
    issue board’larını, commit history’lerini, twitter hesaplarını takibe alabilirsiniz.
    ▸ Veya…

    View Slide

  23. HEDEF BULMAK
    acik-kaynak.org

    View Slide

  24. KATKIDA BULUNMAK

    View Slide

  25. KATKIDA BULUNMAK
    PROJELERİ BULDUK, NASIL KATKIDA BULUNABİLİRİZ?
    ▸ Proje README ve dokümantasyonunu okumak.
    ▸ Hata bulmak, bulguları bildirmek.
    ▸ Geliştirme yapmak, hata düzeltmek ve Pull Request oluşturmak.

    View Slide

  26. KATKIDA BULUNMAK
    KATKININ SOSYAL BOYUTU
    ▸ Bir proje/ürün katkı ekibinde yer almak
    ▸ Örnek: acik-kaynak.org’u 12 kişi geliştirdik
    ▸ Açık Kaynak Hackathonlar
    ▸ Örnek: acikhack.com

    View Slide

  27. TEŞEKKÜRLER
    /eserozvataf
    /eserozvataf /laroux
    /EserOzvataf

    View Slide