28
Özgür Yazılımlarla Sosyalleşme Cihan Okyay [email protected] @cihann Sunday, May 6, 12

Linux gunleri ytu

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Linux gunleri ytu

Özgür Yazılımlarla

SosyalleşmeCihan Okyay

[email protected]@cihann

Sunday, May 6, 12

Page 2: Linux gunleri ytu

Yazılım Geliştirici

Açık Kaynak Destekçisi

Python sever.

Ben Kimim?

Sunday, May 6, 12

Page 3: Linux gunleri ytu

Sosyal olmak!

Özgür yazılım toplulukları ve faydaları

Versiyon kontrol sistemleri

Sosyal kodlama (github, bitbucket vb.)

Sunum İçeriği

Sunday, May 6, 12

Page 4: Linux gunleri ytu

Sosyal olmak!

Sunday, May 6, 12

Page 5: Linux gunleri ytu

Geniş çevre (Mesela facebook’ta 1000 arkadaş)

Bu gece barda gönlüm hovarda :)

Sizce?

Nedir sosyal olmak?

Sunday, May 6, 12

Page 6: Linux gunleri ytu

Topluma ait, toplumla ilgili, topluma bağlı olmak demektir sosyal olmak.

Kapsamlı olmak, niteliğini sürekli genişletmeye istekli ve hevesli olmak demektir.

Toplumda soluk almak ve var olmak demektir.

Sosyalleşme; bir nevi öğrenme sürecidir aslında.

Sunday, May 6, 12

Page 7: Linux gunleri ytu

Zevk

Politik idealler

Gıpta edilmek

Mesleki itibar

Özgür Yazılım toplulukları ve faydaları

Neden Özgür Yazılım geliştiriyoruz?

Minnettarlık

Para

Daha iyi bir program kullanmak istemek

Sunday, May 6, 12

Page 8: Linux gunleri ytu

Özgür yazılım geliştiricileri ve kullanıcılarının hiçbir ırk, inanç, dil ve kültür farkı gözetilmeden bulunduğu güçlü bir sosyal ortamdır.

Özgürce kaynak kod paylaşılan ve kullanılan bu ortamda bilgi paylaşımı üst seviyededir.

Tamam ama topluluk nedir?

Sunday, May 6, 12

Page 9: Linux gunleri ytu

Sosyal olabilirim!

Kimin ne izlediğini öğrenmek yerine kendimi geliştirebilirim.

Kurallara sahip olan bu topluluklar sayesinde daha etkili iletişim kurabilirim.

Sadece teknik konuda değil, iletişim konuların da bile yararlı.

Bana faydası ne?

Sunday, May 6, 12

Page 10: Linux gunleri ytu

Uygulamamızın kaynak kod yönetimini sağlar.

Versiyonların takibini sağlar.

Takım halinde çalışırken kod paylaşımını kolaylıkla yapabilmenizi sağlar.

Kodların güvenli şekilde saklanmasını sağlar.

Biraz teknik konuşalım

Versiyon kontrol sistemi nedir?

Sunday, May 6, 12

Page 11: Linux gunleri ytu

Bir adet usb stick

E-posta hesabı

Yeterince sabır!

Neler gerekli?

Sunday, May 6, 12

Page 12: Linux gunleri ytu

Sunday, May 6, 12

Page 13: Linux gunleri ytu

Bir adet versiyon kontrol sistemi

Alışmak için biraz zaman.

Gerçekten neler gerekli?

Sunday, May 6, 12

Page 14: Linux gunleri ytu

Subversion

Mercurial

CVS

GIT

...

Seçeneklerim neler?

Sunday, May 6, 12

Page 15: Linux gunleri ytu

Açık kaynak kodlu bir versiyon kontrol sistemi

Dosyaları merkezi bir depoda tutar.

CVS’in yetersizlikleri üzerine geliştirilmiştir.

Subversion

Sunday, May 6, 12

Page 16: Linux gunleri ytu

Diğer bir versiyon kontrol sistemi.

Tabi açık kaynak kodlu

1986‘dan beri geliştiriliyor. Köklü bir proje

CVS (Concurrent Version Systems)

Sunday, May 6, 12

Page 17: Linux gunleri ytu

Dağıtık Yapı (Distributed)

Python ile yazıldı

Bitbucket - http://bitbucket.org

Mercurial

Sunday, May 6, 12

Page 18: Linux gunleri ytu

GIT

BitKeeper kullanan Linux çekirdeği projesinin lisans sorunları yüzünden Linus Torvalds oturup GIT’i yazıyor.

Sunday, May 6, 12

Page 19: Linux gunleri ytu

Dağıtık Yapı (Distributed)

Performans

Kolay dallanma işlemleri (branching)

Github - http://github.com

Özellikleri, Artıları

Sunday, May 6, 12

Page 20: Linux gunleri ytu

Yazılım geliştiriciler için sosyal ağ fikri

Dünya’nın bir ucundaki geliştirici ile daha eğlenceli temas kurabilme.

Social Coding!

Sunday, May 6, 12

Page 21: Linux gunleri ytu

Github

Sunday, May 6, 12

Page 22: Linux gunleri ytu

Depo oluşturmak

Sunday, May 6, 12

Page 23: Linux gunleri ytu

Komut sistemi

:)

Sunday, May 6, 12

Page 24: Linux gunleri ytu

Depoyu klonlama

Sunday, May 6, 12

Page 25: Linux gunleri ytu

git status (o an çalışılan depo üzerinde yapılan değişiklikleri gösterir)

git add (Değişiklik yapılan dosyaları commit için hazırlama komutudur)

git commit (Dağıtık bir sistem olan git sisteminde yerelinize commit edilmesini sağlayan komuttur)

Bir kaç komut daha

Sunday, May 6, 12

Page 26: Linux gunleri ytu

deneme isimli bir depo oluşturalım.

Yerelimize projeyi klonlayalım.

Değişiklik yapıp commit edelim.

Canlı örnek yapalım

Sunday, May 6, 12

Page 27: Linux gunleri ytu

Bir depoya destek vermeye başlamak için fork ediyoruz.

Yaptığımız değişiklikleri pull request yardımıyla proje sahibine iletebiliyoruz.

Örnek yapalım.

Fork ve Pull Request kavramları

Sunday, May 6, 12

Page 28: Linux gunleri ytu

Sorular?

Sunday, May 6, 12