Cumartesi, Aralık 04, 2010

Versiyon yönetim sistemi olarak GiT kurulumu ve kullanımı

Uzun süredir şirket ve kişisel projelerimde Subversion'u (SVN) kullanıyorum. Genel anlamda SVN'den oldukça memnundum fakat branching ve merging işlemlerinin sıkıntılı olması ve projeler büyüdükçe önemli ölçüde yavaşlama yaşandığı için SVN'i GiT ile değiştirme ve var olan SVN repository'lerini GiT'e taşıma kararı aldım. GiT'in diğer versiyon yönetim sistemlerinden iyi olduğu noktaları http://whygitisbetterthanx.com/ adresinden detaylıca inceleyebilirsiniz. Benim açımdan önemli olanlarını şu şekilde sıralayabilirim;

  • GiT gerçekten ama gerçekten çok hızlı
  • GiT kaynak depoları disk üzerinde çok az yer kaplıyor
  • GiT ile branching ve merging işlemleri kolay ve hızlı
  • GiT offline olarak kullanılabiliyor
  • GiT distributed (dağıtık) olduğu için her bir geliştiricinin makinesinde proje bütün geçmişi ile birlikte tutulabiliyor. İlk bakışta bunun işlemleri yavaşlattığı ve disk israfı olduğu düşünülebilir fakat GiT'in oldukça etkin algoritmalar kullanması sayesinde bu sorunlar hiç yaşanmıyor. 
GiT komutlarıyla ve genel yapısı ile ilgili detaylı bigiye GiT'in resmi dokümantasyonundan veya ücretsiz Pro GiT  kitabından ulaşabilirsiniz. Bu makalede Linux Ubuntu yüklü bir sunucu üzerinde özel bir GiT repository'sini nasıl oluşturabileceğinizi ve bunu diğer geliştiricilerle nasıl paylaşabileceğinizi anlatmaya çalışacağım. Buradaki komutlar veya işlemler diğer Linux sürümlerinde veya Windows üzerinde cygwin yardımıyla ufak değişiklikler ile çalıştırılabilir.

GiT'i ve GiT üzerinde repository oluşturulması ve yönetilmesi işlemlerini kolaylaştıran gitosis programını kurmak için sırasıyla sudo apt-get install git (veya git-core) ve sudo apt-get install gitosis komutlarını çalıştırmamız gerekiyor. Kurulumlar tamamlandıktan sonra sudo add user --system --shell /bin/sh --gecos ‘git user’ --group --disabled-password --home /home/git komutunu çalıştırdığımızda gitosis'in çalışması için gerekli olan git kullanıcısı sisteme eklenecektir. 

Kendi GiT repository'imizi oluşturmaya başlamadan önce sunucu üzerinde yapmamız gereken son işlem ise gitosis'e GiT projelerini yönetecek geliştiricinin ssh public anahtarını tanıtmak.  İlk olarak GiT repository'lerini yönetecek geliştiricinin makinesi üzerinde ssh-keygen -t rsa komutunu çalıştırmamız ve oluşturulan public anahtarı sunucuya kopyalamamız (/tmp klasörünü tavsiye edilir) gerekiyor. Daha sonra ise sunucu üzerinde sudo -H -u git gitosis-init < /tmp/rsa_key.pub komutunu çalıştırdıktan sonra tanıttığımız ssh public anahtara sahip olan bilgisayar üzerinden bütün GiT repository işlemlerimizi yapabiliriz. (Sunucudan ayrılmadan önce /home/git/repositories/gitosis-admin.git/hooks/post-update dosyasının çalıştırılabilir olduğunu mutlaka kontrol edin)

Geliştirme için kullandığınız bilgisayar Linux ise GiT'i kurmak için kullandığımız komutları kullanarak, eğer Windows veya Mac os x ise http://git-scm.com/ adresinden ilgili programları kullanarak GiT'i kurabilirsiniz. 

Gitosis oldukça akıllı bir şekilde bize GiT kullanarak GiT repository'lerini yönetme imkanı sağlıyor. Bunun için gitosis-admin repository'sini aşağıdaki komutlarla kendi makinemize almamız gerekiyor.

cd /home/mhazer
mkdir gitosis-admin
git clone git@sunucu_ismi:gitosis-admin.git

Sonraki aşamada gitosis-admin klasörü altında gitosis.conf dosyasına aşağıdaki şekilde değiştirip sunucuya göndermemiz gerekiyor.

[gitosis]

[group gitosis-admin]
writable = gitosis-admin
members = mhazer@Bim247

[repo myRepo]
gitweb = yes
daemon = yes
description = myRepo GiT
owner = Murat HAZER

[group myRepo_group]
members = mhazer@Bim247
writable = myRepo

gitosis.conf dosyasını yukarıdaki şekilde değiştirip kaydettikten sonra gitosis-admin klasörü altında 

