Aslında öğrenme yeteneği, merak ve sabırdan başka hiç bir şey gerekli değil. Bir bilgisayar,
üzerinde açık kaynak kod geliştirmeniz için gerekli araçlar minimum gereksinimler. Internet’e
erişim bunlardan sonra gelen ikinci en önemli gereksinim. Geriye kalan teknik bilgileri (çeşitli
programlama dilleri, teknikleri, işletim sistemleri vb) bilmeniz elbette faydalı olur, fakat
bunları öğrenebilme imkanı da açık kaynak kodlu sistemlerin iyi taraflarından birisi.
Nereden Başlanır?
En iyi başlama yöntemi, ihtiyaç duyduğunuz bir şey olmasıdır. Bu, ne kadar ufak olursa, o kadar
iyi. Çok büyük projelere başlamak, bunları tasarlamak elbette güzel, fakat özellikle başlarda
yapılabilir minimumlarda gezinmek en doğrusu. Öbür türlü işin yükünü kaldıramayabilir, yarı yolda
bıkıp bırakabilirsiniz. Eğer iş ve özel hayatınızda açık kaynak kodlu sistemleri (örneğin Linux)
kullanıyorsanız, "şu da olsaydı" dediğiniz noktalar olmuştur. Buralardan başlamak en doğrusudur.
Gerçek bir ihtiyacınıza cevap veren bir yazılım, hem sizin ilginizi uzun müddet çeker, hem de
sistem analizini doğru yapma fırsatınız olur.
Kendi İhtiyacınıza Cevap Veren Bir Konu Seçin
Bir kaç sebepten dolayı açık kaynak kodlu yazılım geliştirebilirsiniz: Bir şeye ihtiyacınız vardır
ve bulamazsınız, çözüm yoktur. Veya bir hobi olarak bu işle uğraşmak istersiniz. Burada zor olan
şey aslında hobi olarak uğraşmak. Çünkü yazılımı geliştirmek ve daha sonra ayakta tutarak devam
ettirmek uzun soluklu bir iş. Dolayısıyla gerçekten kullanacağınız, ihtiyaç duyduğunuz bir şey
bulmaya gayret edin. Sizin yazıcınız Linux üzerinde desteklenmiyor olabilir. Kurban ve Ramazan
Bayram’larının tarihlerini şaşırıyor ve "iki hafta önce haberim olsa da kart atma imkanım olsa"
diyor olabilirsiniz. İlk Internet üzerinde kamera yayını (webcam), yazılımcıların laboratuarın öbür
tarafında duran kahve makinasına kadar gidip boş bulduklarından dolayı yazılmıştı ve kahve
makinasını Internet’te gösteren bir kamera düzeneği idi. Sizin ihtiyacınıza cevap verdikten sonra
gerisinin önemi yok.
Eğer bankacı değil iseniz, banka sistemleri ile uğraşmıyorsanız, ilk açık kaynak kodlu projeniz
için Linux üzerinde bir banka sistemi yazmayı tercih etmek, %99 başarısızlıkla sonuçlanacak bir
projeye başlamak 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.
Ama Benim Hiç Bir İhtiyacım Yok?
Emin misiniz? Muhakkak vardır, biraz düşünün. Yok sahiden aklınıza hiç bir şey gelmiyor ise, en sık
kullandığınız yazılımın geliştirildiği web sitesine gidin ve yapılacak işler listesine (TODO List)
bakın. Oradaki işlerden birini yapmayı deneyin. Mevcut bir yazılım üzerinde değişiklikler yapmak
tecrübe kazanmak için iyi bir yoldur.
Konumu Buldum
Tebrikler. Şimdi lütfen Google, SourceForge ve Freshmeat’e gidin ve bu konudaki yazılımları arayın.
Yazmak istediğiniz yazılım birileri tarafından zaten yazılmış ve yaygın kullanımda olabilir. Veya
doğru başlamış ve doğru yolda (sizin gitmek istediğiniz yolda) giden bir çalışma grubu olabilir.
Konunuzla ilgili bulduğunuz yazılımları gözden geçirin. İsteklerinize az değişiklik ile cevap
verebiliyorsa, o projeye katılın ve yazılıma o değişiklikleri katın. Türkçe olması, ufak tefek
görüntü değişiklikleri, hatta ciddi değişiklikler katkı olarak verilebilir. Bu şekilde katkılarda
bulunmak sizi küçültmez. Aksine, mevcut bir yapı içerisinde ciddi katkılarda bulunmak, sıfırdan bir
proje geliştirmekten çok daha kolaydır ve ilerideki projeleriniz için ciddi tecrübe edinirsiniz.
Mevcut Projelerin Hiç Biri Benim İstediğimi Yapmıyor
O zaman siz bir proje başlatacaksınız. Uzun, bir hayli yalnız ve sıkıntılı bir yoldur, ama
yapılamaz bir şey değildir.
Hemen Bir Proje Kurup Gönüllü Arayayım
Bulamazsınız. Daha önce ciddi başarılara imza atmış (C dilini geliştiren yazar vb) kişiler bile
sıfırdan ve planlama aşaması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 dizayn yapılmaz.
Protokol oluşturan konsorsiyumlar bile bireysel olarak protokol örneklerini hazırlar, bu örneklerin
üzerinde çalışıp hepsinin iyi taraflarını toplayarak protokolü oluştururlar.
İlk başta kendiniz oturup yazılımınızı iyi kötü yazacaksınız. Herşeyi hemen yapması gerekmez, fakat
en azından yapmak istediği şeylerin bir kısmını yapar hale getirin. Yapmak istediğiniz diğer
şeylerin mümkün olduğuna emin olun - bazen yazılımın yapısı bazı şeyleri imkansız kılabilir.
Yazılımınız en azından bir "beta" kalitesine gelsin.
Yazdım, Şimdi Ne?
Kullanıyor musunuz? Bir ihtiyacınıza cevap vermek üzere yola çıkmıştınız. İyi kötü kullanmaya
başladıysanız, artık bunu bir proje haline getirmeyi düşünmeniz gerekebilir.
Proje Oluşturmak
Neden Internet’e Koyayım?
Bunun çok açık seçik nedenleri yok. Eğer sizin işinize yarayan bir şey ise, başkalarının da işine
yarayabilir. Bir kullanıcı kitlesi oluşturmak hem proje gelişiminde 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şınıza
kullanışınızda bulmanız zor olan şeyleri bulmakta işinize yarayabilir. Daha önce faydalandığınız
açık kaynak kodlu yazılımlara bir karşılık olarak bunu kullanıcılara sunmak isteyebilirsiniz. Belli
bir miktar "şan şöhret" kazanabilirsiniz.
Bir Lisans Seçtiniz Mi?
Yazılımınızı dış dünyaya sunduğunuz zaman hangi lisans altında sunacağınıza karar vermeniz gerekli.
Benim tavsiyem GPL. Bir yazılımı GPL altında nasıl yayınlayacağınız hakkında İngilizce bilgi burada
mevcut. Kısaca, yazılımın her dosyasına bir telif hakkı ibaresi, ve bu yazılımın GPL altında
yayınlandığına dair bir iki paragraf koymanız ve GPL’i paketinizin içerisine ayrı bir dosya halinde
koymanız gerekli. Bunlar İngilizce 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.
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
*/
eklinde bir telif hakkı ve lisans bildirim ibaresi eklemeniz gerekli. Ayrıca, GPL’in orjinal
metnini yazılımınızın içerisine ayrı bir dosya olarak koymanız gerekli. GPL’in Türkçe çevirisini
okumak isteyebilirsiniz, fakat bağlayıcı olan İngilizce metindir, yazılımlarınız içerisine
İngilizce metni koymanız gereklidir.
Bu işlemleri yaptığınız zaman yazılımınız için telif hakkı almış ve yazılımınızın dağıtımını GPL’in
koruması altına sokmuş olursunuz.
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ğiniz
işlemdir. Bunları nasıl yapacağınızı bilmiyorsanız, autoconf ve make paketleri hakkında bir şeyler
öğrenin. Eğer yazılımınızı yaygın dağıtımlardan birinin paket sistemi (RPM, apt vb) şeklinde
dağıtabiliyorsanız, bunu tercih edin.
Eğer yazılımınız derlenmeyen bir dilde yazılmış ise - perl, PHP vb, yine de uygun ve anlaşı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ğu, ne iş yaptığı, nasıl kurulacağı hakkında bilgiler bulunur.
Yazılımınıza Sürüm Numarası Verin
Bunu ilk başta yapın ki, daha sonra sorun olmasın. Yazılımınıza ilk başta 0.1 veya 0.9 (ne kadar
kullanılabilir vaziyette Internet’e çıkarıyorsanız) vermek faydalıdır. Oturmuş olan ilk sürüm 1.0
olur, ufak tefek değişiklikler noktadan sonra olur. Yani 1.2, 1. sürümden yapı olarak çok farklı
değil, ufak tefek değişiklikler içeriyor manasına gelir. 10 yıllık Linux çekirdeğinin 2. sürümde
olduğunu düşünerek sürüm numaralarınızda fazla bol keseden davranmayın..
Web Siteniz var mı?
Yazılımınızı başkalarının kullanmasını istiyorsunuz. Bunu sağlamanın ilk adımı yazılımınızın
Internet’te bir sayfası olmasını sağlamak. Yazılımınızın Internet’te kendine ait bir sayfası
olmaması için hiç bir neden yok. Sourceforge veya Savannah’ta bir proje açmak size bir web sitesi
de sağlar ve maliyeti sıfırdır. Üstelik, ihtiyaç duyacağı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ği, AçıkKod Org gibi gruplar Türk açık kaynak kod projelerine yardım ediyorlar.
Size de bir web sitesi ve ihtiyaç duyduğunuz diğer imkanları sağlayabilirler. Temasa geçin. Eğer
tamamen kendinize ait olmasını istiyorsanız, Internet’te bir alan adını kaydettirmenin maliyeti
yaklaşı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şisel web siteleri için
hazırlanan bedava hizmetleri kullanmayın. Proje bağlamında olacak olan indirme (download) trafiği
bu siteler tarafından hoş karşılanan bir şey değil. 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şleri, chat sunucusu vb olması
gerekmiyor. Kolay okunabilir, sade, amaca yönelik bir web sitesine ihtiyacınız var. Amacınız ise,
bir şekilde buraya ulaşan bir potansiyel kullanıcıya sizin yazılımınızın onun derdine nasıl deva
olacağını anlatmak.
Bu amaca yönelik olarak web sitenizde yazılımınızın ne iş yaptığını, eğer başka paket/yazılımlara
gereksinim duyuyorsa bunların ne olduğunu anlatmalısınız. Eğer çeşitli standartlar, protokoller ile
uyumlu iseniz bunlardan bahsetmelisiniz. Çoğu yazılım web sitesi, kendi konusundaki diğer alternatif
yazılımlar hakkında da bilgi ve link verir.
Yazılımınızı indirmeleri için kolayca anlaşılır bir link vermelisiniz.
Bir Posta Listeniz Var Mı?
Yazılımınızı kullananlar için ilk başta bir tek e-posta listesi açın. Buranın fazla suskun/sessiz
olmasına aldırış etmeyin. İkide 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ığı zaman web sitenize yerleştirdikten sonra
buraya bir duyuru geçin. Kullanıcılardan gelen soruları cevaplayın. Yazılımda değişiklik
taleplerini en azından okuyun. Bu değişiklik taleplerinin hepsini hemen yapmak zorunda değilsiniz,
fakat kullanıcılarınızın ne istediğini bilmek, yazılımın nasıl şekilleneceğine karar vermek için
faydalıdır.
İleride posta listelerinizi çoğaltabilir 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ştirme listesi (gönüllüleriniz) olarak ayrı listelere bölünebilirsiniz. Baştan
bunları uygulamak listelerin hiç birisinin hayata geçmemesine sebep olabilir. Trafik çok artıp
insanlar farklı listeler talep edene kadar tek listede kalın.
Yazılımınızı ve Web Sitenizi Çok Dilli Hazırlayın
Açık kaynak kod felsefesinin bir uzantısı da yerelleşmedir. Yazılımınızı İngilizce 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ğildir. Kullanacağınız araç seti gettext. Gettext’i kullanırken
yazılımınızın içerisine serpiştirdiğiniz dizgeleri normal C dilinin dışı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ığı
ile bağladığınız zaman, gettext, sistemde kurulu olan öntanımlı dil hangisi ise, onun çeviri
dosyasını bulup kullanmaya gayret eder. Eğer yok ise, İngilizce’sini kullanır. POT dosyası elde
ettikten sonra, bunun 36 dile çevrilmesi için GNU Çeviri Projesi ile temasa geçebilirsiniz. Açık
kaynak kodlu tüm yazılımlar kabul ediliyor ve çeşitli 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şvik edici olun (bol
teşekkür edin, adlarından web sitenizde emeği geçenler olarak bahsedin).
Yazılımınızı salt İngilizce olarak hazırlamanızın size hiç bir faydası yoktur. En azından
yerelleşebilecek (gettext kullanır) vaziyette hazırlayın ve çevrilmesi için gerekli temasları
yapın. Gönül elbette hem İngilizce, hem de Türkçe hazırlamanızı arzu eder. Bu ülkede İngilizce
bilmeyen binlerce bilgisayar kullanıcısı var.
Ben İngilizce Bilmiyorum, Yazılımımı da Salt Türkler Kullansın İstiyorum
İngilizce bilmeme tarafına GNU-TR Türkçe Çeviri Grubu yardım edebilir. Yani sizin Türkçe
yazılımınızı ve web sitenizi İngilizce’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ığı bir hayli yeni. Yazılımınıza yeterli bir kullanıcı kitlesi ve bunlardan çıkacak gönüllü
grubu bulamayabilirsiniz. Başka, biraz da pragmatik bir problem de, marjinalize olmak. Çok
kullanıcıya sahip yazılımlar yaygınlaşıyor, gönüllüler tarafından düzeltilip geliştiriliyor ve
yeteri kadar yaygınlaşırsa dağıtımların içerisinde yer alıyor. Günün sonunda standart bu şekilde
oluşuyor. Türkiye’deki kullanıcı kitlesi yeterli kadar büyük olmadığı için burada 100 kişi
tarafından kullanılan bir yazılım, kendinden iki-üç yıl sonra başlayan bir enternasyonal efor
tarafından zaman içerisinde geçilir ve o 100 kişilik kullanıcı kitlesini de kaybeder. En iyisi
yazılımınızı çok dilli olabilecek şekilde hazırlamak.
İngilizcem Kullanıcılarla Yazışmak vb İçin Yeterli Değil
Bu konuda rahat olun. İngilizce’yi iyi kullanmaya ülkece gereğinden fazla önem veriyoruz. Bir
şekilde meramınızı anlatabiliyorsanız, grameri falan önemsemeyin. Sonuçta kullanıcılar sizinle
anlaşabilmek için uğraşacaklar. Siz değil. Çok bunalırsanız İngilizce bilen bir Türk
kullanıcınızdan yardım istersiniz.
Yazılımınızı Duyurun
Bir web sitesi hazırladınız, bir posta listesi açtınız. Şimdi yazılımınızı duyurmalısınız. Eğer
konu ile ilgili bir newsgroup var ise oraya bir duyuru yapın. Freshmeat’e duyurun. Linux
Kullanıcılar Derneği’nin web sitesine bir haber yollayın. Türk Linux Listesi’ne yazın. Eğer benzer
yazılımlar için Google’da bir kategori var ise, o kategoriye DMOZ’dan ekleme yapın.
Eğer yazılımınız KDE veya GNOME kullanan bir grafik yazılımı ise, onlara duyurun. Yeteri kadar
yaygınlaşı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ığını bilmez ise kullanamazlar.
Bunların Hepsini Yaptım ve Bir Şey Olmuyor
Bu işler zaman alır. Genelde bir yazılımın kullanıcı kitlesine yayılmaya başlaması neredeyse bir
yıl sürüyor. Yani siz yukarıdaki adımları yapıp duyurduktan bir yıl kadar sonra geniş kitle
tarafından "bu işi yapan bir yazılım vardı" diye bilinmeye başlar.
Yazılımınız yaklaşık 2-3 bin defa indirildikten sonra bir iki tane gönüllü yardımsever çıkar ve
"şurasına şunu ekledim, kabul eder misiniz" diye sorar. Hemen gönüllülerin oluşup heykelinizin bir
meydana dikilmesini beklemeyin. Siz bu güne kadar kullandığı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ştirmesini yalnız başınıza siz
yapacaksınız. Bu zaman zarfında yavaş yavaş bir iki kişi 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ş yavaş aranızda bir ilişki oluşur.
Bu ilişki zaman içerisinde "gel beraber geliştirelim"e gidebilir. Sabırlı olun.
Gönüllülerim Oluştu
Tebrikler. Çok az sayıda projenin başarabildiği bir noktaya geldiniz. Bu noktada CVS kullanmak
(aynı kaynak kodunu birden fazla kişinin yarı bağımsız değiştirebilmesi için), sürüm tarihleri
belirlemek gibi yöntemleri kullanmaya başlayacaksınız. Birden fazla kişi ile çalışmak için bunlar
gerekli teknik yöntemler. Geri kalanı ise insan ilişkileri tarafı, ve çok önemli.
Karşınızdaki kişilerin GÖNÜLLÜ olduğunu unutmayın. İnsanlardan bir şey talep ederken hep nazik
olun. Bir görev dağıtımı yaptığınız ve bu dağıtıma uyulmadığı zaman sinirlenmeyin. İnsanların
yapmak istedikleri şeyleri yapmalarına izin verin. Bol miktarda teşekkür ve gönüllülerden bahsetmek
sizi küçültmez, yüceltir. İnsanların size katkıda bulunmalarına karşılık verebileceğiniz tek şey
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ğlamak için gereken bütün bilgiyi verin. Paylaşımcı olun. İlk başlarda
gönüllülerle bir işi yapmak, kendi başınıza yapmaktan daha uzun sürer ve daha zordur. Fakat
sabrederseniz, ileride kendi başınıza yapamayacağınız kadar çok şeyi yapma imkanını elde
edersiniz.
Sıkıldığınız Zaman Devredin
Yazılımınız sizin bir ihtiyacınıza cevap vermek için hayata başlamış idi. Bir gün bu ihtiyacınızın
üzerinde yeteri kadar uğraştığınızı düşünebilirsiniz. O ihtiyacınız kalmamış olabilir. Eğer yeteri
kadar paylaşımcı davranmış iseniz, gönüllüleriniz arasında yazılımı sizin kadar bilen, sizin
güvendiğiniz birileri olacaktır. Kendisi ile temasa geçin ve yazılımınızın proje liderliğini
devredin. İlginizi kaybettiğinizden dolayı ölmesine müsaade etmeyin. Bugüne kadarki çabalarınız,
sizin bireysel emeğinizden doğan bir şeyin yaygınlaşması ve kendi başına bir hayat kazanmasını
sağlamak için idi. Bu hayatın devam etmesini sağlayın. Bırakın, sizden daha iyi yapan birisi
çıkarsa, o devam ettirsin.
Projenin Hayat Çizgisi:
Doğuş: İhtiyaç. İhtiyaca cevap verecek bir alternatifin olmaması
Başlangıç: Kendi başınıza, ihtiyacınızı karşılayacak bir yazılım geliştirmek.
Kamusal Ortama Geçiş Hazırlığı:
Yazılımınızı temizlemek. Kaynak kodunuza açıklamalar koymak. Dizin yapınızı elden geçirmek.
Bir lisans seçmek, yazılımınızı o lisansa uygun hale getirmek.
Yazılımınızı başkaları tarafından, başka sistemlerde kolay derlenir, kurulur hale getirmek.
autoconf, make gibi yazılımları bilmek. tar.gz halinde, kolay derlenir şekle sokmak.
Paketlemek. Eğer uygun ise, çeşitli dağıtımların paket biçemi haline getirmek. (RPM, apt vb)
Çok dil destekleyebilir hale gelmek. Gettext’i kullanmak.
Kamusal Ortama Geçiş:
Bir web sitesi edinmek. Yazılımınızı anlatan, kullanıcıya yönelik, bilgi veren bir web sitesi
hazırlamak.
Bir posta listesi açmak.
Yazılımınızı ilgili bütün yerlere duyurmak.
Kamusal Ortamda Büyümek:
Sabır
Kullanıcılara yardımcı olmak
Bol bol teşekkür
Gelen hata bildirimlerini ve değişiklik taleplerini dikkate almak.
Kamusal Ortamda Kod Geliştirmek:
Gönüllü kitlesi oluşturmak ve tutmak.
Gönüllüleri yetiştirmek, yardımcı olmak.
CVS kullanmak. Yetkilendirme, görev paylaşımı, test süreci, sürüm tarihleri vb gibi kavram ve
yöntemleri kullanır hale gelmek.
Kamusal Ortama Devir: Zamanı geldiği zaman devretmesini bilmek.