Üye ol
Şifremi unuttum | Onay kodum gelmedi
Yardım

Nasıl Açık Kaynak Kod Yazılımcısı Olunur?
mahonick
Üye
mahonick

Puan: 1768.5

mahonick şu anda çevrimdışı
Gönderilme Tarihi: 19 Aralık 2009 00:08:40

Nasıl Açık Kaynak Kod Yazılımcısı Olunur?
Yazan:
Deniz Akku¸s
2002–03–01 12:09:24
Özet
Bu yazının amacı çe¸sitli programlama tekniklerini anlatmak de^ gil, genelde ba¸slangıçta göz ardı edilip
daha sonra hayal kırıklıklarına ve hatta projenin ba¸sarısızlı ^gına yol açan çe¸sitli faktörleri sıralamaktır.
Konu Ba¸ slıkları
1. Açık Kaynak Kod Yazılımcısı Olmak 'Için Ne Gerekli? . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Nereden Ba¸slanır? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
3. Kendi 'Ihtiyacınıza Cevap Veren Bir Konu Seçin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
4. Ama Benim Hiç Bir 'Ihtiyacım Yok? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
5. Konumu Buldum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
6. Mevcut Projelerin Hiç Biri Benim 'Istedi ^ gimi Yapmıyor . . . . . . . . . . . . . . . . . . . . . . . . . 3
7. Hemen Bir Proje Kurup Gönüllü Arayayım . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
8. Yazdım, S¸ imdi Ne? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
9. Proje Olu¸sturmak . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
10. Bir Lisans Seçtiniz Mi? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
11. Yazılımınız Derlenebilir mi? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
12. Yazılımınıza Sürüm Numarası Verin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
13. Web Siteniz var mı? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
14. Bir Posta Listeniz Var Mı? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
15. Yazılımınızı ve Web Sitenizi Çok Dilli Hazırlayın . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
16. Ben 'Ingilizce Bilmiyorum, Yazılımımı da Salt Türkler Kullansın 'Istiyorum . . . . . . . . . . . . . . 6
17. 'Ingilizcem Kullanıcılarla Yazı¸smak vb 'Için Yeterli De^ gil . . . . . . . . . . . . . . . . . . . . . . . . 7
18. Yazılımınızı Duyurun . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
19. Bunların Hepsini Yaptım ve Bir S¸ ey Olmuyor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
20. Gönüllülerim Olu¸stu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
21. Sıkıldı ^ gınız Zaman Devredin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
22. Projenin Hayat Çizgisi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Nasıl Açık Kaynak Kod Yazılımcısı Olunur?
Geçmi¸s
1.0 2002-03-01 12:09:24 DA
'Ilk sürüm.
Yasal Uyarı
Bu belgenin, Nasıl Açık Kaynak Kod Yazılımcısı Olunur?, 1.0 sürümünün telif hakkı © 2002 Deniz
Akku¸s’a aittir. Bu belgeyi, Free Software Foundation tarafından yayınlanmı¸s bulunan GNU Özgür Belgeleme
Lisansının 1.1 ya da daha sonraki sürümünün ko¸sullarına ba^ glı kalarak kopyalayabilir, da^ gıtabilir
ve/veya de^ gi¸stirebilirsiniz. Bu Lisansın bir kopyasını http://www.gnu.org/copyleft/fdl.htmlBağlantı dışarı gidiyor
adresinde bulabilirsiniz.
BU BELGE “ÜCRETS'IZ” OLARAK RUHSATLANDI ^ GI 'IÇ'IN, 'IÇERD'I
^G
'I
B'ILG'ILER 'IÇ'IN 'ILG'IL'I KANUNLARIN
'IZ'IN VERD'I
^G
'I
ÖLÇÜDE HERHANG'I B'IR GARANT'I VER'ILMEMEKTED'IR. AKS'I YAZILI
OLARAK BEL'IRT'ILMED'I
^G
'I
MÜDDETÇE TEL'IF HAKKI SAH'IPLER'I VE/VEYA BAS¸ KA S¸ AHISLAR BELGEY
'I
“OLDU ^ GU G'IB'I”, A ¸ S'IKAR VEYA ZIMNEN, SATILAB'IL'IRL'I
^G
'I
VEYA HERHANG'I B'IR AMACA
UYGUNLU ^ GU DA DAH'IL OLMAK ÜZERE H'IÇB'IR GARANT'I VERMEKS'IZ'IN DAG^ ITMAKTADIRLAR.
B'ILG'IN'IN KAL'ITES'I 'ILE 'ILG'IL'I TÜM SORUNLAR S'IZE A'ITT'IR. HERHANG'I B'IR HATALI B'ILG'IDEN
DOLAYI DOG^ AB'ILECEK OLAN BÜTÜN SERV'IS, TAM'IR VEYA DÜZELTME MASRAFLARI S'IZE A'ITT'IR.
'ILG'IL'I KANUNUN 'ICBAR ETT'I
^G
'I
DURUMLAR VEYA YAZILI ANLA ¸SMA HAR'IC'INDE HERHANG'I B'IR
¸ SEK'ILDE TEL'IF HAKKI SAH'IB'I VEYA YUKARIDA 'IZ'IN VER'ILD'I
^G
'I
¸ SEK'ILDE BELGEY'I DE^G
'I
S¸ T'IREN
VEYA YEN'IDEN DA ^ GITAN HERHANG'I B'IR K'IS¸ 'I, B'ILG'IN'IN KULLANIMI VEYA KULLANILAMAMASI
(VEYA VER'I KAYBI OLUS¸ MASI, VER'IN'IN YANLIS¸ HALE GELMES'I, S'IZ'IN VEYA ÜÇÜNCÜ S¸ AHISLARIN
ZARARA UG^ RAMASI VEYA B'ILG'ILER'IN BAS¸ KA B'ILG'ILERLE UYUMSUZ OLMASI) YÜZÜNDEN
OLU¸SAN GENEL, ÖZEL, DO ^ GRUDAN YA DA DOLAYLI HERHANG'IB'IR ZARARDAN, BÖYLE B'IR
TAZM'INAT TALEB'I TEL'IF HAKKI SAH'IB'I VEYA 'ILG'IL'I K'I ¸ S'IYE B'ILD'IR'ILM'IS¸ OLSA DAH'I, SORUMLU
DE^G'ILD'IR.
Tüm telif hakları aksi özellikle belirtilmedi ^ gi sürece sahibine aittir. Belge içinde geçen herhangi bir terim,
bir ticari isim ya da kuruma itibar kazandırma olarak algılanmamalıdır. Bir ürün ya da markanın kullanılmı¸s
olması ona onay verildi ^ gi anlamında görülmemelidir.
http://belgeler.orgBağlantı dışarı gidiyor Linux Kitaplı ^ gı 2 / 9
Nasıl Açık Kaynak Kod Yazılımcısı Olunur?
1. Açık Kaynak Kod Yazılımcısı Olmak 'Için Ne Gerekli?
Aslında ö^grenme yetene^ gi, merak ve sabırdan ba¸ska hiç bir ¸sey gerekli de^ gil. Bir bilgisayar, üzerinde açık kaynak
kod geli¸stirmeniz için gerekli araçlar minimum gereksinimler. Internet’e eri¸sim bunlardan sonra gelen ikinci
en önemli gereksinim. Geriye kalan teknik bilgileri (çe¸sitli programlama dilleri, teknikleri, i¸sletim sistemleri vb)
bilmeniz elbette faydalı olur, fakat bunları ö^grenebilme imkanı da açık kaynak kodlu sistemlerin iyi taraflarından
birisi.
2. Nereden Ba¸slanır?
En iyi ba¸slama yöntemi, ihtiyaç duydu^gunuz bir ¸sey olmasıdır. Bu, ne kadar ufak olursa, o kadar iyi. Çok büyük
projelere ba¸slamak, bunları tasarlamak elbette güzel, fakat özellikle ba¸slarda yapılabilir minimumlarda gezinmek
en do^grusu. Öbür türlü i¸sin yükünü kaldıramayabilir, yarı yolda bıkıp bırakabilirsiniz. E^ger i¸s ve özel hayatınızda
açık kaynak kodlu sistemleri (örne^gin Linux) kullanıyorsanız, "¸su da olsaydı" dedi^ giniz noktalar olmu¸stur. Buralardan
ba¸slamak en do^grusudur. Gerçek bir ihtiyacınıza cevap veren bir yazılım, hem sizin ilginizi uzunmüddet
çeker, hem de sistem analizini do^gru yapma fırsatınız olur.
3. Kendi 'Ihtiyacınıza Cevap Veren Bir Konu Seçin
Bir kaç sebepten dolayı açık kaynak kodlu yazılım geli¸stirebilirsiniz: Bir ¸seye ihtiyacınız vardır ve bulamazsınız,
çözüm yoktur. Veya bir hobi olarak bu i¸sle u^gra¸smak istersiniz. Burada zor olan ¸sey aslında hobi olarak u^gra¸smak.
Çünkü yazılımı geli¸stirmek ve daha sonra ayakta tutarak devam ettirmek uzun soluklu bir i¸s. Dolayısıyla gerçekten
kullanaca^ gınız, ihtiyaç duydu^gunuz bir ¸sey bulmaya gayret edin. Sizin yazıcınız Linux üzerinde desteklenmiyor
olabilir. Kurban ve Ramazan Bayram’larının tarihlerini ¸sa¸sırıyor ve "iki hafta önce haberim olsa da kart
atma imkanım olsa" diyor olabilirsiniz. 'Ilk Internet üzerinde kamera yayını (webcam), yazılımcıların laboratuarın
öbür tarafında duran kahve makinasına kadar gidip bo¸s bulduklarından dolayı yazılmı¸stı ve kahve makinasını
Internet’te gösteren bir kamera düzene^ gi idi. Sizin ihtiyacınıza cevap verdikten sonra gerisinin önemi yok.
E^ger bankacı de^ gil iseniz, banka sistemleri ile u^gra¸smıyorsanız, ilk açık kaynak kodlu projeniz için Linux üzerinde
bir banka sistemi yazmayı tercih etmek, %99 ba¸sarısızlıkla sonuçlanacak bir projeye ba¸slamak demektir. Hem
proje fazla büyük (bankacılık sistemleri milyonlarca satır kod içerir), hem de sizin bu projenin sistem analizini
yapacak bilginiz eksiktir.
4. Ama Benim Hiç Bir 'Ihtiyacım Yok?
Emin misiniz? Muhakkak vardır, biraz dü¸sünün. Yok sahiden aklınıza hiç bir ¸sey gelmiyor ise, en sık kullandı ^ gınız
yazılımın geli¸stirildi ^ gi web sitesine gidin ve yapılacak i¸sler listesine (TODO List) bakın. Oradaki i¸slerden birini
yapmayı deneyin. Mevcut bir yazılım üzerinde de^ gi¸siklikler yapmak tecrübe kazanmak için iyi bir yoldur.
5. Konumu Buldum
Tebrikler. S¸ imdi lütfen Google(B2), SourceForge(B3) ve Freshmeat(B4)’e gidin ve bu konudaki yazılımları arayın.
Yazmak istedi ^ giniz yazılım birileri tarafından zaten yazılmı¸s ve yaygın kullanımda olabilir. Veya do^gru ba¸slamı¸s
ve do^gru yolda (sizin gitmek istedi ^ giniz yolda) giden bir çalı¸sma grubu olabilir. Konunuzla ilgili buldu^gunuz
yazılımları gözden geçirin. 'Isteklerinize az de^ gi¸siklik ile cevap verebiliyorsa, o projeye katılın ve yazılıma o
de^ gi¸siklikleri katın. Türkçe olması, ufak tefek görüntü de^ gi¸siklikleri, hatta ciddi de^ gi¸siklikler katkı olarak verilebilir.
Bu ¸sekilde katkılarda bulunmak sizi küçültmez. Aksine, mevcut bir yapı içerisinde ciddi katkılarda bulunmak,
sıfırdan bir proje geli¸stirmekten çok daha kolaydır ve ilerideki projeleriniz için ciddi tecrübe edinirsiniz.
http://belgeler.orgBağlantı dışarı gidiyor Linux Kitaplı ^ gı 3 / 9
Nasıl Açık Kaynak Kod Yazılımcısı Olunur?
6. Mevcut Projelerin Hiç Biri Benim 'Istedi ^ gimi Yapmıyor
O zaman siz bir proje ba¸slatacaksınız. Uzun, bir hayli yalnız ve sıkıntılı bir yoldur, ama yapılamaz bir ¸sey de^ gildir.
7. Hemen Bir Proje Kurup Gönüllü Arayayım
Bulamazsınız. Daha önce ciddi ba¸sarılara imza atmı¸s (C dilini geli¸stiren yazar vb) ki¸siler bile sıfırdan ve planlama
a¸samasında ciddi bir gönüllü grubu toplayamazlar. Gönüllüler ne yapacak? Hiç beyni olmayıp çok sayıda
midesi olan tek canlı komitelerdir. :–) Komite ile tasarım yapılmaz. Protokol olu¸sturan konsorsiyumlar bile bireysel
olarak protokol örneklerini hazırlar, bu örneklerin üzerinde çalı¸sıp hepsinin iyi taraflarını toplayarak protokolü
olu¸stururlar.
'Ilk ba¸sta kendiniz oturup yazılımınızı iyi kötü yazacaksınız. Her¸seyi hemen yapması gerekmez, fakat en azından
yapmak istedi ^ gi ¸seylerin bir kısmını yapar hale getirin. Yapmak istedi ^ giniz di ^ger ¸seylerin mümkün oldu^guna emin
olun – bazen yazılımın yapısı bazı ¸seyleri imkansız kılabilir. Yazılımınız en azından bir "beta" kalitesine gelsin.
8. Yazdım, S¸ imdi Ne?
Kullanıyor musunuz? Bir ihtiyacınıza cevap vermek üzere yola çıkmı¸stınız. 'Iyi kötü kullanmaya ba¸sladıysanız,
artık bunu bir proje haline getirmeyi dü¸sünmeniz gerekebilir.
9. Proje Olu¸sturmak
Neden Internet’e Koyayım?
Bunun çok açık seçik nedenleri yok. E^ger sizin i¸sinize yarayan bir ¸sey ise, ba¸skalarının da i¸sine yarayabilir.
Bir kullanıcı kitlesi olu¸sturmak hem proje geli¸siminde size yardımcı olacak gönüllü grubunu bulmak için, hem
de yazılımınız hakkında hata raporları gibi sizin tek ba¸sınıza kullanı¸sınızda bulmanız zor olan ¸seyleri bulmakta
i¸sinize yarayabilir. Daha önce faydalandı^ gınız açık kaynak kodlu yazılımlara bir kar¸sılık olarak bunu kullanıcılara
sunmak isteyebilirsiniz. Belli bir miktar "¸san ¸söhret" kazanabilirsiniz.
10. Bir Lisans Seçtiniz Mi?
Yazılımınızı dı¸s dünyaya sundu^gunuz zaman hangi lisans altında sunaca^gınıza karar vermeniz gerekli.
Benim tavsiyem GPL(B5). Bir yazılımı GPL altında nasıl yayınlayaca^ gınız hakkında 'Ingilizce bilgi burada mevcut(
B6). Kısaca, yazılımın her dosyasına bir telif hakkı ibaresi ve bu yazılımın GPL altında yayınlandı ^gına dair
bir iki paragraf koymanız ve GPL’i paketinizin içerisine ayrı bir dosya halinde koymanız gerekli. Bunlar 'Ingilizce
olmak zorunda.
Yani her dosyanıza:
/* Copyright 2002 Adım Soyadım
This program is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free Software
Foundation; either version 2 of the License, or (at your option) any later
version.
This program is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
http://belgeler.orgBağlantı dışarı gidiyor Linux Kitaplı ^ gı 4 / 9
Nasıl Açık Kaynak Kod Yazılımcısı Olunur?
You should have received a copy of the GNU General Public License along with
this program; if not, write to the Free Software Foundation, Inc., 59 Temple
Place, Suite 330, Boston, MA 02111–1307 USA
*/
¸seklinde bir telif hakkı ve lisans bildirim ibaresi eklemeniz gerekli. Ayrıca, GPL’in orjinal metni(B7)ni yazılımınızın
içerisine ayrı bir dosya olarak koymanız gerekli. GPL’in Türkçe çevirisi(B8)ni okumak isteyebilirsiniz, fakat ba^glayıcı
olan 'Ingilizce metindir, yazılımlarınız içerisine 'Ingilizce metni koymanız gereklidir.
Bu i¸slemleri yaptı ^ gınız zaman yazılımınız için telif hakkı almı¸s ve yazılımınızın da^ gıtımını GPL’in koruması altına
sokmu¸s olursunuz.
11. Yazılımınız Derlenebilir mi?
Yazılımınızı rahatça derlenip kurulabilecek hale getirin. Kimse sizin yazılımınızı derlemek için gereken seksen
adımı yapmaz. ./configure ; make ; make install en fazla bekleyebilece^ giniz i¸slemdir. Bunları
nasıl yapaca^ gınızı bilmiyorsanız, autoconf ve make paketleri hakkında bir ¸seyler ö^ grenin. E^ger yazılımınızı
yaygın da^gıtımlardan birinin paket sistemi (RPM, apt vb) ¸seklinde da^ gıtabiliyorsanız, bunu tercih edin.
E^ger yazılımınız derlenmeyen bir dilde yazılmı¸s ise – perl, PHP vb, yine de uygun ve anla¸sılır bir kurma yöntemi
olmalıdır. Genelde paketlerin içinden README (benioku) ve INSTALL (kurma) dosyaları çıkar, bu dosyalarda
paketin ne oldu^gu, ne i¸s yaptı ^ gı, nasıl kurulaca^ gı hakkında bilgiler bulunur.
12. Yazılımınıza Sürüm Numarası Verin
Bunu ilk ba¸sta yapın ki, daha sonra sorun olmasın. Yazılımınıza ilk ba¸sta 0.1 veya 0.9 (ne kadar kullanılabilir
vaziyette Internet’e çıkarıyorsanız) vermek faydalıdır. Oturmu¸s olan ilk sürüm 1.0 olur, ufak tefek de^ gi¸siklikler
noktadan sonra olur. Yani 1.2, 1. sürümden yapı olarak çok farklı de^ gil, ufak tefek de^ gi¸siklikler içeriyor manasına
gelir. 10 yıllık Linux çekirde^ ginin 2. sürümde oldu^gunu dü¸sünerek sürüm numaralarınızda fazla bol keseden
davranmayın..
13. Web Siteniz var mı?
Yazılımınızı ba¸skalarının kullanmasını istiyorsunuz. Bunu sa^glamanın ilk adımı yazılımınızın Internet’te bir sayfası
olmasını sa^glamak. Yazılımınızın Internet’te kendine ait bir sayfası olmaması için hiç bir neden yok. Sourceforge(
B9) veya Savannah(B10)’ta bir proje açmak size bir web sitesi de sa^ glar ve maliyeti sıfırdır. Üstelik, ihtiyaç
duyaca^ gınız e–posta listesi, CVS sunucusu, FTP sunucusu gibi hizmetleri de veriyorlar. Veya Türk kaynaklı
gruplardan yardım alabilirsiniz: Linux Kullanıcıları Derne^ gi(B11), AçıkKod Org(B12) gibi gruplar Türk açık kaynak
kod projelerine yardım ediyorlar. Size de bir web sitesi ve ihtiyaç duydu^gunuz di ^ger imkanları sa^glayabilirler.
Temasa geçin. E^ger tamamen kendinize ait olmasını istiyorsanız, Internet’te bir alan adını kaydettirmenin maliyeti
yakla¸sık 35 USD, web hizmetlerini bir yıllık kiralamanın bedeli ucuzunda yıllık 36 USD’dir. Geocities vb gibi bol
miktarda reklam barındıran ve esas olarak ki¸sisel web siteleri için hazırlanan bedava hizmetleri kullanmayın.
Proje ba^glamında olacak olan indirme (download) trafi^ gi bu siteler tarafından ho¸s kar¸sılanan bir ¸sey de^ gil. Size
web hizmeti ve hatta daha fazlasını bedava verecek olan bir sürü grup var Internet’te, onlarla temasa geçin.
Web sitenizin süslü püslü olması, arka planında kullanıcı giri¸sleri, chat sunucusu vb olması gerekmiyor. Kolay
okunabilir, sade, amaca yönelik bir web sitesine ihtiyacınız var. Amacınız ise, bir ¸sekilde buraya ula¸san bir
potansiyel kullanıcıya sizin yazılımınızın onun derdine nasıl deva olaca^ gını anlatmak.
Bu amaca yönelik olarak web sitenizde yazılımınızın ne i¸s yaptı ^ gını, e^ger ba¸ska paket/yazılımlara gereksinim
duyuyorsa bunların ne oldu^gunu anlatmalısınız. E^ger çe¸sitli standartlar, protokoller ile uyumlu iseniz bunlardan
http://belgeler.orgBağlantı dışarı gidiyor Linux Kitaplı ^ gı 5 / 9
Nasıl Açık Kaynak Kod Yazılımcısı Olunur?
bahsetmelisiniz. Ço^gu yazılım web sitesi, kendi konusundaki di ^ger alternatif yazılımlar hakkında da bilgi ve link
verir.
Yazılımınızı indirmeleri için kolayca anla¸sılır bir link vermelisiniz.
14. Bir Posta Listeniz Var Mı?
Yazılımınızı kullananlar için ilk ba¸sta bir tek e–posta listesi açın. Buranın fazla suskun/sessiz olmasına aldırı¸s
etmeyin. 'Ikide birde "madem kullanıyorsunuz, insan bir haber verir yahu" tarzında e–posta atmayın. Yazılımınızın
yeni bir sürümü çıktı ^ gı zaman web sitenize yerle¸stirdikten sonra buraya bir duyuru geçin. Kullanıcılardan gelen
soruları cevaplayın. Yazılımda de^ gi¸siklik taleplerini en azından okuyun. Bu de^ gi¸siklik taleplerinin hepsini hemen
yapmak zorunda de^ gilsiniz, fakat kullanıcılarınızın ne istedi ^ gini bilmek, yazılımın nasıl ¸sekillenece^gine karar
vermek için faydalıdır.
'Ileride posta listelerinizi ço^ galtabilir ve anonslar (yeni sürüm vb anonslar), kullanıcı listesi (yeteri kadar popüler bir
yazılım olursa, kullanıcılar birbirlerine yardım ederler, bırakın etsinler) ve geli¸stirme listesi (gönüllüleriniz) olarak
ayrı listelere bölünebilirsiniz. Ba¸stan bunları uygulamak listelerin hiç birisinin hayata geçmemesine sebep olabilir.
Trafik çok artıp insanlar farklı listeler talep edene kadar tek listede kalın.
15. Yazılımınızı ve Web Sitenizi Çok Dilli Hazırlayın
Açık kaynak kod felsefesinin bir uzantısı da yerelle¸smedir. Yazılımınızı 'Ingilizce hazırlayıp en fazla kullanıcı
kitlesi olan gruba hitap etmek isteyebilirsiniz. Ama bir yazılımı çok dilli hazırlamak bundan daha zor de^ gildir.
Kullanaca^ gınız araç seti gettext. Gettext(B13)’i kullanırken yazılımınızın içerisine serpi¸stirdi ^ giniz dizgeleri normal
C dilinin dı¸sında, biraz farklı bir yöntemle yazıyorsunuz. Ondan sonra yazılımınızı gettext araçlarından geçirip
POT dosyasını elde ediyorsunuz. POT dosyası yazılımın çevrilecek dizgelerini içerir. Yazılımınızı gettext kitaplı ^ gı
ile ba^ gladı ^ gınız zaman, gettext, sistemde kurulu olan öntanımlı dil hangisi ise, onun çeviri dosyasını bulup
kullanmaya gayret eder. E^ger yok ise, 'Ingilizce’sini kullanır. POT dosyası elde ettikten sonra, bunun 36 dile
çevrilmesi için GNU Çeviri Projesi(B14) ile temasa geçebilirsiniz <translation (at) iro.umontreal.ca> . Açık kaynak
kodlu tüm yazılımlar kabul ediliyor ve çe¸sitli dillere (Türkçe dahil) gönüllüler tarafından çevriliyor.
Web sitenizin çevrilmesi için benzer bir çeviri projesi yok. Fakat kullanıcılarınız içerisinden bunu yapmak isteyecek
olan gönüllüler çıkabilir. Bu tarz gönüllülere te¸svik edici olun (bol te¸sekkür edin, adlarından web sitenizde
eme^ gi geçenler olarak bahsedin).
Yazılımınızı salt 'Ingilizce olarak hazırlamanızın size hiç bir faydası yoktur. En azından yerelle¸sebilecek (gettext
kullanır) vaziyette hazırlayın ve çevrilmesi için gerekli temasları yapın. Gönül elbette hem 'Ingilizce, hem de
Türkçe hazırlamanızı arzu eder. Bu ülkede 'Ingilizce bilmeyen binlerce bilgisayar kullanıcısı var.
16. Ben 'Ingilizce Bilmiyorum, Yazılımımı da Salt Türkler Kullansın
'Istiyorum
'Ingilizce bilmeme tarafına GNU–TR Türkçe Çeviri Grubu(B16) yardım edebilir. Yani sizin Türkçe yazılımınızı ve
web sitenizi 'Ingilizce’ye çevirecek gönüllüler çıkabilir. Temasa geçin.
Yazılımınızı salt Türklerin kullanmasına gelince.. Maalesef ülkemizde açık kaynak kodlu yazılım mantı^ gı bir
hayli yeni. Yazılımınıza yeterli bir kullanıcı kitlesi ve bunlardan çıkacak gönüllü grubu bulamayabilirsiniz. Ba¸ska,
biraz da pragmatik bir problem de, marjinalize olmak. Çok kullanıcıya sahip yazılımlar yaygınla¸sıyor, gönüllüler
tarafından düzeltilip geli¸stiriliyor ve yeteri kadar yaygınla¸sırsa da^ gıtımların içerisinde yer alıyor. Günün sonunda
standart bu ¸sekilde olu¸suyor. Türkiye’deki kullanıcı kitlesi yeterli kadar büyük olmadı^ gı için burada 100 ki¸si
tarafından kullanılan bir yazılım, kendinden iki–üç yıl sonra ba¸slayan bir enternasyonal efor tarafından zaman
http://belgeler.orgBağlantı dışarı gidiyor Linux Kitaplı ^ gı 6 / 9
Nasıl Açık Kaynak Kod Yazılımcısı Olunur?
içerisinde geçilir ve o 100 ki¸silik kullanıcı kitlesini de kaybeder. En iyisi yazılımınızı çok dilli olabilecek ¸sekilde
hazırlamak.
17. 'Ingilizcem Kullanıcılarla Yazı¸smak vb 'Için Yeterli De^ gil
Bu konuda rahat olun. 'Ingilizce’yi iyi kullanmaya ülkece gere^ginden fazla önem veriyoruz. Bir ¸sekilde meramınızı
anlatabiliyorsanız, grameri falan önemsemeyin. Sonuçta kullanıcılar sizinle anla¸sabilmek için u^gra¸sacaklar. Siz
de^ gil. Çok bunalırsanız 'Ingilizce bilen bir Türk kullanıcınızdan yardım istersiniz.
18. Yazılımınızı Duyurun
Bir web sitesi hazırladınız, bir posta listesi açtınız. S¸ imdi yazılımınızı duyurmalısınız. Eg^er konu
ile ilgili bir haber grubu(B17) var ise oraya bir duyuru yapın. Freshmeat(B18)’e duyurun. Linux Kullanıcılar
Derne^ gi’nin web sitesi(B19)ne bir haber yollayın. Türk Linux Listesi <linux (at) linux.org.tr> ’ne yazın.
E^ger benzer yazılımlar için Google(B21)’da bir kategori var ise, o kategoriye DMOZ(B22)’dan ekleme yapın.
E^ger yazılımınız KDE(B23) veya GNOME(B24) kullanan bir grafik yazılımı ise, onlara duyurun. Yeteri kadar
yaygınla¸sırsa, KDE veya GNOME’un "desteklenen" yazılımlarından biri haline gelebilirsiniz.
Yazılımınız her derde deva bile olsa, kullanıcılar varlı ^ gını bilmez ise kullanamazlar.
19. Bunların Hepsini Yaptım ve Bir S¸ ey Olmuyor
Bu i¸sler zaman alır. Genelde bir yazılımın kullanıcı kitlesine yayılmaya ba¸slaması neredeyse bir yıl sürüyor. Yani
siz yukarıdaki adımları yapıp duyurduktan bir yıl kadar sonra geni¸s kitle tarafından "bu i¸si yapan bir yazılım vardı"
diye bilinmeye ba¸slar.
Yazılımınız yakla¸sık 2–3 bin defa indirildikten sonra bir iki tane gönüllü yardımsever çıkar ve "¸surasına ¸sunu
ekledim, kabul eder misiniz" diye sorar. Hemen gönüllülerin olu¸sup heykelinizin bir meydana dikilmesini beklemeyin.
Siz bu güne kadar kullandı ^ gınız yazılımların kaçına gönüllü olarak bir katkıda bulundunuz?
Bir veya iki yıl kadar bir süre yazılımınızın bütün geli¸stirmesini yalnız ba¸sınıza siz yapacaksınız. Bu zaman
zarfında yava¸s yava¸s bir iki ki¸si ortaya çıkar. Bunlar genelde projenize destek olayım diye ortaya çıkmaz, hata
bildirir. Siz bu hatayı çözersiniz. Daha sonra bir hata daha bildirir, çözümünü beraberinde yollar. Siz bunu
eklersiniz. Yava¸s yava¸s aranızda bir ili¸ski olu¸sur. Bu ili¸ski zaman içerisinde "gel beraber geli¸stirelim"e gidebilir.
Sabırlı olun.
20. Gönüllülerim Olu¸stu
Tebrikler. Çok az sayıda projenin ba¸sarabildi ^ gi bir noktaya geldiniz. Bu noktada CVS kullanmak (aynı kaynak
kodunu birden fazla ki¸sinin yarı ba^gımsız de^ gi¸stirebilmesi için), sürüm tarihleri belirlemek gibi yöntemleri kullanmaya
ba¸slayacaksınız. Birden fazla ki¸si ile çalı¸smak için bunlar gerekli teknik yöntemler. Geri kalanı ise insan
ili¸skileri tarafı ve çok önemli.
Kar¸sınızdaki ki¸silerin GÖNÜLLÜ oldu^gunu unutmayın. 'Insanlardan bir ¸sey talep ederken hep nazik olun. Bir
görev da^ gıtımı yaptı ^ gınız ve bu da^gıtıma uyulmadı^ gı zaman sinirlenmeyin. 'Insanların yapmak istedikleri ¸seyleri
yapmalarına izin verin. Bol miktarda te¸sekkür ve gönüllülerden bahsetmek sizi küçültmez, yüceltir. 'Insanların
size katkıda bulunmalarına kar¸sılık verebilece^ giniz tek ¸sey kredi. Katkıda bulunanların isimlerinden bahsedin.
README dosyanıza katkılarını listeleyin. Web sitenize isimlerini koyun. Gönüllülerinizin yazılımınız konusunda
sizin kadar becerikli olabilmelerini sa^glamak için gereken bütün bilgiyi verin. Payla¸sımcı olun. 'Ilk ba¸slarda gönüllülerle
bir i¸si yapmak, kendi ba¸sınıza yapmaktan daha uzun sürer ve daha zordur. Fakat sabrederseniz, ileride
kendi ba¸sınıza yapamayaca^ gınız kadar çok ¸seyi yapma imkanını elde edersiniz.
http://belgeler.orgBağlantı dışarı gidiyor Linux Kitaplı ^ gı 7 / 9
Nasıl Açık Kaynak Kod Yazılımcısı Olunur?
21. Sıkıldı ^ gınız Zaman Devredin
Yazılımınız sizin bir ihtiyacınıza cevap vermek için hayata ba¸slamı¸s idi. Bir gün bu ihtiyacınızın üzerinde yeteri
kadar u^gra¸stı ^ gınızı dü¸sünebilirsiniz. O ihtiyacınız kalmamı¸s olabilir. E^ger yeteri kadar payla¸sımcı davranmı¸s iseniz,
gönüllüleriniz arasında yazılımı sizin kadar bilen, sizin güvendi^ giniz birileri olacaktır. Kendisi ile temasa
geçin ve yazılımınızın proje liderli ^ gini devredin. 'Ilginizi kaybetti ^ginizden dolayı ölmesine müsaade etmeyin.
Bugüne kadarki çabalarınız, sizin bireysel eme^ginizden do^gan bir ¸seyin yaygınla¸sması ve kendi ba¸sına bir
hayat kazanmasını sa^glamak için idi. Bu hayatın devam etmesini sa^glayın. Bırakın, sizden daha iyi yapan birisi
çıkarsa, o devam ettirsin.
22. Projenin Hayat Çizgisi
Do^gu¸s: 'Ihtiyaç
'Ihtiyaca cevap verecek bir alternatifin olmaması
Ba¸slangıç
Kendi ba¸sınıza, ihtiyacınızı kar¸sılayacak bir yazılım geli¸stirmek.
Kamusal Ortama Geçi¸s Hazırlı ^ gı
1. Yazılımınızı temizlemek. Kaynak kodunuza açıklamalar koymak. Dizin yapınızı elden geçirmek.
2. Bir lisans seçmek, yazılımınızı o lisansa uygun hale getirmek.
3. Yazılımınızı ba¸skaları tarafından, ba¸ska sistemlerde kolay derlenir, kurulur hale getirmek. autoconf,
make gibi yazılımları bilmek. tar.gz halinde, kolay derlenir ¸sekle sokmak.
4. Paketlemek. E^ger uygun ise, çe¸sitli da^ gıtımların paket biçemi haline getirmek. (RPM, apt vb)
5. Çok dil destekleyebilir hale gelmek. Gettext’i kullanmak.
Kamusal Ortama Geçi¸s
1. Bir web sitesi edinmek. Yazılımınızı anlatan, kullanıcıya yönelik, bilgi veren bir web sitesi hazırlamak.
2. Bir posta listesi açmak.
3. Yazılımınızı ilgili bütün yerlere duyurmak.
Kamusal Ortamda Büyümek
1. Sabır
2. Kullanıcılara yardımcı olmak
3. Bol bol te¸sekkür
4. Gelen hata bildirimlerini ve de^ gi¸siklik taleplerini dikkate almak.
Kamusal Ortamda Kod Geli¸stirmek
1. Gönüllü kitlesi olu¸sturmak ve tutmak.
2. Gönüllüleri yeti¸stirmek, yardımcı olmak.
3. CVS kullanmak. Yetkilendirme, görev payla¸sımı, test süreci, sürüm tarihleri vb gibi kavram ve yöntemleri
kullanır hale gelmek.
Kamusal Ortama Devir
Zamanı geldi ^ gi zaman devretmesini bilmek.
Notlar
Belge içinde dipnotlar ve dı¸s ba^ glantılar varsa, bunlarla ilgili bilgiler bulundukları sayfanın sonunda dipnot olarak
verilmeyip, hepsi toplu olarak burada listelenmi¸s olacaktır.
http://belgeler.orgBağlantı dışarı gidiyor Linux Kitaplı ^ gı 8 / 9
Nasıl Açık Kaynak Kod Yazılımcısı Olunur?
(B2) http://www.google.comBağlantı dışarı gidiyor
(B3) http://www.sourceforge.netBağlantı dışarı gidiyor
(B4) http://www.freshmeat.netBağlantı dışarı gidiyor
(B5) gpl.html
(B6) http://www.gnu.org/licenses/gpl-“howto.htmlBağlantı dışarı gidiyor
(B7) http://www.gnu.org/licenses/gpl.txtBağlantı dışarı gidiyor
(B8) gpl.html
(B9) http://www.sourceforge.netBağlantı dışarı gidiyor
(B10) http://savannah.gnu.orgBağlantı dışarı gidiyor
(B11) http://www.linux.org.trBağlantı dışarı gidiyor
(B12) http://www.acikkod.orgBağlantı dışarı gidiyor
(B13) http://www.gnu.org/software/gettext/gettext.htmlBağlantı dışarı gidiyor
(B14) http://www.iro.umontreal.ca/contrib/po/HTMLBağlantı dışarı gidiyor
(B16) http://gnu-“tr.sourceforge.netBağlantı dışarı gidiyor
(B17) http://www.deja.comBağlantı dışarı gidiyor
(B18) http://www.freshmeat.netBağlantı dışarı gidiyor
(B19) http://www.linux.org.trBağlantı dışarı gidiyor
(B21) http://www.google.comBağlantı dışarı gidiyor
(B22) http://www.dmoz.orgBağlantı dışarı gidiyor
(B23) http://www.kde.orgBağlantı dışarı gidiyor
(B24) http://www.gnome.orgBağlantı dışarı gidiyor
Bu dosya (acik–kod–yazilimcisi.pdf), belgenin XML biçiminin
TEXLive ve belgeler-xsl paketlerindeki araçlar kullanılarak
PDF biçimine dönü¸stürülmesiyle elde edilmi¸stir.
5 ¸Subat 2007
http://belgeler.orgBağlantı dışarı gidiyor Linux Kitaplı ^ gı 9 / 9
Bu içeriğin geçmişi:
24 Aralık 2009 15:51:03 tarihinde sendetiklat tarafından taşınmış.


scripter
Üye
scripter

Puan: 344

scripter şu anda çevrimdışı
Gönderilme Tarihi: 01 Ekim 2010 17:20:39 | # 1

Programlama açısından ziyade "açık kod" felsefesini tam olarak anlayıp benimsemekle başlar bana kalırsa açık kaynak kod yazılımcılığı.

Carizmatic
Üye
Carizmatic

Puan: 99.5

Carizmatic şu anda çevrimdışı
Gönderilme Tarihi: 20 Ekim 2010 15:10:23 | # 2

ilk kez duyuyorum fakat açıklamanız çok iyi olmuşgulucuk
Sayfalar:
[1]
1.3.0
Kullanım Şartları - İletişim - Öner
29 Temmuz 2014 Salı 14:52:29