phpquebec 2009
Symfony Php framework geliştiricisi Fabien’den çok güzel bir php framework sunumu!
http://fabien.potencier.org/media/talk/2009/phpquebec-2009-symfony-2.pdf
Ayrıca sunumda bahsettiği twitto framework ile ilgili bir yarışma başlatmış 
Şurada:
http://f055.net/article/final-wrap-up-of-the-140-characters-webapp-challenge/
Ne oldii!
Türkiyede çok bilmek bir hastalık. Çok bilenimizin bilgisi ise bildiğinden değil duyduğundan! Yıllardır öyle amatör tartışmalara şahit olduk ki hepsi bize zarar verdi. (Bardağın dolu tarafına da bakabiliriz ama şimdi yeri değil.) Konu şu:
Kendisini delikanlı ağabeyimiz Linus daha bir kaç yıl önce gnome aptallar içindir diyordu şiddetle KDE kullanmak gerektiğinden bahsediyordu. (http://mail.gnome.org/archives/usability/2005-December/msg00021.html)
Şimdi ise GNOME (http://linux.slashdot.org/article.pl?sid=09/01/24/1842218) kullanmaya başlamış. “Linus ağabeyimiz KDE kullanıyor bizde kullanmalıyız” diye kendilerini paralayıp fanatiklik yapanlar linus ağabeyimizin zarif bir çalımıyla ortada sap gibi kalıyorlar. Takdir ediyorum bu kararını, işte profesyonellik bence bu. Bir profesyonel bence yanlışdan dönmesini bilmeli, “yahu belki sen haklısındır” demesini bilmeli, körü körüne fanatiklik yapmamalı, kimseyi veya bir şeyi anlayıp dinlemede afaroz etmemeli… Zira Linus kardeşimiz de güzel bir kardeşimiz.
Kendisini kararından dolayı kutluyoruz.
PHPDOC ve Çeviri İncileri
Sevinerek php türkçe dökümanlarına göz gezdirirken bazı terimlere dikkat ettim. Bundan önceki günlük girdisinde de yazdığım gibi ingilizce dökümanlar daha anlaşılır geliyordu. Ben de durumu phpdoc listesine yazdım, aman yazmaz olsaydım!
Evet, 2 mail sonra beni listeden attılar
Olayı detaylandırmayacağım kısaca derdim şu ki benim gördüğüm 1970 lerden beri “static” çevirisi “statik” olarak yapılmış, kafama takılan, neden static terimini türkçeye “duruk” olarak çevirdiklerini sormak ve “özdevinim” kelimesinin (automation çevirisi) türkçede ne anlama geldiğiydi. Zira özdevinim kelimesi tdk sözlüğünde ben bulamadım ve bunu belirttim.
Vayy bunu soran sen misin? Olayla hiç bir ilgisi olmamasına rağmen Microsoftçu bile oldum! “Biz çeviri yapıyoruz. Kitap yazmıyoruz.Ayrıca, yaptığımız çeviriye garanti de vermiyoruz.” diye başlayan ve en sonunda listeyi terk etmem gerektiği zira çevirmenlerin şevkini kırdığımı söyleyen bir mail aldım phpdoc yetkilisinden.
Timur Şam’a sefer hazırlığını duyan zamanın Şam “aydınları(!) ” sarıklarının derdine düşmüşler. Timur için sarığı sağdan mı bağlasak yoksa soldan mı sallandırsak daha uygun olur diye tartışma çıkmış aralarında… Tabi Timur gelip taş üstünde taş kelle üstünde sarıklı baş koymayınca durumu anlayabilmişler…
Bizde halen sarığın derdine düşmüşüz, insanların anlayacağı şeyler yerine sırf türkçe olsun diye insanları cahilleştirme derdindeyiz, bilerek veya bilmeyerek. Otobüs yerine “çok oturgaçlı götürgec” terimini çeviren zihniyeti burada da görmek ne acı…
Ben dil uzmanı değilim hatta şu yazdığım yazıda bile onlarca hata bulunabilir. Ama bu dili konuşuyorum ve benim anlamadığım türkçe türkçe değildir.
Maks All Read – PHP
Php İrlanda grubu enterprise php ile ilgili bir belge yayınlamış, içerisinde benimde uzun süredir düşündüğüm J2EE ve .NET ile PHP kıyaslamaları mevcut, pek tatmin edici olmasada tavsiye edilir;
Enterprice Php konusunda araştırmalarım sürüyor…
PHP tayfası (zend ile ilgili bir şey yazmadıkları zamanlarda) ORM de yazıyormuş
Doctrine ile ilgili iki kaynak:
Ve son 2 link php frameworkleri ile ilgili:
Makul Olmaya İnsan

- Image via Wikipedia
“Makul insan kendini dünyaya uydurur; makul olmayan insan ise dünyayı kendine uydurmakta ısrar eder. Bu yüzden ilerleme makul olmayan insanın yaptığına bağlıdır.” — George Bernard Shaw.
Gelişmeler

- Image via Wikipedia
Yaklaşık 1 yıldır kullandığım ve hosting konusunda Türkiyedeki (profesyonel olarak-(profesyonel olan ben değilim, hosting şirketleri )) ilk denemelerimden sonra bizi derin bir nefes aldıran, %99.9 uptime ne demek, işte bunu gösteren Mediatemple’dan Linode sunucularına geçtik.
Madem bu kadar iyiydi neden linode sunucularına geçtin derseniz daha fazla özgürlük ve mediatemple da yüksek uptime oranının yanında kaybedilen performansın olumsuz yansıması olarak özetlenebilir.
Ayrıca yeni projerler için yeni ve daha geniş alanlara ihtiyacımız vardı. Öncelikle Amazonun EC2 hizmetini inceledim ama şimdilik çok fazla ihtiyacımız olmadığını düşünerek bu alternatifi rafa kaldırdım.
Bu arada meydana gelen bir başka problem internet explorer 6 ile boş ekran hataları oldu. Neden olduğuna anlam veremediğim, ara ara meydana gelen ve sitede bir linke tıklayınca boş bir explorer ekranının gelmesi tanımıyla açıklanabilecek illet bir durum.
Öncelikle php ile gzip sıkıştırması problem oluşturuyor diye düşünüp gzip modunu iptal ettim, sorun lokal sunucuda düzeldi ama uzaktaki sunucuda hala problem devam ediyordu. Cache mekanizmasından kaynaklandığını sandım ama sorun ie6 için ayrıca bir header tanımı yapılmadığı için çıktığını 1 günün sonunda anladım.
header (”content-type: text/html; charset=UTF-8″);
gibi bir header tanımı yapılınca sorun ortadan kalktı.
(Bu arada şu twitter güncellemesini yapan arkadaşın halinden anlıyorum! )
Birkaç günlük linode deneyiminden sonra tek ticket bile açmadan sunucuyu hazır hale getirdim.(buradan ne kadar kolay olduğu anlaşılıyor sanırım) Ayrıca (mt) ile aralarında bariz bir hız farkı olduğunu anlıyorsunuz(iki şirketinde sunucuları ABD de) linode tavsiye ederim! (referral link)
Mahalle Baskısı
Ntvmsnbc de yayınlanan ve Boğaziçi Üniversitesi tarafından yapılan bir araştırma, genel olarak doğru bulduğum yerler olsa da biraz göz gezdirirseniz nasıl özenle seçilip bölücülük aşıladıklarını(bilerek veya bilmeyerek) anlayacaksınız.Şöyle diyor mesela;
Malatya’da bir işadamı, “merhaba”, ya da “günaydın”ın yerini “selamünaleyküm”e bıraktığını, bunun alışkanlık haline geldiğini, özellikle ticaret hayatında yaygınlaştığını, sosyal demokrat diye bildikleri ve bu tarz konuşacağına hiç ihtimal vermedikleri kişilerin bile “selamünaleyküm” demeye başladıklarını belirtiyordu.
Bu nasıl bir şey? Ülkenin %99 u müslüman martavalı atılan ülkede bir hristiyan kendi diniyle hayatını şekillendirdiği zaman “özgürlükçü” oluyoruz, ama %99 u müslüman(!) olan ülkede müslüman kişi kendi inacına göre selam verince adı “baskı” oluyor. Lütfen birileri bana bu araştırmada alıntı yapılan paragrafta “selamünaleyküm” diyorsanız baskı yapıyorsunuz mesajı verilmediğini anlatsın?
Dünyanın hiç bir yerinde böyle bir şey yok; New york ta 15 milyon İtalyan yaşıyor. “ciao”(italyanca merhaba) yerine “hello” dediklerinde bu adamlar da mı mahalle baskısına maruz kalıyorlar ?
Bu ayrılık fitnesi sokuldukça araya bir patlak verecek ki bu iş, bu fitneyi araya sokanlar bile bu karadelikte yutulacak, onun için şöyle diyor Yusuf Hayaloğlu:
…Fazla eşelemeyin kardaş
Taşınca ne siperler kalır ne dev barikatlar
Deşmeyin diyorum deşmeyin…
Php Frameworkler
Php ile birlikte bir framework kullanmak bana hep angarya olarak gelmiştir.
C nin özgür bir kodlama ortamı sunduğunu, Java ve bu ekoldeki dillerin ise bana
bazı şeyleri zorladığını düşündüğümden bu dillere pek ısınamadım.
Yani ortaya spagetti kod yazmak C ile daha eğleceli!
Php de de aynı durum söz konusu, ben hep kafama göre spagetti kod yazıp işleri görüyordum,
PHP nin nesneye yönelimli yapısını bile sanki zaman kaybı gibi nitelendirirken, tek başıma aynı anda
iki projeye başlayıp ikiside 2000-3000 satır kod barajını aşınca bu durumun aslında böyle olmadığını gördüm.
Yoğun olarak PHP ve Jquery kullandığım uygulamada jQuery nin doğal yapısı gereği daha çok fonksiyon v.s kullandığımı gördüm.
Ayrıca dökümantasyonu yapılmadan en az bu kadar kod yazılınca işlerin sarpa sardığını bir hafta kodlara bakmayıp
tekrar bugfix işlemleri için kodlara dalınca acı bir biçimde durumun böyle olmadığını anladım.
Eee.. Bizler(ben ve benim gibi bir şeyleri kırıp dökerek ve elini çamura bulaştırarak öğrenenler) ancak bu şekilde öğreniyoruz.
Bu arada dikkatimi çeken bir başka konu ise bu tarzda programlama öğrenen insanların “bu iş kesinlikle böyle yapılır” yaklaşımından uzaklaşıp kesin doğrular yerine deneysel gerçeklere itibar etmeleri… Farkında olarak konuyu dallandırıyorum.Neyse;
Sevgili Rasmus frameworklerin Php ye olumsuz performans olarak yansıdığını savunarak her ortamda Framework kullanmamak gerektiğini söylüyor (eğer illa bir framework kullanacaksak adı codeigniter olsun diyor rasmus )
(bonus: codinghorror’dan Php nin kendisi bir framework değil mi? tartışması için tıklayın )
Nedense Rasmus Lerdorf denen zatı pek sevmiyorum, tam emin değilim ama böyle bir adamın PHP gibi bir dili bile geliştirebileceğini düşünmüyorum. Klasik Türk mantığıyla hareket edip kahve muhabbeti yaparak “yemişim rasmusu,o yanındaki kısa boylu* olmasa…” diyesim bile var.
Sonuç olarak bir çok kere Php için framework kullanmak ve kullanmamak arasında gittim geldim.
Uzun süre araştırdım, bizim Türkler bu işi “2-3 sene içerisinde zaten kendi frameworkünü geliştirirsin” veya “kendi frameworkümü kullanıyorum“ veya “Php nin kendisi bir framework zaten“(bkz.codinghorror)
gibi şeylerin arkasına sığınarak kendi dünyalarında(acı ama , bunların bir çoğu büyük bir projede framework kullanmak ve kullanmamanın ne demek olduğunu ayırt edemezler.-çünkü bende ayırt edemiyordum
) yöntemlerle çözme meyilindeler. Bu adamlar sağdan soldan buldukları kütüphaneleri derlemişler adınada framework diyorlar.
Aman! İnanmayın! Her programcının kendi eğilimleri vardır, ama bir süre sonra bunların dizginlenip bir standarta oturması gerekir.
Eğer bir adım daha ilerlemek isterseniz bence mutlaka bir framework kullanmalısınız.
Seçim konusunda ise şunu söyleyebilirim. Benim internette karşılaştığım bir çok test bu frameworkleri hız yönünden karşılaştırmış. Ama, bence aslolan hız değil. Kullanılabilirlik, işlevsellik, dökümantasyon, sizin “hah budur!” dediğiniz şey ve tabiki hız! Ama sadece hız değil !
Öne çıkanlar Zend, Symfony, CodeIgniter, Cake framework olsa da ben Zend’i seçtim. Kurulumu ve kullanımı sizi yormayacaktır.Ve yeterince esnek bir framework.
Rasmusa uyup Codeigniter kullanırsanız(ki kendisi yaklaşık 800kb kadar) bir türkçe grubu ve çoğu türkçeleştirilmiş bir Kullanıcı El Kitabı bulunmakta.
ORM konusunda kararsız olsamda yeni sürümde Probel’in Symfony ye eklendiği haberi ilgi çekici, symfony için benim takip ettiğim bloglardan şurada() bir türkçe symfony blogu takip edilebilir.
Sonuç olarak php ye framework gereksizdir diyen Hakkı Buluttur, Armağan Çağlayandır…
Az yazıyorum,ama eğer vakit bulursam bundan sonra ayda bir bir Zend Framework yazısı yazmaya çalışacağım.
Dizgenin Dışına Atlamak!
Uzun zamandır takip ettiğim insanlardan birisi Emre Sevinç her yeni yazıyı beklerken onun benim için bir şeyler bulduğundan, bir kitabı ben araştırmadan okumam gerektiğini söyleyeceğinden neredeyse eminim. Bu kitaplardan birisi de Süper Hesap Uzmanları-Ian Ayres , şu yazıyı okur okumaz hemen kütüphanenin yolunu tuttum ve kitabı hemen alıp 70 sayfa okudum.(Upss! Burada duralım! Kitabın 1.bölümü şöyle başıyor: “Bir film seçmenin en iyi yolu arkadaşına sormaktır.” Bu kitabı bir tavsiye üzerine okuduğumu hatırlattım kendime. ha ha!)
Bir süredir okuduğum güzel kitaplardan biri, ama kitapta, buraya kadar geldiğimde başka ihtimalleri göze almadan salt veri madenciliği ve sayısal yöntemlerin sanki alternatifsiz ve kesin yöntemler olarak sunulması beni biraz rahatsız etti ki beyn çalışarak Gödel Esher Bach dan bir bölümü gözlerimin önüne serdi:
“Yapmakta olduğu görevin dışına atlayıp, ne yaptığını gözden geçirmek zekanın içsel bir özelliğidir; zeka her zaman örüntüler arar ve çoğunlukla bulur.”
Asıl sorun da burada. Matematiğin,istatistiğin ve veri madenciliğinin nerede dizgenin dışına atlayacağını bilmemesi temel sorunlardan birisi sanıyorum.Ve okumaya devam ediyorum…


![Reblog this post [with Zemanta]](http://img.zemanta.com/reblog_e.png?x-id=0cf21ace-6761-48db-a5f3-d89df6c6c8cd)
![Reblog this post [with Zemanta]](http://img.zemanta.com/reblog_e.png?x-id=6d5173f5-b0e2-42f9-a657-1a8278041875)
![Reblog this post [with Zemanta]](http://img.zemanta.com/reblog_e.png?x-id=501614bd-8e84-46d0-bb2c-245c5abfddd2)