<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>Salih Cihan Tek'in Blog'una Eklenen Son Yazılar</title>
<link>http://www.cihantek.com</link>
<atom:link href="http://www.cihantek.com/rss/" rel="self" type="application/rss+xml" /><description>Salih Cihan Tek'in Blog'u</description>
<language>tr-TR</language>
<item>
<title><![CDATA[iPhone SDK ile Temel Dosya İşlemleri ve Application Bundle]]></title>
<link>http://www.cihantek.com/yazilar/iphone-sdk-ile-temel-dosya-islemleri-ve-application-bundle/</link>
<guid isPermaLink="false">http://www.cihantek.com/yazilar/p/30/</guid>
<description><![CDATA[<p>Şu ana kadar yazdığım yazılarda iPhone/iPad uygulamaları için arayüz tasarımı yaparken kullanılan temel bileşenler ve ekranlar arasında navigasyon konusunda gerekli olan temel bilgileri verdim. Bundan sonrasında örnek uygulamadan çok belli başlı işlemleri yapan kod parçaları göstereceğim. Bu yazıda göstereceklerim dosya yönetimi ile ilgili. Daha spesifik olmak gerekirse, iPhone SDK içerisindeki metodları kullanarak Application Bundle içerisindeki bir dosyayı üzerinde değişiklik yapabileceğiniz bir yere nasıl kopyalarsınız, dosya ve klasör nasıl yaratır, taşır, yeniden adlandırır ya da silersiniz, yarattığınız veya kopyaladığınız dosyalara nasıl erişirsiniz bunları anlatacağım.</p>
<p>Yazdığınız iPhone uygulamasını cihaza veya simülatöre yüklendiğinizde iOS uygulamanız için sadece o uygulamanın erişebileceği özel bir alan yaratıyor. Bu alan içerisinde uygulamanızın kendisini ve uygulamayla birlikte verdiğiniz dosyaları içeren "Application Bundle" konuluyor. Daha sonra uygulamanız çalışırken bu bundle içerisinden istediği verileri okuyabiliyor ancak değişiklik yapamıyor (Aslında yapmanın yolu var ancak kesinlikle tavsiye edilmiyor). Uygulamanın üzerinde değişiklik yapacağı dosyaları koymanız için iOS tarafından önceden tanımlanmış bazı klasörler var. Bunlardan en önemli 2 tanesi Documents ve Library klasörleri.</p>
]]></description>
<pubDate>Sat, 16 Jul 2011 21:44:40 GMT</pubDate></item>
<item>
<title><![CDATA[UINavigationController Kullanarak Çok Ekranlı iPhone Uygulamaları Geliştirmek]]></title>
<link>http://www.cihantek.com/yazilar/uinavigationcontroller-kullanarak-cok-ekranli-iphone-uygulamalari-gelistirmek/</link>
<guid isPermaLink="false">http://www.cihantek.com/yazilar/p/29/</guid>
<description><![CDATA[<p>Bu yazımda iPhone uygulamalarında en sık kullanılan navigasyon tipi olan UINavigationController ile derinlikli navigasyonun nasıl yapıldığını anlatacağım. Bu tür navigasyon genellikle çok sayıda ekrana sahip olan uygulamalarda kullanılmakta. Birbirinden bağımsız modüllerden oluşan veher bir modülünde çok sayıda ekran olan uygulamalarda ise hem Tab Barhem de Navigation Bar içeren bir yapı görmek de mümkün ancak bu pekyaygın bir kullanım değil. Burada tek başına Navigation Bar kullanarak 2ekranlı bir uygulama nasıl yapılır onu anlatacağım. Bu yazıyı okumadan önce Tab Bar Controller'dan bahseden <a title="iPhone uygulamalarında tab bar kullanımı anlatan yazım" href="../yazilar/uitabbarcontroller-kullanarak-cok-ekranli-iphone-uygulamalari-gelistirmek/">önceki yazımı</a> okumanızı tavsiye ederim çünkü oradakine benzer işlemler yapacağımız için burada her şeyi çok detaylı anlatmayacağım.</p>
]]></description>
<pubDate>Wed, 22 Jun 2011 12:08:57 GMT</pubDate></item>
<item>
<title><![CDATA[UITabBarController Kullanarak Çok Ekranlı iPhone Uygulamaları Geliştirmek]]></title>
<link>http://www.cihantek.com/yazilar/uitabbarcontroller-kullanarak-cok-ekranli-iphone-uygulamalari-gelistirmek/</link>
<guid isPermaLink="false">http://www.cihantek.com/yazilar/p/28/</guid>
<description><![CDATA[<p></p>
<p>Önceki yazılarımda çok ekranlı iPhone uygulamaları yazmanın 3 farklı yolu olduğunu söylemiştim: </p>
<ul>
    <li>UIScrollView kullanarak tek ekranda birden fazla sayfa göstermek</li>
    <li>UITabBarController kullanarak tab'lı menü yapısı kurmak</li>
    <li>UINavigationController kullanarak tab'sız, derinlikli menü yapısı kurmak.</li>
</ul>
<p>Bunlardan ilkinin nasıl yapılacağını <a href="../yazilar/iphone-sdk-ile-uiscrollview-kullanarak-home-screen-benzeri-sayfalama/" title="ScrollView ile Sayfalama'yı anlattığım yazı">daha önce</a> ele almıştım. Bugünkü yazımda da ikinci yöntemi ele alacağım. Tab'lıarayüzler tipik olarak az sayıda, birbirinden bağımsız işlevselliğesahip ekranları olan uygulamalarda kullanılmakta. iPhone uygulamalarında kullanılmaları çok kolay çünkü iOS işletim sistemi tabdeğiştirdiğinizde ekrana o tab ile ilgili olan ekranın getirilmesi içinyapılması gereken her şeyi sizin yerinize yapıyor. Şimdi bu tip arayüzesahip bir uygulamanın nasıl yapıldığını basit bir örnek üzerindegöstereceğim.</p>
<p></p>
]]></description>
<pubDate>Fri, 10 Jun 2011 12:01:14 GMT</pubDate></item>
<item>
<title><![CDATA[iPhone SDK ile UIScrollView Kullanarak Home Screen Benzeri Sayfalama]]></title>
<link>http://www.cihantek.com/yazilar/iphone-sdk-ile-uiscrollview-kullanarak-home-screen-benzeri-sayfalama/</link>
<guid isPermaLink="false">http://www.cihantek.com/yazilar/p/27/</guid>
<description><![CDATA[Daha önceki bir <a title="Daha önceki iPhone SDK ve ScrollView ile ilgili yazı" href="http://www.cihantek.com/yazilar/iphone-uygulamalarinda-uiscrollview-kullanimi/">yazımda</a> ScrollView bileşeninin nasıl kullanıldığını anlatmış ve gelecekteki bir yazımda bu bileşen yardımıyla iOS ana ekranındaki (home screen) sayfalama işlevseliğinin aynısının nasıl yapılacağını anlatacağımı söylemiştim. Bu yazımda ele alacağım konu tam olarak bu. Her zamanki gibi örnek bir iphone uygulaması yazacağım ancak daha önceki yazımda yazılan şeylerin artık bilindiğini varsayıp orada anlatmış olduğum şeyleri tekrar etmeyeceğim. Örnek uygulamanın her biri basit bir UILabel bileşeni içeren toplam 3 sayfası olacak. Ancak bu sayfalar farklı ViewController'lar tarafından kontrol edilen farklı ekranlarda olmayacak. Tek bir ViewController tarafından kontrol edilen, tek bir ekranda olacak. ScrollView yardımıyla bu tek ekran sanki 3 sayfaymış gibi gösterilecek. Kullanıcıya kaçıncı sayfada olduğu, UIPageControl nesnesinin arayüze koyduğu dairelerle (aynı home screen'de olduğu gibi) gösterilecek.
]]></description>
<pubDate>Fri, 25 Mar 2011 13:17:46 GMT</pubDate></item>
<item>
<title><![CDATA[iPhone Uygulamalarında Web Tarayıcı (UIWebView) Kullanımı]]></title>
<link>http://www.cihantek.com/yazilar/iphone-uygulamalarinda-web-tarayici-uiwebview-kullanimi/</link>
<guid isPermaLink="false">http://www.cihantek.com/yazilar/p/26/</guid>
<description><![CDATA[<p> iPhone/iPad uygulamalarında yaygın olarak kullanılan bileşenlerle ilgili yazılarıma devam ediyorum. Bu yazıda bahsedeceğim bileşen UIWebView. Bu bileşen adından da anlayabileceğiniz gibi bir web tarayıcısı. Safari gibi bir tarayıcıdan tek eksiği navigasyon ve benzeri işlevleri yapabilmek için tuşlara değil, Objective-C kodu aracılığıyla kullanılabilen metod ve özelliklere sahip olması. Bu yazımda göstereceğim örnek uygulamada geri git, ileri git, sayfayı yenile gibi tuşlar ve sitenin gösterileceği bir alandan ibaret olan basit bir web tarayıcısı. Bu örneği takip ederken UIWebView ile bir tarayıcının yerine getirmesi gereken temel işlevleri kod içerisinden nasıl yapılabileceğini öğreneceksiniz.</p>
]]></description>
<pubDate>Tue, 15 Mar 2011 21:16:53 GMT</pubDate></item>
<item>
<title><![CDATA[iPhone Uygulamalarında UIScrollView Kullanımı]]></title>
<link>http://www.cihantek.com/yazilar/iphone-uygulamalarinda-uiscrollview-kullanimi/</link>
<guid isPermaLink="false">http://www.cihantek.com/yazilar/p/25/</guid>
<description><![CDATA[<p>Bu yazımda, iPhone/iPad uygulamaları yazarken daha önceden bahsettiğim bileşenlerden sonra en çok kullanılan bileşen olan UIScrollView'in (Türkçesine kayar panel diyeceğim) nasıl kullanıldığını bir örnek üzerinde açıklayacağım. Temel amacı ekrana sığmayan herhangi bir şeyin kullanıcı tarafından swipe/pitch hareketleri yardımıyla görülüp kullanabilmesini sağlamak olan bu bileşenin piyasada bulabileceğiniz iPhone ve iPad uygulamalarının çoğunda kullanıldığından emin olabilirsiniz. Burada vereceğim örnekte ekrana sığmayan bir resmin ScrollView yardımıyla nasıl gösterilebileceğini ve ScrollView içeriğinin doğrudan kullanıcı müdahelesi olmadan kod içerisinden nasıl kontrol edilebileceğini anlatacağım. Anlatacaklarım basit gibi görünebilir, ancak yazmaya kalkacağınız uygulamaların %90'ında bundan fazlasını bilmeniz gerekmeyecek. Daha sonraki yazılarımdan birinde ScrollView kullanarak nasıl iPhone ve iPad'in ana ekranında olduğu gibi sayfalama yapılabileceğini de göstereceğim. Ancak o yazıyı anlayabilmeniz için önce burada anlatacaklarımı anlamış olmanız gerekiyor.</p>
]]></description>
<pubDate>Thu, 10 Mar 2011 21:14:48 GMT</pubDate></item>
<item>
<title><![CDATA[Programcı Gözüyle iPhone OS ve Android Karşılaştırması]]></title>
<link>http://www.cihantek.com/yazilar/programci-gozuyle-iphone-os-ve-android-karsilastirmasi/</link>
<guid isPermaLink="false">http://www.cihantek.com/yazilar/p/24/</guid>
<description><![CDATA[<p>Bu yazımda iPhone OS (iOS) ve Android işletim sistemleri arasında, her iki platforma da oldukça uzun süredir uygulama geliştiren birinin gözüyle kısa bir karşılaştırma yapacağım. Yapacağım karşılaştırma normal kullanıcıları değil, bu işletim sistemlerine uygulama geliştiren ya da geliştirmeyi düşünen insanların işine yarayacak bir karşılaştırma olacak, çünkü işletim sisteminin kendinden çok, yazılım geliştirirken kullanılan araçlar, SDK'lar ve tamamlanmış olan yazılımın store'a çıkarılma süreçlerinden bahsedeceğim.Yazımı okuyunca anlayacağınız üzere, söz konusu yazılım geliştirime olduğunda Android'in iOS'tan daha iyi olduğunu söylediğim az şey var. O yüzden eğer bir Android fanboy'u iseniz bu yazıyı okumayın. Yok eğer değilseniz, ve bu platformlardan herhangi birini öğrenmeye başlamak istiyorsanız o zaman mutlaka okumanızı tavsiye ederim. Zaten yazılım geliştiren kişilerden fanboy çıkması biraz zor ama ben yine de uyarayım dedim. </p><center><img src="http://www.cihantek.com/yuklenmis_dosyalar/y/2011_02/ios_android.png" alt="ios vs android" /></center>]]></description>
<pubDate>Wed, 02 Feb 2011 08:35:17 GMT</pubDate></item>
<item>
<title><![CDATA[AMD Radeon HD6950 ile Apple 27" Cinema Display - PC Kombinasyonu]]></title>
<link>http://www.cihantek.com/yazilar/amd-radeon-hd6950-ile-apple-27-cinema-display-pc-kombinasyonu/</link>
<guid isPermaLink="false">http://www.cihantek.com/yazilar/p/23/</guid>
<description><![CDATA[<p>Uzun zamandan beri gözüm yüksek çözünürlüklü ve IPS panelli monitörlerdeydi. Yurt dışında NEC ve DELL gibi markaların 2560x1440 gibi yüksek çözünürlüğe sahip çok başarılı monitöreri olmasına karşılık, Türkiye pazarında benzer çözünürlükte alınabilecek wide-gamut olmayan tek monitör Apple 27" Cinema Display. (Wide-gamut olanları <a href="http://www.is-istasyonu.com/Profesyonel_Monit%C3%B6rler">Üçgen Yazılım</a>'dan alabilirsiniz. Oldukça güvenilir olan bu firmada başka hiçbir yerde bulamayacağınız IPS panelli 16:10 monitörler de mevcut.) </p>
<p>Senelerdir Windows kullanıcısı olmama rağmen işim gereği son yıllarda oldukça sık OSX kullanmaktayım bu yüzden tek başına monitör almak yerine 27" iMac almayı da düşünmedim değil ancak;</p>
<ul>
    <li>taşıdığı vasat donanıma rağmen çok yüksek bir fiyata sahip olması (Yaklaşık 5000TL) </li>
    <li>dar bir kasada tüm bilgisayar bileşenlerini barındırdığı (ısınan CPU ve GPU dahil) için arıza yapma olasılığının yüksek olması ve internette hakkında çok şikayet yazılmış olması </li>
    <li>gelecekte donanımını güncellemenin mümkün olmaması ve ekran ile diğer bileşenler aynı kasada olduğu için donanım eskidiğinde ekranın da çöpe gidecek olması </li>
</ul>
<p>gibi nedenlerden dolayı vazgeçtim ve mecburen oldukça kazık bir fiyata satılan 27" Cinema Display'i aldım. Ancak iş tek başına monitörü almakla bitmiyor. </p>
<center><img height="167" width="400" src="http://www.cihantek.com/yuklenmis_dosyalar/y/2011_01/cinemadisplay_hd6950.png" alt="img alt=" /></center>
<p>Bu monitörün de en büyük sorunu Mini Display Port dışında görüntü alma amaçlı hiçbir girişe sahip olmaması. Sanırım bunu monitörün PC'lerde kullanılamayıp sadece Macbook veya Mac Mini'ler ile birlikte kullanılabilmesini sağlamak için yapmışlar. Amaçlarına ulaşmış olduklarını söyleyebilirim çünkü NVIDIA'nın hiçbir ekran kartında Mini Display Port yok ve sadece bir kaç tanesinde Display Port var. ATI/AMD'nin kartlarında ise genellikle normal Display Port bulunmakla birlikte, sadece en son çıkan HD6XXX serisindeki kartlarından bazılarında Mini Display Port var. Yani eğer NVIDIA marka bir kart kullanıyorsanız bu monitörü bilgisayarınıza doğrudan takmanızın bir yolu yok.</p>
]]></description>
<pubDate>Sun, 23 Jan 2011 13:50:54 GMT</pubDate></item>
<item>
<title><![CDATA[iPhone'da Tablo Hücrelerinin İçeriğini Değiştirmek ]]></title>
<link>http://www.cihantek.com/yazilar/iphoneda-tablo-hucrelerinin-icerigini-degistirmek/</link>
<guid isPermaLink="false">http://www.cihantek.com/yazilar/p/22/</guid>
<description><![CDATA[<p>iPhone/iPad uygulamalarında, her bir hücresi derin bir menü sistemi ve onlarca bileşen içeren tablolar görebileceğiniz gibi, 2-3 bileşen içeren hücrelerden oluşan basit tablolar da görebilirsiniz. Aslında uygulamaların geneline bakarsanız, bahsettiğim ikinci türden tabloların çok daha sık kullanıldığını görürsünüz. Kompleks hücre tasarımlarını genellikle Interface Builder ile ayrı bir .xib dosyasında yapmak mantıklıyken, basit hücreler için ayrı dosya oluşturup projei karıştırmaya gerek yoktur. Bu yazıda tablo hücrelerinin içeriğinin isteğe göre nasıl değiştirilebileceğini göstereceğim. Örnek olarak ise her satırında bir tuş ve tuşa basıldığında görünür halden görünmez hale geçen bir tik ikonu içeren bir tablo oluşturacağım.</p>
]]></description>
<pubDate>Fri, 21 Jan 2011 12:55:33 GMT</pubDate></item>
<item>
<title><![CDATA[iPhone Uygulamalarında Tablo (UITableView) Kullanımı]]></title>
<link>http://www.cihantek.com/yazilar/iphone-uygulamalarinda-tablo-uitableview-kullanimi/</link>
<guid isPermaLink="false">http://www.cihantek.com/yazilar/p/21/</guid>
<description><![CDATA[iPhone programlama ile ilgili olan bu ikinci yazımda, iPhone uygulamaları geliştirirken en çok kullanılan bileşenlerden biri olan <strong>UITableView </strong>bileşeninin, yani tabloların nasıl kullanılacağını göstereceğim. Önce bir liste göstermekten başka bir şey yapmayan etkileşimsiz bir tabloyu çalışır hale getirip, sonrasında bu tablonun sırasıyla satırlarına basıldığında bir mesaj gösteren, satırları silinebilen ve satırlarının yerleri değiştirilebilen hale nasıl getirilebileceğini adım adım göstereceğim.
]]></description>
<pubDate>Mon, 17 Jan 2011 23:02:22 GMT</pubDate></item>
<item>
<title><![CDATA[iPhone Programlama - Örnek Bir iPhone Projesi]]></title>
<link>http://www.cihantek.com/yazilar/iphone-programlama-ornek-bir-iphone-projesi/</link>
<guid isPermaLink="false">http://www.cihantek.com/yazilar/p/20/</guid>
<description><![CDATA[<p>Bu yazımda çok basit bir iPhone uygulamasının nasıl yazılacağını anlatacağım. Göstereceğim örnek uygulamanın yapacağı tek şey aynı daha önce yazdığım Android ile ilgili yazıda olduğu gibi, ekranda bir tuş gösterip, tuşa basıldığında kullanıcıya bir mesaj göstermek. Dolayısı ile bu yazının,&nbsp;<a href="http://www.cihantek.com/yazilar/ornek-bir-google-android-projesi/" title="Androd için yazdığım öteki yazı" style="margin: 0px; padding: 0px; text-decoration: none; color: #52a9e6;">Android için yazdığım öteki yazı</a>nın&nbsp;iPhone versiyonu olduğunu söyleyebilirim. Ancak burada anlatmam gereken daha fazla şey olacak çünkü her ne kadar iOS Android'den çok daha iyi ve programcı dostu bir işletim sistemi olsa da, daha önce Mac OSX için yazılım geliştirmemiş olan kişilere tamamen Fransız gelecek bir ortam. Bunun iki temel sebebi var. Biri iPhone uygulamaları geliştirirken Windows veya Linux kullanıcılarının tamamen yabancıolduğu Objective-C dilini kullanmak zorunda olmak. Diğeri de yazılım geliştirme ortamı olarak Visual Studio ve Eclipse'ten çok farklı bir şekilde çalışan XCode&nbsp;IDE'sinin kullanılması.</p>
<p>Göstereğim uygulamanın kendi bir pek işe yarar bir şey yapmıyor belki ancak iOS ortamına giriş yapmak için yeterli olduğunu düşünüyorum.&nbsp;Bu yazımda objective-c dilini anlatmak gibi bir amacım yok, ancak yine de yeri geldiğinde çok kullanılan bazı yapıların ne anlama geldiği hakkında kısa açıklamalar yapacağım.&nbsp;Bu yazıyı okuduktan sonra aşağıdaki soruların cevaplarını almış olacaksınız.</p>
<ul>
    <li>iPhone uygulamaları geliştirmek için hangi yazılım ve donanıma ihtiyaç vardır?</li>
    <li>XCode ile bir iPhone projesi nasıl oluşturulur?</li>
    <li>Bir iPhone projesi hangi klasör ve dosyaları içerir ve bunların işlevi nedir?</li>
    <li>Interface Builder kullanılarak nasıl arayüz tasarlanır?</li>
    <li>Arayüz ile kod arasında nasıl bağlantı kurulur?</li>
    <li>Tuşa basmak gibi basit olaylar nasıl karşılanır?</li>
    <li>Kullanıcıya bir mesaj en kolay nasıl gösterilir?</li>
    <li>iPhone simülatörü nasıl kullanılır? </li>
    <li> </li>
</ul>
<p>Bu cevaplar, iPhone programlama ile ilgili Türkçe bilginin neredeyse hiç olmadığı bu zamanda iPhone uygulamaları geliştirmeye başlangıç yapmak için yeterli olacaktır. Eğer vakit bulabilirsem gelecekte farklı arayüz bileşenlerinin nasıl kullanıldıklarını, cihaz içerisine nasıl kalıcı veriler tutulacağını ve ivme sensörü, GPS, pusula gibi donanımların nasıl kullanılacağını örnekler ile gösteren yazılar yazmayı planlıyorum.&nbsp;</p>
]]></description>
<pubDate>Sun, 16 Jan 2011 12:19:14 GMT</pubDate></item>
<item>
<title><![CDATA[Android ile Resimlerdeki Yüzlerin Bulunması]]></title>
<link>http://www.cihantek.com/yazilar/android-ile-resimlerdeki-yuzlerin-bulunmasi/</link>
<guid isPermaLink="false">http://www.cihantek.com/yazilar/p/19/</guid>
<description><![CDATA[<p>Son 2 aydır yüksek lisans derslerine ek olarak, &nbsp;2 ay önce&nbsp;başlayan ve benim de&nbsp;bir parçası olduğum TÜBİTAK tarafından desteklenen&nbsp;yüz tanıma konulu bir proje üzerinde yoğun olarak çalıştığım için burayla yine fazla ilgilenemedim. Projenin ilk aşaması olan resimlerdeki yüzlerin yerinin tespit edilmesi üzerine yaptığımız çalışmalardan esinlenerek Android'deki yüz bulma sınıfına bir göz atayım dedim ve&nbsp;basit bir uygulama yazdım. Bu yazımda da&nbsp;Android SDK ile birlikte gelen yüz bulma sınıfının bir resim üzerinde nasıl kullanılacağını aşağıdaki resimde çıktısını&nbsp;gördüğünüz bu uygulama&nbsp;üzerinde göstereceğim.<img alt="smiley" src="/Images/Emoticons/smile.png" />&nbsp;(Test resmini TÜBİTAK projesinde de kullandığım&nbsp;<a href="http://www.vision.caltech.edu/html-files/archive.html" title="Caltech yüz veritabanı">Caltech face database</a> adlı yüz veritabanından aldım.)</p>
<center><a href="http://www.cihantek.com/yuklenmis_dosyalar/y/2010_05/android_yuz_bulma_gozluk.png" class="thickbox"><img alt="Android ile yüz yanıma uygulamasının çıktısı " src="http://www.cihantek.com/yuklenmis_dosyalar/y/2010_05/android_yuz_bulma_gozluk_thumb_min.png" /></a></center>
]]></description>
<pubDate>Fri, 07 May 2010 21:02:50 GMT</pubDate></item>
<item>
<title><![CDATA[Android Uygulamaları İçin Grafik Arayüz Editörü - DroidDraw]]></title>
<link>http://www.cihantek.com/yazilar/android-uygulamalari-icin-grafik-arayuz-editoru-droiddraw/</link>
<guid isPermaLink="false">http://www.cihantek.com/yazilar/p/18/</guid>
<description><![CDATA[<p>Android kullanan cep telefonlarına arayüz tasarlama işini sıfırdan başlayıp XML dosyası hazırlayarak yapmak istemeyenler için basit bir arayüz editörü mevcut. <a title="DroidDraw Web Sayfası" href="http://www.droiddraw.org">DroidDraw</a> adındaki bu editör Brendan Burns adında (Bu programı yazdıktan sonra Google tarafından işe alınmış) bir şahıs tarafından yazılmış ve bedava dağıtılıyor. Beta aşamasında olduğu için kendisinden çok fazla bir şey beklememek gerekiyor ancak arayüz tasarımı sırasında kullanılan özelliklerin hangilerinin ne işe yaradığını öğrenmek açısından yararlı olabilir çünkü diğer her grafik arayüz editöründe olduğu gibi burada da yaptığınız her değişikliğin sonucunu anında görüyorsunuz.</p>
<center><img src="http://www.cihantek.com/yuklenmis_dosyalar/y/2010_03/DroidDraw.png" alt="DroidDraw Logo" /></center>
]]></description>
<pubDate>Sun, 28 Mar 2010 15:57:57 GMT</pubDate></item>
<item>
<title><![CDATA[Android Uygulamaları İçin XML Tabanlı Arayüz Tasarımı - LinearLayout]]></title>
<link>http://www.cihantek.com/yazilar/android-uygulamalari-icin-xml-tabanli-arayuz-tasarimi-linearlayout/</link>
<guid isPermaLink="false">http://www.cihantek.com/yazilar/p/17/</guid>
<description><![CDATA[<p>Bu yazı, Google'ın Android platformu üzerinde çalışacak uygulamalar için XML tabanlı arayüz tasarımı ile ilgili yazacağım yazılardan ilki. Bu yazılarımda arayüz tasarımı sırasında kullanmak zorunda olduğumuz container elemanlarından bahsedeceğim. Bu elemanların kullanımını iyi öğrenmek çok önemli çünkü bu elemanlar olmadan arayüzdeki bileşenlerin istediğimiz şekilde dizilmesini sağlamak mümkün değil. En basitinden ekrana her satırda 2 tane olmak üzere toplamda 4 tane tuş koyup bunların simetrik bir şekilde dizilmelerini istiyorsak bu container elemanlarından kullanmak zorundayız. Bundan daha ileri bir örnek olarak web sayfalarında oldukça sık karşılaşılan türden, sol tarafta etiketlerin, sağ tarafta da ilgili yazı kutularının olduğu bir form tasarlamak istiyorsak yine bu container elemanlarından birini (hatta duruma göre iç içe daha fazlasını) kullanmak zorundayız. Bu açıdan bakıldığında container elemanlarının HTML kodu yazarken kullandığımız table ve div tag'lerine benzer amaçla kullanılan şeyler olduklarını söyleyebiliriz.</p>
<p>İlk yazımda bahsedeceğim container, içerisindeki bileşenlerin web tarayıcılarında olduğu gibi box model'e göre yerleşmesini sağlayan ve bu sebeple de en çok kullanılan container olan LinearLayout.</p>
]]></description>
<pubDate>Thu, 18 Mar 2010 20:57:04 GMT</pubDate></item>
<item>
<title><![CDATA[Örnek Bir Google Android Projesi ]]></title>
<link>http://www.cihantek.com/yazilar/ornek-bir-google-android-projesi/</link>
<guid isPermaLink="false">http://www.cihantek.com/yazilar/p/16/</guid>
<description><![CDATA[<p>Bu yazımda Eclipse kullanarak çok basit bir Android uygulaması yazılması ve uygulamanın Android SDK ile birlikte gelen emülatör üzerinde çalıştırılması için yapılması gereken şeylerden bahsedeceğim. Göstereceğim örnek programın yapacağı tek şey ekranda bir tuş gösterip, tuşa basıldığında kullanıcıya bir mesaj göstermek.</p>
<p>Programın kendi bir pek işe yarar bir şey yapmıyor belki ancak bu yazının amacı için fazlasıyla yeterli. Bu yazıyı okuduktan sonra aşağıdaki soruların cevaplarını almış olacaksınız.</p>
<ul>
    <li>Eclipse ile bir Android projesi nasıl oluşturulur?</li>
    <li>Bir Android projesi hangi klasör ve dosyaları içerir ve bunların görevleri nedir?</li>
    <li>XML kullanılarak basit bir arayüz nasıl tanımlanır?</li>
    <li>Tuşa basmak gibi basit olaylar nasıl karşılanır?</li>
    <li>Kullanıcıya bir mesaj en kolay nasıl gösterilir?</li>
    <li>Sanal bir cihaz nasıl oluşturulur ve yazılan program bu cihaz üzerinde nasıl çalıştırılır (emülatör nasıl kullanılır)? </li>
    <li> </li>
</ul>
<p>Tabi ki bu cevaplar sadece başlangıç için yeterli olacak ancak sonraki günlerde bu konuların her birine ayrı ayrı değinmeyi planlıyorum.</p>
]]></description>
<pubDate>Sun, 14 Feb 2010 09:02:52 GMT</pubDate></item>
<item>
<title><![CDATA[Google Android SDK, Eclipse ve ADT Kurulumu]]></title>
<link>http://www.cihantek.com/yazilar/google-android-sdk-eclipse-ve-adt-kurulumu/</link>
<guid isPermaLink="false">http://www.cihantek.com/yazilar/p/15/</guid>
<description><![CDATA[<p>Bu yazımda Google'ın çiçeği burnunda mobil işletim sistemi olan Android üzerine yazılım geliştirmeye başlamak için ihtiyacınız olan bileşenler ve bunların kurulumu hakkında bilgi vereceğim. Burada anlatacaklarımı yaptıktan sonra Android platformu için kod yazıp, yazdığınız kodu Android SDK ile birlikte gelen emülatör veya gerçek bir cihaz üzerinde çalıştırabilecek hale geleceksiniz.</p>
<center><img src="http://www.cihantek.com/yuklenmis_dosyalar/y/2010_02/Android.png" alt="Android SDK Logosu" style="width: 116px; height: 139px;" /></center>
<p> Kurulumundan bahsedeceğim şeyleri saymam gerekirse: </p>
<ul>
    <li>JDK </li>
    <li>Eclipse ve&nbsp;ADT </li>
    <li>Android SDK </li>
</ul>
]]></description>
<pubDate>Sat, 13 Feb 2010 15:37:03 GMT</pubDate></item>
<item>
<title><![CDATA[Hala Hayattayım]]></title>
<link>http://www.cihantek.com/yazilar/hala-hayattayim/</link>
<guid isPermaLink="false">http://www.cihantek.com/yazilar/p/14/</guid>
<description><![CDATA[<p>İş-güç, yüksek lisans, ders kayıtları ve biraz da kafa dinleme derken bayağı uzun süredir sitem ile ilgilenemedim. Sanırım bunda sitemin yapımını aşağı yukarı bitirmiş olmanın etkisiyle "ne de olsa site orada duruyor boş olduğum zaman yazarım" düşüncesinin de bayağı bir katkısı oldu. Ancak bundan sonra yazılarım arasındaki arayı bu kadar açmamaya çalışacağım. Bu yazıyı yazmaya başlamadan önce kendi yazdığım admin panelinin nasıl kullanıldığını bile unutmak üzere olduğumu farkettim.<img alt="smiley" src="/Images/Emoticons/smile.png" /></p>
]]></description>
<pubDate>Fri, 12 Feb 2010 14:34:01 GMT</pubDate></item>
<item>
<title><![CDATA[Google'dan Yeni Bir Programlama Dili: Google Go]]></title>
<link>http://www.cihantek.com/yazilar/googledan-yeni-bir-programlama-dili-google-go/</link>
<guid isPermaLink="false">http://www.cihantek.com/yazilar/p/13/</guid>
<description><![CDATA[<p>Evet Google sonunda bu işe de el attığını, uzun süredir üzerinde çalıştığı programlama dili olan Google Go'nun çalışan bir sürümünü kullanıcılarla paylaşarak resmi olarak duyurmuş oldu. </p>
<p>Google bu dil ile yazılmış programların daha hızlı derlendiğini, daha hızlı çalıştığını, daha güvenli olduğunu iddia ediyor. Python gibi dinamik bir programlama dili ile çalışmanın hızı ile, C++ gibi bir dilin performans ve güvenilirliğini birleştiriyormuş (Vay be iddiaya bak!). Go'nun göze çarpan diğer özellikleri ise şöyle:</p>
<ul>
    <li>Açık kaynaklı olması.</li>
    <li>Garbage collection'a sahip olması. Yani kullanılan bellek alanlarını geri verme derdi yok (Java ve C#'ta olduğu gibi).</li>
    <li>Çok işlemcili sistemlere yönelik yazılım geliştirmeyi kolaylaştıracak yapılara sahip olması.</li>
    <li>C++ kadar yüksek performansa sahip olması.</li>
    <li>Basit olması. </li>
</ul>
<p>Şu an için Windows üzerinde çalışan bir versiyonu olmayan ve daha
emekleme aşamasında olan Google GO'nun ne kadar yaygınlaşacağını zaman
gösterecek. Bu yazıda dil hakkında genel bilgi vereceğim. Detaylı bilgileri <a href="http://golang.org/" title="Go dilinin web sayfası">bu adresten </a>öğrenebilirsiniz.</p>
]]></description>
<pubDate>Sat, 14 Nov 2009 14:31:19 GMT</pubDate></item>
<item>
<title><![CDATA[Ubuntu 9.10'daki  Xorg Server'ın ATI Ekran Kartlarında Yavaş Çalışması]]></title>
<link>http://www.cihantek.com/yazilar/ubuntu-9-10daki-xorg-serverin-ati-ekran-kartlarinda-yavas-calismasi/</link>
<guid isPermaLink="false">http://www.cihantek.com/yazilar/p/12/</guid>
<description><![CDATA[<p><a class="ApplyClass" href="http://www.cihantek.com/yazilar/ubuntu-9-10-karmic-koalanin-getirdigi-yenilikler/" title="Ubuntu 9.10 Karmic Koala'nın getirdiği yenilikler">Önceki yazımda</a>
Ubuntu 9.10 Karmic Koala'nın VmWare üzerindeki performansının olması
gerekenden daha düşük olduğunu ve bu yavaşlığı normal bir kurulum
sonrasında da sürdürüp sürdürmeyeceğini merak ettiğimi söylemiştim.
Bugün Ubuntu 9.10'u bilgisayarımdaki Windows XP'nin yanına kurup
denedim ve performansın VWare'daki performansa kıyasla bile inanılmaz derecede kötü olduğunu gördüm.</p>
<p>Her tıklayışımda yapması gereken şeyi 1-2 saniye donup bekledikten
sonra yerine getiriyordu. Klasörler arasında dolaşmak bile işkence
halini almıştı. Terminalden "top" komutu ile çalışan proseslerin listesini açıp bu
yavaşlığın sebebinin hangi proses olduğuna baktım ve Xorg prosesinin
işletim sisteminde yaptığım her hareket sonrasında işlemcinin %100'e
yakın kısmını kullandığını gördüm. Bu da doğal olarak beni Xorg'un
kullandığım ATI Radeon X1950 ekran kartımla ilgili ciddi problemleri
olduğunu düşünmeye itti.</p>
<p>İnernet üzeride yaptığım araştırma sonucunda sorunun
çözümünün Xorg server ile ilgili ayarların bulunduğu xorg.conf
dosyasında olduğunu öğrendim. Bu dosyaya gerekli satırları ekledikten
sonra Ubuntu en az 9.04 sürümü kadar hızlı çalışmaya başladı. Eğer
sizin de ATI Radeon ekran kartınız varsa ve benzer bir problemle karşı
karşıyaysanız, bu yazıda söylediğim şeyleri yaparak sorununuzu
çözebilirsiniz.</p>
]]></description>
<pubDate>Sun, 01 Nov 2009 14:46:03 GMT</pubDate></item>
<item>
<title><![CDATA[Ubuntu 9.10 Karmic Koala'nın Getirdiği Yenilikler]]></title>
<link>http://www.cihantek.com/yazilar/ubuntu-9-10-karmic-koalanin-getirdigi-yenilikler/</link>
<guid isPermaLink="false">http://www.cihantek.com/yazilar/p/11/</guid>
<description><![CDATA[<p>Bilgisayar kullanıcılarının tartışmasız en çok kullandığı Linux
dağıtımı olan Ubuntu'nun yeni sürümü çıktı-çıkacak derken sonunda sunuculardaki yerini
aldı. Bu şekilde 14 Mayıs 2009 tarihinde çıkan Alpha 1 versiyonuyla
birlikte başlayan ve sonrasında çıkan 7 tane sürüm ile devam eden geliştirme serüveni sona ulaşmış oldu. Peki bu sürümde ne gibi
yenilikler var?</p>
<center><img src="http://www.cihantek.com/yuklenmis_dosyalar/y/2009_10/koala_baby_pic.jpg" alt="Koala resmi" /></center>
<p>Aslına
bakarsanız çok fazla yenilik var. Yani yeni bir Ubuntu sürümünün bir
öncekinden bu kadar ileride olduğunu çok sık göremeyeceğimizi
rahatlıkla söylebilirim. Ancak bu yazdıklarım size Ubuntu 9.10'u
kurduğunuzda çok farklı bir manzara ile karşılaşacağınızı
düşündürmesin. Çünkü yapılmış olan yığınla yeniliğin büyük çoğunluğu
altyapıda. Bir çoğu da Ubuntu'yu geliştirenlerin bayağı uzun bir süre
önceden öne sürdükleri "10 saniyede boot edilen, hızlı ve güvenli
işletim sistemi" iddiasının gerçekleşmesi için atılmış adımlar. Bu yazımda gerek arayüz, gerekse de altyapıda yapılmış bir çok yenilikten en önemli olanları üzerinde duracağım.</p>
<p>İşletim sistemini deneme amaçlı olarak kullandığımda performansı kötüydü. Bunun sebebinin VmWare içerisinde kullanmış olmam olduğunu tahmin ediyorum. Ancak önceki versiyonlarda böyle bir yavaşlık yoktu. Umarım yakında normal bir kurulum yapıp denediğimde de benzer bir durumla karşılaşmam. Eğer karşılaşırsam burada anlattığım hiçbir özelliğin bir anlamı kalmamış oluyor çünkü.</p>
]]></description>
<pubDate>Sat, 31 Oct 2009 18:15:08 GMT</pubDate></item>
<item>
<title><![CDATA[ASP.NET İle Yüksek Kaliteli Dinamik Thumbnail Image Oluşturmak ]]></title>
<link>http://www.cihantek.com/yazilar/asp-net-ile-yuksek-kaliteli-dinamik-thumbnail-image-olusturmak/</link>
<guid isPermaLink="false">http://www.cihantek.com/yazilar/p/8/</guid>
<description><![CDATA[<p>Bu yazı, özellikle blog uygumaları yazanlar için oldukça önemli olan thumbnail image (küçültülmüş resimler) oluşturmak ile ilgili.</p>
<p>Normalde .NET Framework içerisinde bu işi Image objesinin metodlarından biri olan GetThumbnailImage() metodunu kullanarak tek satırda halletmek mümkün. Ancak bu yöntemi kullanmışsanız, oluştuduğu thumbnail resimlerinin genelde düşük (bazen de berbat) kalitede olduklarını görmüşsünüzdür. Yazımda bu sorunu ortadan kaldıran ve resim kalitesine önem veren birçok kişinin  GetThumbnailImage() metodu yerine tercih ettikleri başka bir yöntemi göstereceğim. Göstereceğim yöntemi kullanarak JPG, PNG, GIF gibi çok kullanılan formatların hepsi için kaliteli thumbnail'ler oluşturabileceksiniz. Ayrıca GetThumbnailImage() metodunun neden her zaman iyi sonuçlar vermediğinden de kısaca bahsedeceğim. </p>
]]></description>
<pubDate>Tue, 13 Oct 2009 22:40:52 GMT</pubDate></item>
<item>
<title><![CDATA[Bir Sorguyu Tüm Tablolar Veya Veritabanları Üzerinde Çalıştırmak]]></title>
<link>http://www.cihantek.com/yazilar/bir-sorguyu-tum-tablolar-veya-veritabanlari-uzerinde-calistirmak/</link>
<guid isPermaLink="false">http://www.cihantek.com/yazilar/p/7/</guid>
<description><![CDATA[<p>SQL Server kullanan web uygulamaları geliştiriyorken, herhangi bir sorguyu uygulamaya ait olan tüm tablolar veya tüm veritabanları üzerinde çalıştırmayı istemek çok seyrek karşılaşılan bir durum değil. Buna verilebilecek en yaygın iki örnek muhtemelen bir veritabanı içerisindeki tüm tabloları silmek ve tüm tabloların collation değerini değiştirmektir. Benzer şeyleri bir SQL Server instance üzerindeki tüm veritabanları için yapmak da istenebilir.</p>
<p>Bir çok kişinin böyle durumlarda çözüm olarak gördüğü şey söz konusu sorguyu her tablo/veritabanı için bir kez çalıştırmaktır. Ancak bu yöntemin aslında bir çözüm olmadığı tablo/veritabanı sayısı arttıkça gittikçe kullanılamaz bir hal almasından belli olmaktadır.</p>
<p>Konu hakkında biraz daha bilgi sahibi olan kişilerin aklına ise büyük ihtimalle cursor kullanmak ya da verdikleri sorguyu söz konusu olan her tablo/veritabanı için bir kez çalıştıracak olan bir stored procedure yazmak gelecektir. Her iki çözüm de yukarıdaki paragrafta bahsettiğim çözüme göre çok daha mantıklı olmakla birlikte, basit işler için karmaşık ve gereksizdir. Öyle olmasının sebebi ise&nbsp;SQL Server'daki master veritabanı içerisinde bu tür işlemlerin kolaylıkla yapılmasını sağlayacak stored procedure'lerin&nbsp; zaten tanımlanmış olmasıdır. Bu yazımda, bahsetmiş olduğum işlemleri tek komutla yapmanızı sağlayan, çok işe yarar bulduğum sp_Msforeachtable ve sp_MSforeachdb prosedürlerinden bahsedeceğim.</p>
]]></description>
<pubDate>Thu, 08 Oct 2009 22:38:31 GMT</pubDate></item>
<item>
<title><![CDATA[Desktop Restore İle Masaüstünüzdeki İkonların Yerlerini Koruyun]]></title>
<link>http://www.cihantek.com/yazilar/desktop-restore-ile-masaustunuzdeki-ikonlarin-yerlerini-koruyun/</link>
<guid isPermaLink="false">http://www.cihantek.com/yazilar/p/6/</guid>
<description><![CDATA[<p>Eğer bir Windows kullanıcısıysanız, başta oyunlar olmak üzere tam ekran çalışan veya geçici olarak ekran çözünürlüğü ile oynayan herhangi bir programı kapattığınızda, ekran çözünürlüğünüzün olması gereken değerine tekrar ayarlanmadığı ve masaüstünüzdeki ikonların yerlerinin darmadağın olduğu bir duruma mutlaka şahit olmuşsunuzdur.  Bu durum eğer benim gibi masaüstünü düzenli tutmaya çalışan biriyseniz oldukça canınızı sıkacaktır. Eğer her seferinde tek tek tüm ikonları eski yerlerine sürüklemekten bıktıysanız, bu yazımda bahsedeceğim Desktop Restore adlı ücretsiz programı kullanabilirsiniz. </p>
]]></description>
<pubDate>Tue, 06 Oct 2009 17:36:32 GMT</pubDate></item>
<item>
<title><![CDATA[IIS 7 Url Rewrite Modülü İle URL'lerin Yeniden Yazılması]]></title>
<link>http://www.cihantek.com/yazilar/iis-7-url-rewrite-modulu-ile-urllerin-yeniden-yazilmasi/</link>
<guid isPermaLink="false">http://www.cihantek.com/yazilar/p/5/</guid>
<description><![CDATA[<p>Günümüzde, sitelerin en büyük ziyaretçi kaynakları Google, Bing gibi arama motorları. Sitelerin arama motorlarında üst sıralarda gözükebilmleri için yapılabilecek bir çok şey var.&nbsp; Ancak bunlardan bazıları var ki, artık yapmak bir zorunluluk halini almış durumda. Buna en büyük örnek de Url Rewriting (URL'leri yeniden yazmak). Anlaşılır, kullanıcı dostu URL'ler sadece arama motoru optimizasyonu (SEO) için değil, sitenin navigasyonunun daha anlaşılır hale gelmesini sağladığı için önemli.</p>
<p>URL Rewriting dendiğinde muhtemelen birçok web programcısının aklına ilk gelen şey Apache sunucularda kullanılan mod_rewrite özelliğidir. Ancak bu özellik doğal olarak sadece PHP ile yazılmış olan uygulamalarda kullanılabiliyor. Bu yüzdne Windows sunucular üzerinde çalışacak olan ASP.NET ile yazılmış web uygulamalarında URL Rewriting işlemini yapmak yakın bir zamana kadar Apache'deki gibi kolay değildi. Çünkü IIS'in URL Rewriting yapmayı kolaylaştıracak bir özelliği yoktu. Ancak artık durum değişti.</p>
<p>Microsoft'un yakın bir zamanda çıkarmış olduğu URL Rewrite modülü sayesinde IIS 7 kullanıcıları da artık kolayca URL Rewriting yapma imkanına kavuştu. Bu yazımda Microsoft Url Rewrite modülünün IIS 7 üzerine kurulumunu ve yazım kurallarının doğrudan web.config içerisinden nasıl tanımlandığını örnekler ile birlikte anlatacağım. </p>
]]></description>
<pubDate>Sun, 04 Oct 2009 14:20:58 GMT</pubDate></item>
<item>
<title><![CDATA[Türkiye'de Çalışırsa Her Yerde Çalışır!]]></title>
<link>http://www.cihantek.com/yazilar/turkiyede-calisirsa-her-yerde-calisir/</link>
<guid isPermaLink="false">http://www.cihantek.com/yazilar/p/4/</guid>
<description><![CDATA[<p>Sadece Türkiye'den değil, tüm dünyadan ziyaretçi almasını planladığınız "global" bir siteyi kodlamak, her ne kadar dışarıdan bakıldığında sadece .NET Framework içerisinde bulunan lokalizasyon ile ilgili bir kaç fonksiyonu kullanmakla çözülecek bir problem gibi görünse de, iş uygulamaya geldiğinde gayet kolay bir şekilde Çin işkencesine dönüşebiliyor. Çünkü iş farklı dillerin karakterlerini düzgün bir şekilde gösterecek encoding kullanmakla bitmiyor. Her ülkenin posta kodları, tarih ve saati yazış şekilleri farklılık gösteriyor. Özellikle sitede ziyaretçilerden bu tip verileri alıp veritabanına kaydetmek, bazen de aralarında karşılaştırma yapmak gerekiyorsa...</p>
<center><img alt="" src="http://www.cihantek.com/yuklenmis_dosyalar/y/2009_10/turkey_test_logo.png" /></center>
]]></description>
<pubDate>Fri, 02 Oct 2009 22:47:32 GMT</pubDate></item>
<item>
<title><![CDATA[Management Studio 2008'de Veritabanlarını Listeleme ve Error 916]]></title>
<link>http://www.cihantek.com/yazilar/management-studio-2008de-veritabanlarini-listeleme-ve-error-916/</link>
<guid isPermaLink="false">http://www.cihantek.com/yazilar/p/3/</guid>
<description><![CDATA[<p>Sitelerini paylaşımlı bir hosting hesabı üzerinde barındıran, ya da herhangi bir sebepten dolayı veritabanı sunucuları üzerinde tam kontrole sahip olmayan SQL Server kullanıcılarını, SQL Server 2008'in yanında gelen SQL Server Management Studio 2008'in kötü bir süprizi (bug'ı desem daha doğru olur) bekliyor. Sitemi GoDaddy sunucularındaki paylaşımlı hesabıma transfer ederken
biraz zamanımı çalan bu hatanın sebebini ve çözümünü burada anlatacağım.</p>
<p>Problem kendini, Management Studio 2008 ile veritabanı sunucusuna gayet normal bir şekilde bağlandıktan sonra, sol taraftaki "Object Explorer" bölümündeki "Databases" dalını açmaya kalktığınız zaman belli ediyor.</p>
<center><img alt="management studio 2008 object explorer" src="http://www.cihantek.com/yuklenmis_dosyalar/y/2009_10/management_studio_object_explorer.jpg" /></center>
<p>Databases dalına basıldıktan sonra, object explorer yukarıda göstermiş olduğum halde uzun bir süre beklemeye başlıyor. Siz sabırla listenin alınmasını bekliyorsunuz ancak bir süre sonra veritabanlarının listesiyle değil, aşağıdaki hata mesajı ile karşılaşıyorsunuz.</p>
<center><img style="width: 500px; height: 159px;" src="http://www.cihantek.com/yuklenmis_dosyalar/y/2009_10/management_studio_error_916.jpg" alt="management studio error 916" /></center>
<p>Bu mesajda mavi ile kapatmış olduğum yerde veritabanına girerken kullandığım kullanıcı adım, siyah ile kapatmış olduğum yerde ise benimle uzaktan yakından alakası olmayan birinin veritabanının adı yazıyordu. Mesajı ilk gördüğümde hatanın bende olduğunu düşünüp yaptığım her adımı defalarca kez kontrol ettim. Ancak sonuç alamayınca biraz araştırma yaptım ve sorunun benden değil, Management Studio 2008'deki saçma bir bug'dan kaynaklandığını öğrendim.</p>
]]></description>
<pubDate>Fri, 02 Oct 2009 12:36:09 GMT</pubDate></item>
<item>
<title><![CDATA[İTÜ Programcı]]></title>
<link>http://www.cihantek.com/yazilar/itu-programci/</link>
<guid isPermaLink="false">http://www.cihantek.com/yazilar/p/2/</guid>
<description><![CDATA[<p>Yazıma eğer İTÜ'de okuyan bir lisans öğrencisi değilseniz bu yazıyı görmezden gelmeniz gerektiğini söyleyerek başlayayım. Çünkü bu yazı İTÜ'deki lisans öğrencilerinin gayet yakından tanıdığı İTÜ Programcı adlı yazılımım ile ilgili.</p>
<p>Artık sitemi açmış olduğuma göre, 4 yıl önce yazmış olduğum ve o zamandan beri her dönem daha fazla İTÜ öğrencisinin keşfedip kullanmaya başladığı Programcı'yı da İTÜ'nün bana vermiş olduğu kısıtlı web alanında tutmama gerek kalmadı. Bugünden itibaren Programcı'nın resmi sayfası burası. <a href="http://www.students.itu.edu.tr/%7Etek/">Eski sayfayı</a> biraz değiştirip yüksek lisansım bitene kadar öyle bırakacağım. Zaten yüksek lisansım bittikten sonra o sayfa ben istesem de istemesem de İTÜ Bilgi İşlem Daire Başkanlığı bünyesindeki insanlar tarafından büyük bir zevkle silinecektir.</p>
]]></description>
<pubDate>Thu, 01 Oct 2009 11:19:03 GMT</pubDate></item>
<item>
<title><![CDATA[Merhaba Dünya!]]></title>
<link>http://www.cihantek.com/yazilar/merhaba-dunya/</link>
<guid isPermaLink="false">http://www.cihantek.com/yazilar/p/1/</guid>
<description><![CDATA[<p>Merhaba Dünya!</p>
<p>
Evet, üniversiteye girdiğim yıldan beridir açmayı planladığım, ancak
bir türlü vakit bulup da açamadığım sitemi, programlama ile uğraşan
kişiler için özel bir anlamı olan bu iki kelime ile birlikte resmi olarak
(nihayet!) açmış bulunuyorum.
</p>
<p>
Aslında siteyi bu kadar üzün süre boyunca açmamış olmamın tek
sebebi hazır site kullanmamaya yemin etmiş olmam. İster deli deyin,
ister takıntılı deyin farketmez, ben buyum. Ne zaman üçüncü kişiler/firmalar için değil de, kendim için bir şey yazmaya kalksam, yazacağım kodun vaktim varsa hepsinin, vaktim yoksa da büyük çoğunluğunun kendim tarafından yazılmış olmasını isterim. Zaten şu ana kadar ne öğrendiysem, süre sınırı olmadan kendi çapımda yaptığım şeyler sayesinde öğrendim. Ayrıca Wordpress gibi hazır bir sistem kullanmak yerine kendim yazmış olduğum bir sistemi kullanmanın hem beni ihtiyacım olmayan bir sürü gereksiz özellikten kurtardığını, hem de bana sitenin herhangi bir yerinde istediğim zaman istediğim değişikliği kolayca yapabilme imkanı verdiğini düşünüyorum. Açık kaynaklı sistemlerde düzenli olarak bulunan güvenlik açıkları ise ayrı bir mesele.
</p>
]]></description>
<pubDate>Thu, 01 Oct 2009 11:17:03 GMT</pubDate></item>
</channel>
</rss>