git commit -am "yeni myRepo tanımları" 
git push .

komutlarını çalıştırdıktan sonra GiT sunucusu üzerindeki ilk değişikliğimizi de yapmış olacağız. Bu komutlardan sonra hâlâ yeni GiT repository'imiz sunucu üzerinde oluşturulmamış olacak.  Bunun için;

mkdir /home/mhazer/myRepo
cd /home/mhazer/myRepo
git init
git remote add origin git@sunucu_ismi:myRepo.git
git push origin

komutlarını çalıştırmamız gerekiyor. GiT push işleminden sonra sunucu üzerinde /home/git/repositories/myRepo klasöründe GiT repository'si gitosis tarafından oluşturulacak. Bundan sonra /home/mhazer/myRepo klasörü altında oluşturduğunuz veya değiştirdiğiniz dosyaları git commit ve git push komutlarıyla sunucuya gönderip diğer geliştiricilerle paylaşabilirsiniz.

Yeni geliştiricilere myRepo repository'sine erişim hakkı vermek için yeni geliştiricilerin makinelerinde ssh-keygen -t rsa komutunu çalıştırdıktan sonra oluşan ssh public anahtarlarını daha önce gitosis-admin altındaki keydir klasörüne kopyalamamız ve gitosis.conf dosyasını aşağıdaki şekilde değiştirip GiT sunucusuna göndermemiz gerekiyor. (yeni geliştiricinin ssh public anahtarının yeniDev@Bim211 olduğunu farz edersek)

copy yeniDev@Bim211.pub /home/mhazer/gitosis-admin/keydir 

[group myRepo_group]
members = mhazer@Bim247 yeniDev@Bim211
writable = myRepo

cd /home/mhazer/gitosis-admin
git commit -am "yeni geliştirici tanımı"
git push .

SVN repository'lerinin GiT'e taşınması ve online GiT repository sunucularından olan github üzerine ilerleyen günlerde ilerleyen günlerde bahsetmeye çalışacağım.

Çarşamba, Ekim 06, 2010

Lookout (MS Outlook arama sorununa çözüm)

Siz de işyerinizde MS Outlook kullanmak zorunda kalıyorsanız e-posta sayınız arttıkça entegre gelen arama fonksiyonun ne denli yetersiz olduğunu mutlaka tecrübe etmişsinizdir. Eğer aylar öncesinde gelen bir e-posta'nın gönderenini veya konusunu hatırlamıyorsanız ve aklınızda sadece e-posta içeriğinden bir iki anahtar kelime kalmışsa bu e-posta'yı entegre gelen arama fonksiyonuyla bulabilmek imkansıza yakın diyebilirim. Çözüm için bir çok yol denedim (google desktop vs.) fakat hiçbiri Lookout kadar kolay, basit ve hızlı bir çözüm sunmuyor.

Lookout Microsoft tarafından satın alınıp "MSN Desktop Search" olarak tekrar piyasaya sürüldü fakat eski versiyonu yenisinden çok daha başarılı (çok tanıdık geliyor değil mi?). Microsoft eski versiyonu artık dağıtmadığından google üzerinden arama yaparak 1.3 versiyonunu bulup indirmek gerekiyor. Kurulumu oldukça basit fakat kurulum tamamlanıp outlook ilk kez başlatıldıktan sonra aşağıdaki gibi bir hata ile karşılaşabilirsiniz.

Bu hatayı çözmek için outlook'u kapatıp aşağıdaki komutları "Komut Sistemi"ni kullaranak çalıştırmanız gerekiyor.

cd %SYSTEMROOT%\assembly\GAC rename Microsoft.Office.Interop.Outlook Microsoft.Office.Interop.Outlook.OLD

Tekrar outlook'u çalıştırdıktan sonra Lookout maillerinizi indekslemeye başlayacak ve bu işlemi tamamladıktan sonra aradığınız e-posta'ya çok rahat bir şekilde ulaşabileceksiniz.

Mutlaka deneyin, pişman olmayacaksınız.

Cumartesi, Ekim 02, 2010

Hatay ve Halep Gezisi

(Eşim Aysun AÇAR HAZER tarafından hazırlanmıştır.)

Arkadaşlarla geçen ay yaptığımız Hatay gezisi kesinleştiğinde, Hatay’a kadar gitmişken, Suriye’ye de geçip bir Halep gezisi yapabilir miyiz diye düşünmeye başlamıştık. Suriye görmek istediğimiz ülkeler arasında ilk sırada olmamasına rağmen Türkiye ve Suriye Eylül 2009’dan beri karşılıklı vizeyi kaldırdıklarından ve geçişleri kolaylaştırdıklarından Suriye’nin en büyük ikinci şehri olan Halep’i de görmek için iyi bir fırsat olduğunu düşündük ve keyifli bir Halep gezisi gerçekleştirdik. Burada bu gezimiz üzerine kısa notları ve izlenimlerimizi paylaşmaya çalışacağız. Sizin de yolunuz bir gün o taraflara düşerse ve Halep'i de görmek isterseniz umarız bu yazdıklarımızdan faydalanırsınız (Gezi öncesinde yaşadığımız pasaport süreci hakkındaki deneyimlerimizi buradan okuyabilirsiniz).

