Genele hitaben benim kişisel düşüncelerim;
Bu proje çok çok büyük bir proje değil. Binlerce geliştirici tarafından geliştirilecek bir projede değil. Bu proje açık kaynak kodlu, herkesin bildiği yerden yardıma koşabileceği bir proje. Bu yüzden sen şunu yapacaksın, sen onu yapamazsın gibi şeyler olmamalı. Hele ki açık kaynak kodlu bir projede. Herkes yapabildiğini yapmalı.
Biliyorum Kadir Can'ında böyle bir amacı yok. Sadece projede insanları görevlendirmesinin nedeni herkesin aynı şeyle uğraşıp pişti olup boşuna zaman kaybı olmasını engellemek, kişinin hangisinde daha bilgiliyse onda o bilgilerinden tecrübelerinden faydalanmak gibi bir amacı var. Bu da doğru bir yaklaşım. Örneğin Ali Bey benden kat ve kat ve kat... daha üstün, bilgili, deneyimli olduğu halde benim dkv'de kazandığım deneyim beni Ali Bey'den çok az daha artılı hale getirecektir.( Tabi gerçekçi olsak ve ben patron olsam yine Ali Beyi yeğlerim.) O yüzden d-veri'de ben öncelikli gibi gözüküyorum. Bu projenin amacını en iyi Kadir Can bildiği için her konuda onun söz sahibi olmasıda normal. Ancak bu durum gerektiğinde benim dosya sistemi ile ilgili kod ekleyemeyeceğimi belirtmemeli.
Yani görevlendirme normal bir şey. Mesela ben hem sıkıştırma, hem veritabanı hem diğer işleri düşünceğime sadece ikisine odaklanıyorum ve kendimi o iki konuda daha çok geliştirip daha iyi düşünebiliyorum.
Trilerin ilk zamanlarında da bunu yapmıştık. Çokta güzel olmuştu. Herkesin sabit bir görevi olduğundan onu en kısa zamanda yapmak istiyor. Aman bir gün nasıl olsa yazarım, elimin kiri, yarın yazayım bugün yorgunum demiyor. Herkes kendini görevinde geliştirdiği halde yinede neden o yolu seçtiğini söylüyor, daha sonra diğer kişilerde kendi görüşlerini belirtiyor, en iyi yol bulunuyor ve sosyal eğlenceli bir kodlama süreci geçiriliyor, ayrıca buna üstlük birde kendini belirli bir konuda geliştirebiliniyor, başkasının düzgün kodlarına bakarak eksik olduğun yerler tamamlanabiliyor...
Bu olan taa trileri zamanındaki gelişimin doğruluğunu gösteriyor. Yani bence projelerimiz bir zamanlar trilerde olduğu gibi şu biçimde ilerlesin :
Projenin bir tasarımcısı olsun. O şunları desin:
Bak şu modül yazılacak şu görevleri yerine getirilcek. Al bu senin. Artık o modülün patronu o. Modülün görevini yerine getirmesini o sağlayacak. Ayrıca bu görevi hangi kodlar ile yerine getireceğinide o karar verecek.
Biz aldığımız bu modüllerin patronu olarak en iyi biçimde patronu yani geliştiricisi olduğumuz modülleri yazıp forumda konu açıp tanıtalım. Ne yaptığımızı neden yaptığımızı, başka ne seçeneklerimizin olabileceğini neden onları yeğlemediğimizi filan konuşalım, kodlarımızın eksik yanlarını belirlensin tekrar yazalım daha sonra proje sunucusuna yollayalım tekrar bir görev alıp gerçekleştirelim.
Süreç böyle ilerlesin. Böylece proje sunucusunda adı olmayan biri bile kod ve fikir yardımı yapabilir. Konuları okuyup kendini geliştirebilir.
Bunu yapmak için ilk önce Kadir Can projenin sınırlarını çizecek. Ama işte bir ofis yazılımı demeyecek. Diyecek ki bak bu ofis yazılımında iki şey olacak. Bir dosya yönetimi, birde veritabanı. Dosya yönetimi dosya açabilecek, kapatabilecek, dosyanın içine veri ekleyebilecek, yazıları sıkıştıracak böylece daha az yer kaplayacak... böyle olacakların listesi. Ancak dosya yönetimi veriyi e-posta olarak göndermeyecek gibi olmayacak şeylerinde altını çizecek. veritabanında da işte şöyle böyle olacak diyecek. Bizde forumda özellikleri tartışıp, özellik ekleyip çıkaracağız. Herkesin ortak kararından sonra Ali Bey bu özellikleri bir tartıcak. Şu özellik için şu modül yazılmalı, şu özellik içinde şu modül diyecek. Daha sonra herkese görev verecek. Bu görev verme işlemi gönüllük esasına göre, aynı göreve birden fazla talip çıkarsada tecrübeye göre verilecek. Daha sonrası yukarıda anlattığım gibi kendisi bu konudaaraştırıp kendince görevi eksiksiz yerine getiren en iyi kodları yazacak. Kodlarda neyi neden yaptığını, başka nasıl yapabileceğini ancak neden öyle yapmadığını söyleyecek, kodu forumda paylaşacak. Biz fikirlerimizi belirteceğiz, o da son kez her şeyi düşünüp karar verecek. Eğer kararsızsa yine konu açacak yine tartışacağız.Kararlı hale gelincede kodu proje sunucusuna gönderecek.
--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]