31 Ekim 2010 Pazar

URL'deki Türkçe Karakterleri düzeltmek

Arama motorları URL deki içeriğe çok önem veriyorlar. Böyle olunca da web yazılımlarında ve sitelerinde URL ler ile oynama yapılabiliyor. Apache'de mod_rewrite kullanılarak URL'leri tekrardan yazabilmek mümkün. Bunu daha başka bir yazımda değineceğim. URL'lerde türkçe karakter olması zaten çok sonradan çıkan bir şey. Olmaması arama motoru optimizasyonu açısından önemli.

Burada yazmış olduğum bir fonksiyon var. türkçe karakterleri, boşlukları, alt tire (_), tırnak, vs... gibi karakterleri standart URL kurallarına göre düzenlemekte.

http://www.deneme.com/kırk küp kırkı da kulpu kırık küp.html diye bir linkiniz var.
bunun www.deneme.com ile .html arasında kalan kısmı optimize etmek istiyoruz. Bu kısmı fonksiyona sokarız.
Giri : kırk küp kırkı da kulpu kırık küp
Çıktı : kirk-kup-kirki-da-kulpu-kirik-kup
başına ve sonuna istediğimiz şeyi koyup linklerimizi oluşturabiliriz.
http:///www.deneme.com/kirk-kup-kirki-da-kulpu-kirik-kup.html şekline her arama motorunun rahatlıkla anlayabileceği hale dönüştürmüş oluruz.


/*Code*/

/**
     * Url'deki karakterleri düzeltir.
     *
     * @author Emre MACİT 15.04.2008
     *
     * @param string $string
     * @param bool $onlyChars
     * @return string
     */
    function correctChars($string , $onlyChars = false){
        $string = str_replace ( "ç", "c", $string );
        $string = str_replace ( "Ç", "C", $string );
        $string = str_replace ( "ğ", "g", $string );
        $string = str_replace ( "Ğ", "G", $string );
        $string = str_replace ( "ı", "i", $string );
        $string = str_replace ( "İ", "I", $string );
        $string = str_replace ( "Ş", "S", $string );
        $string = str_replace ( "ş", "s", $string );
        $string = str_replace ( "ü", "u", $string );
        $string = str_replace ( "Ü", "U", $string );
        $string = str_replace ( "ö", "o", $string );
        $string = str_replace ( "Ö", "O", $string );
        if($onlyChars) {
            return $string;
        }
        $string = str_replace ( "_", "-", $string );
        $string = str_replace ( " ", "-", $string );
        $string = str_replace ( ",", "-", $string );
        $string = str_replace ( "'", "", $string );
        $string = str_replace ( "\"", "", $string );
        $strCharCount = strlen ( $string );

        for($i = 0; $i < $strCharCount;) {
            if (! preg_match ( "/[0-9a-zA-Z\-\_]/", $string [$i] )) {
                for($j = $i; $j < $strCharCount - 1; $j ++) {
                    $string [$j] = $string [$j + 1];
                }
                $string = substr ( $string, 0, - 1 );
                $strCharCount --;
            } else {
                $i ++;
            }
        }
        $string = str_replace ( "--", "-", $string );
        $string = str_replace ( "--", "-", $string );
        $string = str_replace ( "--", "-", $string );
        return $string;
    }

30 Ekim 2010 Cumartesi

Sevdiğim Bilgisayar Oyunları

  1. Warcraft III The Frozen Throne 
  2. Titan Quest
  3. Diablo II
  4. StarCraft Brood War
  5. PES
  6. Need for Speed Most Wanted 
 Warcraft III The Frozen Throne
 Warcraft III ile üniversite 1. sınıfta tanışmıştım. 3 boyutlu görsel zemin ve grafikleri açısından ayrıca konusu açısından önceden oynadığım diablo ve starcraft'ın karışımı gibiydi. Üstelik özel modüler haritalarıyla da çok yönlü oyunlar yapılabildiğinden halen daha oynarım. Özellikle DOTA modülü (Defence of the ancients) bir çok oyun serverini çokça meşgul eden oyundur.


Titan Quest
DiabloII oynadıktan sonra demelisiniz ki DiabloII de o zamanki şartlardan ve oyun mentalitesinden ötürü eksik olan her şey Titan Questte kapatılmış. Kıyasladığımdan da anlayacaksınız ki birbirlerine çok benziyorlar. Grafikleri ve çift race geliştirmeniz ise daha iyi yönleri. Oyun mistik çağlarda geçmekte.