Arapça bilen Hatay'lı arkadaşlarımız da daha önce Suriye’ye gitmediklerinden yalnız başımıza yollara düşmektense Halep’i bilen ve tanıyan birileriyle sınırdan geçmenin daha doğru olacağını düşündük ve bütün gezi boyunca bu kararımızın ne denli yerinde olduğunu birçok kez gördük. Tek başımıza gitseydik büyük ihtimalle boşa vakit harcayıp belki de Halep’in en güzel yerlerini gezemeyecektik. Antakya’da Halep’e günübirlik gezi düzenleyen tur şirketlerinden biriyle anlaşıp turu cuma gününden ayarladık. Şirkete pasaportlarımızın fotokopilerini bırakıp yol, rehberlik, öğle yemeği dahil kişibaşı 60$ ücret ödeyip ertesi gün Antakya'da buluşmak üzere anlaştık.

Ertesi gün sabah 7:00’da Antakya’dan yeni ve rahat bir minibüs ile yola çıktık ve Cilvegözü sınır kapısına varmamız yaklaşık bir saat sürdü. Türkiye sınırında çıkış için epey sıra vardı fakat işlemler hızla halledildiğinden sıra kısa süre içinde ilerledi ve araç için de çıkış belgeleri düzenlendikten sonra Türkiye sınırından çıkışımızı yaptık. Suriye girişine vardığımızda gişelerde fazla kalabalık yoktu ve minibüs şoförünün de bizi yönlendirmesiyle işlemlerimiz kısa sürede halledildi. Şoför Arapça bildiğinden ve sürekli giriş çıkış yapması dolayısıyla oradaki görevlilerle de ahbap olduğundan işleri kolayca halletti.. Malesef Suriye’de rüşvetsiz bir iş yaptırmak çok zor ve o işleri halletmek de şoförümüze düştü. Tur şirketi olmadan kendimiz ülkeye girmeye kalksaydık rüşvet işlerini nasıl hallederdik bilemiyoruz. Neyse ki bizim ülkemizin girişinde ve çıkışında rüşvet artık söz konusu değil. Biz Türk vatandaşları olarak Türkiye’de ödediğimiz yurtdışı çıkış harcı (15 TL) haricinde Suriye’ye ayrı bir ödeme yapmadık. Fakat KKTC’li arkadaşlarımızın kişi başı 23$ vize ücreti ödemeleri gerekti ve onların giriş işlemleri bizimkilerden biraz daha uzun sürdü.

Sorunsuz bir şekilde Suriye’ye giriş yapmamızdan ve yaklaşık 1 saat daha yol gitmemizden sonra Halep’e vardık. Yol üzerinde eski zamanlarda doğu ile batıyı birbirine bağlayan ve Kral Yolu olarak da bilinen İpek Yolu’nun kalıntılarını görüp o tarihi yolda az da olsa yürüme imkanı bulduk.

Kendine özgü bir doğu şehri olan Halep’teki eski evler kayşani adı verilen taşlarla inşa edilmiş. Günümüzde de şehrin dokusuna uygun olmayan binalara izin verilmiyor ve yapılan yeni evler de taş kaplama yapılıyor. Bu taş yapılar birkaç devlet binası hariç en fazla 4-5 kat olabiliyorlar. Halep pek düzenli bir şehir olmamasına rağmen (özellikle Halep Kalesi’nden baktığınız zaman) şehirdeki evlerin dokusunun birbirleriyle uyumlu olması insanı büyülüyor.

Halep’e vardığımızda Halep’te yaşayan bir Türk olan rehberimiz de bize katıldı ve asıl Halep turumuz başlamış oldu. Öncelikle panaromik bir şehir turu yaptık ve yolda gördüğümüz çoğu evin güzelliğine hayran kaldık.





Suriye’de hayat Türkiye’ye oranla çok daha ucuz. Suriye parasına Suri adı veriliyor ve 1 Suri yaklaşık 0.03125 TL ediyor. Biz Surileri Hatay’da bir dövizciden temin ettik. Euro ve Dolar’la hesap yapmaya alışık olan bizler için ilk defa Türk Lirası’nın daha değerli olduğu bir ülkede bulunmak ve hesap yapmak ilk başta kafa karıştırıcı oldu fakat kısa sürede alıştık.

