Anasayfa | Giriş Yapın | Üye Olun | Gökçe Kim? | İletişim
Gökçe’nin Web Güncesi (gwg)

Gökçe’nin Web Güncesi (gwg)

Welcome to darkside of the Source, we have cookies!

Gökçe’nin Web Güncesi (gwg) RSS Feed
 
 

Firebug ile PHP debug / profilleme

Firebug’ın, DOM ile oynamak ve javascript debug etmek için frontend geliştiricilerinin vazgeçilmez araçlarından biri biliyoruz. Hatta YSlow, PageSpeed gibi eklentileriyle bu çizgisini daha ileriye taşıyarak onpage/offpage bandwidth iyileştirmesinde de büyük kolaylıklar sağladı. firePHP ise sunucu taraflı gelen veriyi kullanarak size kolay bir debug arayüzü sunması için tasarlanmış:

ekran görüntüsü

FirePHP ise, SQL query zamanlamalarınız ve php’nin hata çıktısını sayfalardan alarak firebug konsoluna yansıtıyor.  Bunun bir dezavantajı, bir avantajı var. Avantajı: Raporlamalarınızı fonksiyon çağrılma sürelerinden ( callstack ), kaşe oluşturma zamanlarınıza kadar geliştirebilirsiniz. Kötü yanı, bunu PHP çıktısı ile yapacağınızdan, çıktının işlenen SQL’ler gibi güvenlik sorunu oluşturabilecek bilgilere sahip olması ve bu çıktıları ‘üretim’ aşamasındaki bir sunucuda kullanılamaması.

Özet olarak, yaptığı iş gelişmiş profilleme ( zend profiler, xdebug ) araçlarıyla kıyaslandığında oldukça küçük, ve uygulama trafiği/işlemleri açısından aslında PHP çıktısından bilgileri aldığı için fazlalık yaratan bir durum, fakat ajax istemlerinizde hızlıca bir hata kontrolü/profilleme istiyorsanız kullanmayı düşünebilirsiniz.

Firefox dokunmatik ekran hazırlığını tamamladı

Eğer iphone/ipod touch veya nokia n97 gibi dokunmatik arayüzlü bir aletle biraz oynadıysanız, bu teknolojinin oyun ve uygulamalarda ne kadar kolay ve eğlenceli bir arayüz sunduğunu zaten biliyorsunuz.

Şimdi bu özellik, multitouch ekranlarla internete kadar taşınacak. Kurgu-filmlerde gördüğümüz akıl yoluyla hologram yaratmak kadar olmasa da, insanın bilgisayarla etkileşiminde mouse’dan çok daha üstün bir arayüz sahibi olacağız. Sadece parmağınızı dokunduğunuz yere tıklayacağınızı söylemiyorum, iki parmağınızı oynatarak küçük yazıları büyütecek, ekrana zoom yapabilecek, facebook v.b. servislerde resimlerinizi küçültecek, haritaları parmaklarınızla dolaşacak, veya photoshopda parmağınızla iki eğriyi aynı anda kontrol edebileceksiniz. Pek çok işlevi farklı jestlerle yapmak mümkün: çift parmakla sürükeleme, hızlı ardarda dokunuşlar, çift parmakla dokunma, iki elle dokunma (ekranın uzun mesafede birden fazla yerine dokunulması), vb. olaylara internet ve internet dışı uygulamalarda özel işlevler tanımlanabilecek. Dolayısıyla bu sadece interneti değil, bütün bilgisayar kullanıcı arabirimi tasarımında yep yeni bir sayfa daha açacak. Çok uzatmaya gerek yok, nitekim aşağıdaki videoyla yapılabileceklerin bir kısmına şahit olacaksınız.

Devamı »

Mysql Dump dosyasından teker teker DB’leri çıkartma

Genellikle sunucu toptan yedekleme/bakım araçlarında, bütün sunucu databaseleri tek bir dosya halinde dump alınır. GB’lara varan bu koca dosya içinden tek bir veritabanını çıkarmak içinse bufferları şişen editörler yetersiz kalır. Bu durumda, *nix işletim sisteminde aşağıdaki senaryoyu uygulayabilirsiniz:

Devamı »

Zend Studio 7 çıktı

Zend, PHP 5.3.0′un çıkışı duyurusundan hemen sonra başarılı php 5.3.0 destekli yeni Zend Studio’nun da müjdesini verdi. Daha fazla bilgi için: http://www.zend.com/en/products/studio/

Uyarlanabilir Singleton sınıfı

Daha önceki singleton ile ilgili yazımda, bu yazılım tasarım desenin nasıl çalıştığını ve nerede kullanabileceğimize göre bilgi vermiştim. Fakat bu sınıf, malesef get_class_name fonksiyonunun eksikliğinden ötürü her sınıf için extend ile uyarlamaya izin vermiyordu.

PHP 5.3.0 gelmesiyle, artık bu mümkün.

Örnek:
Devamı »

Sourceforge topluluk ödülleri finalistleri

Eğer açık kaynak yazılımları benim gibi yakından takip edenlerdenseniz, veya en azından gönlüm var diyorsanız oylamaya katılarak manevi katkıda bulunabilirsiniz.

Ayrıca finalistleri inceleyerek hem çalışmalarınızda size yardımcı olacak, fakat denizde kaybolmuş, farkedemedeğiniz eski başarılı projeleri keşfedebilir, hem de yeni gözde projeleri inceleyebilirsiniz.

Oylama sayfası: http://sourceforge.net/community/cca09/vote/

Masaüstü ve Web programcılığı arasındaki farklar

Bir arkadaşımın (web geliştirme uzmanı), patronunun (delphi programlama kökenli) verdiği bir görevinin ardından, gelişen tartışma bu bilgiyi gerektirmiş, hani çok öyle derinine inebileceğim bir konu da değil ama aklıma geleni `blog`ladım işte..

Devamı »

ExtJS için backend cevap sınıfı

PHP ile ExtJS için kolayca json cevapları oluşturabileceğiniz, çok basit, fakat muhtemelen işinize yarayacak bir sınıf. Çok bulandırmadan kodu yazıp, yazıyı bitiriyorum.

Ext_Response.php

Devamı »

SSH ile Socks Proxy

Bu yazı sadece bir sunucuda SSH hesabı olan kullanıcılar için.

Dedicated sunucularımın aylık parasını öderken, Türkiye IP lerini blokladıklarını gördüm. Proxy aramaya koyuldum fakat yavaşlıklarından nefesim daraldı. Daha öncede başıma gelmişti, herhangi bir GeoIP korumasına takılıyorsanız aşağıdaki methodla kendi proxysinizi kurup yurtdışına çıkabilirsiniz. Nacizane internet kurulumuzun ve mahkemelerimizin uğraşıp didinip routing yoluyla engellediği ve DNS ile çözümü olmayan durumlarda da bu yöntem kullanılabilir. Tabii ki tavsiye etmiyorum, devlet böyüğümüz girme diyorsa, girmeyin, ayıp besbelli. Ayrıca torrent indirirken de socks kullanarak yurtdışı bağlantıyla aradaki route pointler azalmış olacak ki ( attım tuttumu bilmem ) çok daha hızlı torrent indirdiğimi / yada indirdiğimi sandığımı söyleyebilirim.

Devamı »

ExtJS Radiogrouplar ve extend

Ext ile ilgili uzun zamandır yazmak istiyordum, biraz sert bir giriş olacak. Daha sonra javascript kosunda bilgili ve Ext’e hızlı bir başlangıç yapmak isteyenler için ne olduğunu, nasıl bir yapıya sahip olduğunu anlatırım.

Extend için kurban seçerken daha sonra işimize yarayacak bir component (komponent, parçacık.. her neyse) olsun istedim, yakın zamanda karşılaştığım bir soruna sahip, Radiogroup ‘u seçtim. Nitekim, getValue ve setValue nitelikleri, diğer componentların aksine (textfield, combobox, textarea vb) standart HTML’deki davranışları sergilemiyor. Ext’in diğer form araçlarıyla aynı prensipleri taşıması için kendisine setValue ve getValue ekleyeceğiz. Fakat öncelikle çıplak haline bakalım.
Devamı »