Diablo II
Ortaokul 3 e giderken bir cd'ciden aldığım ilk çoklu cd'lik (3 cd) oyun idi. Merak etmiştim nedir diye... Bir karakteriniz oluyor ve düşman öldürdükçe seviyeniz yükseliyor. Yeni özellikler kazanarak düşmana korku saçıyorsunuz :) Tabi ki çoklu oyuncu modülüyle arkadaşlarınızla oynarken aldığınız tad bambaşka. Diablo III çıkacak yakında. Onu da heyecanla bekliyoruz.

StarCraft Brood War
Karakter speech'leriyle kalbimize taht kurmuş oyun. Oyun pentium 90 Mhz 16 Ram bir makinada bile rahatlıkla çalışıyor. Zaten çok eski bir oyun artık, StarCraft II de yakın zamanda çıktı. Ama halen fanatiklerinin Starcraft Brood War'ı unutacaklarını sanmıyorum. 


PES
Futbol oyunu. Zevkli. 4-3-3 oynarım :)

Need for Speed Most Wanted
NFS MW benim için ford mustang'den ibarettir. Jantlarının kenarına kadar modifiye yapıp, gaza basmanın heyecanını yaşarsınız. Fakat günümüze doğru NFS nin en gerçekçi sürümü bence NFS 5 Porsche unleashed olanıdır. Hatırlıyorum da oyunda bir ehliyet alana kadar canım çıkmıştı. Günümüzde oyun tasarımcıları oynanabilirliği artırmak için birçok gerçekçilikten fedakarlık yapmaya devam edecekler gibi gözüküyor.

29 Ekim 2010 Cuma

Bozulmaktaki Türkçe'miz..

Gün geçtikçe dilimiz ne yazık ki içler acısı bir hal alıyor. Sokağa çıktığımızda, etrafta tabelalar, konuşulan şeylerin, şehrin neredeyse yarısı yabancı dilde. Çay bahçesi veya Kahve yok artık hiçbir yerde. Café var. Pub var, bar var.. 40 yıllık pastanelerimiz bile "patisserie" olmuş durumda. Kuaförlerimiz Coiffeur oldu. Araçlarımız doğan, şahindi eskiden şimdi hepsi ultra mega thunder oldu. Televizyondaki reklamlar ingilizce olunca daha bir ilgi çekici ve karizmatik oluyor. Halkla ilişkiler ve pazarlama uzmanlarının umrunda değil ki Türkçemiz bozulmuş! Önemli olan müşteri toplamak.. Daha da önemlisi karizma yapmak.

Bir yazılımcı olarak bilgisayar kavramları arasında boğuşup dururken elbet ki Türkçe-İngilizce birbirine çok karışıyor ve tarzanca diye nitelendirdiğim bir garip dil ortaya çıkıyor. Fakat günlük dilde konuşurken biraz da olsa dikkat etmeye çalışıyorum. Elimdeki A ürününü B ürünüyle "change" yapmıyorum örneğin. Ama dediğim gibi ; Bir projede milestone yerine "mihenk taşı" diyorum, ne yazık ki derdimi anlatamıyorum. Mecburen ben de milestone diyorum dilimi yuvarlaya yuvarlaya.. Günlük konuşmamız içinde de Türkçe sözlüğümüzde olmayan o kadar çok kelime var ki... Hangisini söyleyeyim?

Türkçemize sahip çıkmalıyız, durum git gide kötüleşiyor yoksa...

27 Ekim 2010 Çarşamba

Merhaba Dünya

Merhaba

Ben Emre MACİT. Bu blogun sahibiyim :)

04.11.1985 yılında İstanbulda doğdum. İstanbul Köy hizmetleri Anadolu lisesinde ortaokul ve liseyi bitirip, Yıldız Teknik Üniversitesi Matematik Mühendisliğini kazandım. Burayı da 4,5 yılda bitirdim. Daha sonra yine YTÜ'de Bilgisayar Mühendisliği bölümünde yüksek lisans yapmaya başladım fakat, bitirmeden askere geldim. Şu anda KKTC'de Rum sınırındaki bir karakolda, Karakol Komutanı Asteğmen olarak vatani görevimi yapıyorum. Kısmetse Mart 2011'in sonlarına doğru görevim bitecek ben de İstanbul'a döneceğim.

Üniversite 1in sonundan itibaren stajlar ve part time işlerde görev aldım. 3. yılımdan sonra Arneks-IdeaSoft firmasında yazılım geliştirici olarak işe başladım. Nisan 2010'a kadar ki süre zarfında(hemen hemen 3 yıl) burada çalıştım.

Yazılarımda yazılım, sosyal hayat, arkadaşlık, aşk, vs.. gibi konulara değinmeyi düşünüyorum. Bakalım zaman bize neler gösterecek..