Halep kalesini gezmeden önce kalenin karşısındaki cafelerin birinde yorgunluk kahvesi içtik. Suriye’de gördüğümüz kadarıyla Türk kahvesini su bardağı gibi büyük cam bardaklarda içiyorlar. Neyse ki bize bildiğimiz kahve fincanlarında getirdiler. Cafelerde fiyatlar aşırı pahalı olmamasına rağmen turistik bir bölgede yer aldıklarından çok da ucuz olmalarını beklemek yanlış olur. Örneğin 1 kahveye 100 Suri verdik ve daha sonra kaleye giriş için de 150 Suri ödedik (Giriş ücreti Suriyeliler'e 15 Suri iken yabancılara 150 Suri'ydi).













Etrafında büyük bir hendek olan Halep Kalesi dünyanın en eski kalesi olarak bilinmekte ve kaleyi gezerken birçok kültürün izlerini görmek mümkün. Mezepotamya devletleri, Roma İmparatorluğu, Bizans İmparatorluğu, Arap Krallıkları, Büyük Selçuklu Devleti ve Osmanlı İmparatorluğu devirlerini gören kale 10000 yıldan daha fazla olan bir geçmişe sahip. Kaleyi gezerken rehberimiz bize özellikle Büyük Selçuklu ve Osmanlı mimarilerinin izlerini gösterdi.





Taht odasına girdiğimizde ise mükemmel tavan süslemeleri ile karşılaştık. Rehberimizin anlattığına göre bu tavan süslemeleri tek bir Ermeni aile tarafından yapılmış ve bu işin ustalığı halâ o ailede bulunmaktaymış.





Kaleden Halep’e baktığımızda ise kum rengi karmakarışık taş bir şehir görünüyor. Yine de Halep’i gerçekten tanımak için ona uzaktan bakmak değil bizzat Halep’in daracık sokaklarında gezmek gerekli. Taş duvarlar içinde açık bir kapı görürseniz mutlaka içeri bakın, kesinlikle o dar sokaktan beklemeyeceğiniz güzellikte bir ev ve muhteşem bir avlu göreceksiniz.



Kaleden çıkıp adını Hz. Yahya'nın babası Zekeriyya Peygamber’den alan ve Ulu Camii de denilen Zekeriyya Camii’ne geldik. Caminin içinde Zekerriya Peygamberin türbesi de bulunuyor.







Camiye girerken sadece başımızı örtmemiz yeterli gelmedi ve kapıda verilen çarşafları da giydik. Sokaktaki kadınların çoğu başörtülü veya çarşaflı, az sayıda da olsa başı açık olan kadınlar da var. Fakat dolaşırken ne kadınlar ne de erkekler bizleri yadırgadılar ve çoğu kimse başını bile çevirip bize bakmadı. Farklı dinlerin birarada barış içinde yaşaması çok az şehirde gerçekleşebilen bir şey ve Halep de bunu başarabilen ender şehirlerden.

Daha sonra taş duvarlar arasından akıl hastalarının yıllar boyunca su ve musiki ile tedavi edildiği Bimarhane’ye gittik. Ortasında küçük bir süs havuzu bulunan avluya bakan hücrelerde kalan hastalar iyileştiklerinde oraya girişlerini hatırlamasınlar ve yeni bir hayata başlasınlar diye girdikleri kapı yerine farklı bir kapıdan çıkarlarmış (Aynı tedavi yöntemini kullanan darüşşifa da Edirne’deki II. Beyazıt Külliyesi’nde bulunmakta).

Zekeriya Camii ile şehrin çarşısı (Kapalıçarşı) yanyana bulunuyor. Bizim İstanbul’daki Kapalıçarşı’ya çok benzeyen Halep'in Kapalıçarşı’sı sadece biraz daha küçük (yine de Ortadoğu'un en uzun üstü kapalı çarşısı sayılıyor) ve temizlikten yoksun. Esnafı ise bizimkiyle tamamen aynı ve yabancılara fahiş fiyattan mal satmak için ellerinden geleni yapıyorlar. Bir şey beğendiyseniz mutlaka pazarlık yapın. Beğendiğiniz şeyi aldıktan sonra bir daha da başka dükkana bakmamanızı tavsiye ederiz çünkü sıkı pazarlıkla aldığınızı zannettiğiniz bir malın aynısını diğer dükkanda çok daha ucuza bulabiliyorsunuz. Çarşıda akla gelebilecek her şey bulunabilir (baharatlar, ayakkabılar, altınlar, inciler, giyim eşyaları, vs..) Esnafın çoğu az da olsa Türkçe biliyor ve Türk lirasını da kabul ediyor. Gittiğimizde günlerden cumartesi olduğu için çarşının açılış günüydü ve aşırı bir kalabalık vardı. Suriyeliler bu kalabalığı hiç yadırgamıyorlar, küçücük çocuklar o kalabalıkta ve temiz olmayan yerlerde keyifli bir şekilde oyun oynuyorlar. Suriye’de cuma günü resmi tatil olduğundan çarşı da cuma günü kapalı oluyor ve Halep’e gidip Kapalıçarşı’yı gezmek isterseniz bunu aklınızda bulundurun. Devlet daireleri ise cuma ve cumartesi günleri kapalı, pazar günleri de Suriye’de haftabaşı.

Çarşıda bir saat kadar gezdikten sonra tur rehberimizin bizi götürdüğü restorana gittik. Halep’in güzel dar sokaklarının birindeki eski ve güzel bir konağı restore edip restorana çevirmişler. Halep’te gördüğümüz en temiz yerdi ve yediğimiz yemekler (kebaplar, mezeler, içli köfteler) çok güzeldi. Hatay’da da çok güzel yemekler yememize rağmen Halep’tekiler daha lezzetliydi.



Yemekten sonra Hristiyan vatandaşların çoğunlukta olduğu bir mahalleye gittik. Bu mahallede sokaklar diğer sokaklardan çok daha temiz ve düzenliydi, ara sokaklarındaki konaklar ise restore edilmişti. Burada da biraz dolaştıktan sonra Halep’in meşhur kuru baklavasından da alarak dönüş yoluna çıktık. Dönüşte Suriye sınırında parfümler ve içkiler, çeşitli elektronik eşyalar satılan duty freeye de uğradık. Duty free’de Suri ve TL kabul etmiyorlar, fiyatlar da $ üzerinden. Suriye’den sorunsuz bir çıkıştan ve Türkiye’ye de sorunsuz bir girişten sonra 22:30 gibi tekrar Antakya’daydık. Türk vatandaşları çıkışta da herhangi bir ücret ödemezken, KKTC’li arkadaşlar kişibaşı 550 Suri ödemek durumunda kaldı.

Gelişen Türkiye-Suriye ilişkileri, Türkiye ve Suriye halklarının yakınlaşmasına vesile olmuş. Hatay’da çok sayıda Suriye plakalı araç ve Suriye’de de çok sayıda Hatay ve Gaziantep plakalı araç da vardı. Halep’te Türkiye’den gelen tur otobüsleri de gördük. Türkler olarak Halep’te çok yabancılık çekmeyeceğimiz kesin olsa da daha iyi gezebilmek için turla gidilmesini tavsiye ediyoruz. Gezilecek, görülecek yerleri tek başımıza bu kadar kısa sürede görebilmemiz mümkün değildi ve en önemlisi de o muhteşem yemekleri yiyebileceğimiz yeri de Halep’in daracık sokaklarında bulamazdık. Yine de Halep’i tam anlamıyla gezmek için bir gün yeterli olmadı diye düşünüyoruz. O taşlarla kaplı şehirden çıkarken gezilecek daha çok yer olduğunu ve Halep hakkında öğrenilecek daha çok şey olduğunu bilerek çıktık. Yolumuz tekrar oralara düşerse Halep’e bir daha gideceğimiz ve bu sefer 1 günden fazlasını ayıracağımız kesin.

Türkiye ve Suriye karşılıklı vizeleri kaldırmasaydı Hatay’a gitsek bile bir zamanlar Osmanlı toprağı olan ve bize bu kadar yakın bulunan dünyadaki en eski yerleşim yerlerinden biri, “Doğu’nun Kraliçesi” Halep’i görme imkanımız büyük ihtimalle olmayacaktı. Umarız yakında tüm diğer komşularımızda da vizeye ihtiyaç duymadan rahatça gezebiliriz ve aslında birbirimizden çok da farklı olmadığımızı daha yakından görebiliriz.

Halep’ten bu kadar bahsetmişken Hatay’dan hiç bahsetmemek Hatay gibi güzel bir şehire haksızlık olur. Türkiye’deki en eski yerleşim yerlerinden biri olan ve binlerce arkeolojik esere sahip olan Hatay da Türkiye’de öncelikli olarak gezilmesi ve görülmesi gereken şehirlerden biri. 1939 yılında Türkiye’ye katılmadan önce ayrı bir devlet olan Hatay şimdi de çok farklı kültürlerin birlikte barış içinde yaşadığı bir ilimiz. Antakya çarşısı, Arkeoloji Müzesi, Samandağ’daki Titus tüneli ve Beşikli Kaya Mezarları, Harbiye’deki şelaleler görülmesi gereken başlıca yerler. Özellikle çarşıda yediğimiz kadar güzel künefeyi daha önce hiçbir yerde yememiştik. Harbiye’de ise yemeklerimizi ayaklarımız buz gibi şelale suyu içindeyken yedik. Fakat araya Halep gezisi de girdiği için Hatay’ı da doyasıya gezemedik. Göremediğimiz birçok yer ve tekrar yemek istediğimiz künefe, kabak tatlısı, tepsi kebabı ve mezeler bir sonraki sefer için bahanemiz olacak.











Salı, Eylül 21, 2010

Biyometrik pasaport

Yakında yurtdışına yapmayı planladığımız gezi için pasaportları yenileme ihtiyacı duyunca 1 Haziran 2010 tarihi itibariyle verilmeye başlanan biyometrik pasaporta başvurmaya karar verdik (süresi dolmayan eski tip pasaportlar geçerlilik tarihi 24 Kasım 2015’i geçmeyecek şekilde uzatılabiliyor). Bu yüzden öncelikle biyometrik pasaport başvuru süreci hakkında internette bir araştırma yaptık. İçişleri bakanlığının hazırladığı sitede merak edilen bir çok bilgiye ulaşmak mümkün. Buradan resmi sürece ilişkin bilgi de alınabiliyor. Araştırma yapmamızdaki asıl amaç ise bizden önce başvuran kişilerin yaşadıklarını öğrenip herhangi bir sıkıntı yaşamamaktı. Okuduğumuz bir çok yazıdan faydalandığımız için kendi başvuru sürecimizi de yazıp biyometrik pasaport almak isteyenlere bir nebze de olsa yardımcı olmak istedik.

Randevu ile başvuran herkesin işlemlerini çok kısa bir sürede yapabildiklerini okuduğumuzdan ilk olarak aynı sitenin randevu talebi kısmından Bakırköy Emniyet Müdürlüğü Pasaport Büro Amirliği’nden randevu aldık. Randevu gününe kadar da gerekli belgeleri (2 adet biyometrik vesikalık fotoğraf, varsa önceden alınmış pasaportlar, pasaport cüzdan bedelinin ve pasaport harç bedelinin yatırıldığına dair dekontlar) tamamladık. Fotoğraf çektirdiğiniz yere pasaport için biyometrik fotoğraf çektirmek istediğinizi söylemeniz yeterli, biyometrik fotoğraf şablonu kendilerinde mevcut olduğundan genelde bir sorun çıkmıyor. Harç ve cüzdan bedellerinin ise Ziraat Bankası’na yatırılması gerekiyor. Gerekli belgeleri önceden hazırlamak başvuru işlemini oldukça kısaltıyor.

Kendiniz ve yakınınız için randevuyu birlikte alabiliyorsunuz fakat başvuruda herkesin bizzat şubede olması gerekiyor. Online randevu aldığınızda bir referans numarası veriliyor ve yine randevunuzu online olarak iptal edip değiştirebiliyorsunuz. Randevu ile kısıtlı sayıda başvuru aldıklarından istediğiniz zamanın çok sonrasında bir güne randevu alabilirsiniz. Bu yüzden son güne bırakmamanızı tavsiye ederiz. Biz de tahmin ettiğimizin ilerisinde bir tarihe randevu alabildik. Bununla birlikte randevu almadan pasaport şubelerine bizzat başvurmanız da mümkün. Fakat bu şekilde başvuran çok fazla kişi olduğundan erken saatlerde gitseniz bile uzun zaman beklemeyi göze almalısınız. Çünkü çok uzun bir parmak izi verme sırası oluyor.

Yeni pasaport almak ve eskisini uzatmak isteyenlerin parmak izi vermesi zorunlu. Parmak izi vermeden başvurunuz kabul edilmiyor. Bu yüzden en fazla yarım saat sürecek işlemler için bütün gün boyunca bekleyebilirsiniz. Parmak izinin alındığı tarayıcı çoğunlukla bir kaç denemeden sonra parmak izini kabul ediyor ve sıradaki her kişinin parmak izinin alınması yaklaşık 10 dakika sürdüğünden uzun süre beklemek zorunda kalıyorsunuz. Aslında parmak izi sıralarının çok uzun olduğunu önceden okuduklarımızdan biliyorduk. Yine de parmak izini randevu gününden önce verebilirsek randevu gününde sadece belgelerimizi teslim edip zaman kaybını en aza indirebiliriz diye düşünüp randevudan birkaç gün önce sabah 8 gibi pasaport şubesine gittik. Fakat o saatte bile emniyetin dışına uzunan çok uzun bir kuyruk vardı. İçeri girip parmak izi sırasına girdiğimizde önümüzdeki kişi sayısına göre en iyi ihtimalle 3-4 saat beklememiz gerektiğini gördüğümüzde ise önceden parmak izi vermekten vazgeçtik ve randevu günümüzü beklemeye karar verdik. Diğer yerlerdeki durumu bilmiyorum ama Bakırköy Emniyet Müdürlüğü’nde öğleden sonra sadece randevu alanlara hizmet veriliyor. Bu yüzden bekleme süresi kısalıyor. Biz yine temkinli davranıp randevu saatimizden yaklaşık 1 saat önce parmak izi sırasına girmiş olsak da Bakırköy Emniyet Müdürlüğü çok yoğun olduğundan işimizin bitmesi randevu saatimizi biraz aşmıştı. Aslında randevudan sadece 10-15 dakika önce gitseydik de işlerimizi büyük ihtimalle aynı zamanda halledecektik çünkü randevu saatine göre sırayla parmak izi verdik. Eğer parmak izi daha önceden verilmişse (ehliyet vb. işlemler için) ve bu belgelenebiliyorsa tekrar parmak izi vermeye gerek olmadığını da hatırlatalım. Parmak izi verdikten sonra ise herhangi bir zorlukla karşılaşmadık. Belgelerimizi verdik, görevli memur bilgilerimizi sisteme girdi ve eski pasaportların da iptaliyle işimiz 10-15 dakikada bitti. Pasaportların 8-10 gün içinde adresimize teslim edileceğini söylediler.

Kısaca başvuru sürecinizi fazla beklemeden ve en sıkıntısız şekilde tamamlamak için önceden randevu almanızı ve belgelerinizi tamamlamanızı tavsiye ediyoruz. Biyometrik pasaport türleri, biyometrik fotoğraf, diğer başvuru belgeleri, harçlar, başvuru yerleri hakkında bilgi almak istiyorsanız aynı siteden detaylı bilgiye ulaşabilirsiniz. Herhangi bir aksilik yaşamamanız için siteyi detaylıca incelemeniz mutlaka yararınıza olacaktır. Sitede bulunmayan sorularınız varsa “Online Bilgi Talebi” bölümünden de sorabilirsiniz. Sorularınıza mutlaka cevap alıyorsunuz. Başvurunuz tamamlandıktan sonraki süreci yine referans ve TC kimlik numaranız ile online takip edebilirsiniz.

Türkiye'de pek görmeye alışık olmadığımız şekilde başvuru saatimizden 24 saat sonra online başvuru izleme bölümünden pasaportlarımızın postaya verildiği yazıyordu ve ertesi gün de pasaport adresimize teslim edildi, yani başvurumuzdan yaklaşık 36 saat sonra pasaportlar elimize ulaştı.

Umarız burada anlattıklarımız süreç hakkında bilgi arayanlara yardımcı olur ve sıkıntı yaşamadan pasaport işlemlerini yapabilirler.

Salı, Eylül 14, 2010

Simple tools to increase productivity

I need to switch between windows and mac os x during my regular day (i know mac os x is great but like most of us i must use windows at my job). Mac os x has great features, tools like spotlight and quicksilver which really increase productivity.
These tools are for who likes to manage computer by keyboard, doesn't like shortcuts and doesn't want to take hands off from the keyboard while coding. You can execute any program, open any documents or even play any songs in iTunes with quicksilver and appropriate plugins. So i've been searching windows alternative of quicksilver for a while and i found launchy. I definitely suggest you to use launchy, if you get familiar with it and with the idea it'll save great amount of time and you will work much faster than before.

Cuma, Eylül 03, 2010

Tarihi romanlar

Tarihi oldum olası sevmişimdir (ezberlemem gerekmediği sürece) ama asıl işiniz tarih olmayınca klasik tarih kitaplarını okumak zahmetli ve sıkıcı bir süreç olabiliyor. Bundan dolayı tarihi romanlar her zaman daha çok ilgimi çekmiştir. Hakkını vererek yazılmış tarihi romanlardan hem tarihsel bilgi alabiliyorsunuz hem de romanın o büyülü dünyasını yaşayabiliyorsunuz, eğer bir de yazarın fantastik kurgu (her zaman favorim olmuştur) yeteneği varsa o zaman işte fevkalede bir eser ortaya çıkabiliyor. Son zamanlarda biraz da rastlantı sonucu arka arkaya okuduğum beş kitap işte tam bu şekilde ortaya konulmuş eserlerdi ve bana büyük keyif verdiler. Eğer bunlar aşağıdaki sırayla okunursa eminim bu türe meraklı olanlar en az benim kadar keyif alacaklardır;


Dünyanın İlk Günü: Genç yazar Beyazıt Akman'nın ilk kitabı ve devamı gelecek gibi görünüyor. Yazar yurtdışında yaşıyor ve romanı yazarken dünya çapında saygı görülen kaynaklardan ve arşivlerden yararlandığını belirtiyor. Kitabın konusu kısaca Fatih Sultan Mehmet'in tahta çıkış süreci ve İstanbul'un fethi. İlk bakışta konu çok sıradan ve basit görülebilir fakat kitap o kadar harika kurgulanmış ki kitabı okuduktan sonra Topkapı sarayının önünden geçerken sanki Fatih Sultan Mehmet hala sarayda yaşıyor, Yedikule surlarının önünden geçerken kuşatma daha dün sonlanmış ve başınızı kaldırıp burçlara baktığınızda o ihtişamlı kıyafetleriyle yeniçerileri görecekmiş gibi hissediyorsunuz. En çok beğendiğim ilk 3 kitap arasında olduğunu hiç tereddütsüz söyleyebilirim. Kitapla ilgili daha fazla bilgiyi web sitesinden alabilirsiniz.


İmprimatur: Viyana kuşatması esnasında İtalya'da geçen olayları anlatıyor. Kuşatma altındaki insanların ruh halini ve o zamanlar hakkında bilgi almak için oldukça başarılı bir eser. Tabii ki kuşatmayı yapanlara kuşatma altındakilerin gözüyle bakma fırsatı da veriyor.


1453 Kuşatma: Bu ve bundan sonraki 3 kitap ise Okay Tiryakioğlu'na ait. Kitaplar kadar yazarın yaşam tarzı ve hayatı da son derece ilginç. Yazar aynen Jack Kerouac'in Amerika'da yaşadığı gibi farklı bir coğrafya olan Asya steplerinde yaşayarak bu romanları yazıyor. 1453 Kuşatma da diğer bir Fatih Sultan Mehmet ve İstanbul kuşatması hikayesi, bu romanı diğerinden ayıran ise daha çok Fatih'in o süreç içerisindeki ruh halini anlatmaya çalışması.


Yavuz: Yavuz Sultan Selim'in nasıl 8 sene kısa bir sürede devletin sınırlarını 2,5 katına çıkardığının, babası, kardeşleri ve dünyanın 2 büyük devleti olan Memlük ve Safevilerle olan mücadelesinin hikayesi. Romanı okurken saltanat süresi boyunca siz de Yavuz ile seferden sefere çıkıyor ve roman ilerledikçe nasıl ki etrafındakiler Yavuz'un korkusu ve azametiyle tir tir tiriyorsa siz de onların duygularını hissetmeye başlıyorsunuz.

Kanuni: Kitabın alt başlığından da anlaşılacağı gibi babası Yavuz'un kılıçla yaptığını adaletle yapmaya çalışan ve dünyaya Muhteşem diye ün salmış bir hükümdarın hikayesi. Romanı okurken Muhteşem ünvanını tam anlamıyla hak ettiğini görüyorsunuz. Diğer kitaplarda da olan devşirme ve Türk vezirlerinin çekişmesi bu romanda daha fazla vurgulanıyor. Ayrıca roman yazımında da farklı bir teknik kullanılmış.

İyi okumalar ...

Perşembe, Şubat 25, 2010

adding custom header to webservice calls and solution to saaj problem

I have an application running on weblogic 10.3 that calls several other webservices. Everything was working like a charm until i need to add a SOAP Header to one of the these webservice calls. The SOAP header that i had to add is a custom security header defined as;


<soapenv:Header>
<wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<wsse:UsernameToken xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<wsse:Username>__username__</wsse:Username>
</wsse:UsernameToken>
</wsse:Security>
</soapenv:Header>


To add this header to webservice call i write the following code;


import com.sun.xml.ws.api.message.Header;
import com.sun.xml.ws.api.message.Headers;
import com.sun.xml.ws.developer.WSBindingProvider;
....
private static final String SECURITY_NAMESPACE = "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd";
private static final String MY_USERNAME = "my_username";
....
private void addUsernameSecurityHeader(UserService service) throws SOAPException {
SOAPFactory soapFactory = SOAPFactory.newInstance();

QName securityQName = new QName(SECURITY_NAMESPACE, "Security");
SOAPElement security = soapFactory.createElement(securityQName);

QName tokenQName = new QName(SECURITY_NAMESPACE, "UsernameToken");
SOAPElement token = soapFactory.createElement(tokenQName);

QName userQName = new QName(SECURITY_NAMESPACE, "Username");
SOAPElement username = soapFactory.createElement(userQName);
username.addTextNode(MY_USERNAME);

token.addChildElement(username);
security.addChildElement(token);
Header header = Headers.create(security);
((WSBindingProvider)servis).setOutboundHeaders(header);
}

after adding header to webservice calls following annoying problem popped up;


com.sun.xml.internal.messaging.saaj.soap.LocalStrings != com.sun.xml.messaging.saaj.soap.LocalStrings


some of the pages on the web tell this is a java bug some other says this is a saaj version problem. Whatever, after working more than 8 hours i end up with the following solution;

1. download saaj-impl-1.3.3.jar
2. create an endorsed folder under the JAVA_HOME/lib and copy the new saaj-impl.jar to here. (Be sure weblogic server uses this directory to run application server instances)

I tried this solution with weblogic 10.3.0 and 10.3.2 and it's works ...