<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-11927926</id><updated>2011-11-28T03:18:20.642+02:00</updated><category term='flash'/><category term='borsa'/><category term='imkb'/><category term='javascript'/><category term='parkyeri'/><category term='web'/><category term='bilişim'/><category term='proje'/><category term='IT'/><category term='bwcheck'/><category term='yama'/><category term='youtube'/><category term='syntax'/><category term='web3'/><category term='imkbizle'/><category term='protokol'/><category term='red5'/><category term='oflademo'/><category term='firefox'/><category term='hayat'/><category term='güvenlik'/><category term='siberfiber'/><category term='seminer'/><category term='git'/><category term='qooxdoo selenium'/><category term='symbian'/><category term='crawlajax'/><category term='internet'/><category term='macbook'/><category term='debian'/><category term='video'/><category term='vim'/><category term='egitim'/><category term='nasıl'/><category term='snort'/><category term='flowplayer'/><category term='linux'/><category term='debug'/><category term='jmockit'/><category term='ipucu'/><category term='googlebot'/><category term='emacs'/><category term='java'/><category term='kodlama'/><category term='bilgisayar'/><category term='php'/><category term='ajax'/><category term='rtmp'/><category term='zeitin'/><category term='plan9'/><category term='kartaca'/><category term='şifreleme'/><category term='jmeter'/><category term='seo'/><category term='eklenti'/><category term='teknoloji'/><category term='tripledes'/><category term='yasak'/><category term='base'/><category term='html'/><category term='mac'/><category term='log'/><category term='veryansın'/><category term='birim test'/><title type='text'>/ekesken</title><subtitle type='html'>arada yazmak lazım...</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://erhan.kesken.org/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>74</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-11927926.post-144785930261533891</id><published>2011-10-22T11:21:00.008+03:00</published><updated>2011-10-22T12:40:53.677+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='crawlajax'/><category scheme='http://www.blogger.com/atom/ns#' term='seo'/><category scheme='http://www.blogger.com/atom/ns#' term='googlebot'/><category scheme='http://www.blogger.com/atom/ns#' term='ajax'/><category scheme='http://www.blogger.com/atom/ns#' term='html'/><title type='text'>crawlajax</title><content type='html'>ara motorlarının arası javascript ve ajax ile hiç iyi olmamıştır. HTML ve verinin aynı kaynaktan sunuluyor olmasından hiç hazetmeyen bir insan olarak SEO konusu çoğu zaman uygulama mimarisini belirlerken elimi kolumu bağlamıştır.&lt;div&gt;&lt;/div&gt;&lt;div&gt;neyse ki google sonunda bu probleme şöyle bir çözüm sundu:&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://code.google.com/web/ajaxcrawling/docs/getting-started.html"&gt;http://code.google.com/web/ajaxcrawling/docs/getting-started.html&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;eğer URL'inizde hashbang kullanırsanız, google hashbang'ten sonrasını alıp _escaped_fragment_ parametresiyle sunucunuza gönderiyor ve döndüğünüz cevabı indeksleyebiliyor.&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;sunucunuzda bir tarayıcı motoru kullanarak yazılmış veya HTML birim testleri için tasarlanmış araçlarla sayfanın hashbang'li adresini tarayıcıdan açmışcasına işliyorsunuz ve elde ettiğiniz DOM XML'ini cevap olarak basıyorsunuz.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;google bunun için de &lt;a href="http://htmlunit.sourceforge.net/"&gt;htmlunit&lt;/a&gt;'i önermiş. yalnız bizim uygulamamız biraz ağır bir javascript uygulaması olduğundan HTML'in sunucuda işlenmesi çok uzun sürüyor ve performans problemlerine yol açıyordu.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;bu noktada, performans konusunda, kullanılan araçtan bağımsız 3 tavsiyem olacak:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;CSS renderi iptal edin ve CSS dosyalarına  istek yapmadığınızdan emin olun.&lt;/li&gt;&lt;li&gt;resim, flash vs. isteklerini iptal edin. &lt;/li&gt;&lt;li&gt;sunucudan yaptığınız isteklerde kendinize özel bir user agent belirleyin, bu şekilde javascript tarafında isteğin googlebot isteği olduğunu farkedebilir, ve gereksiz işlemlerin önüne geçebilirsiniz (facebook ve google analytics istekleri gibi, bunlar sayfanın işlenme süresini oldukça olumsuz etkiliyor).&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;performans problemleri yaşanınca canlı sayfa işlemeye alternatif olarak, önden tüm siteyi dolaşıp sitenin DOMunun anlık bir görüntüsünü kaydetme ve googlebot geldiğinde statik içerik sunma yoluna yöneldik.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;bu tarafta sayfanın işlenmesi işi için &lt;a href="http://www.phantomjs.org/"&gt;phantomjs&lt;/a&gt;'den faydalandık, sitenin dolaşımı için de kısa bir python kodu yazdık:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="https://github.com/ekesken/crawlajax"&gt;https://github.com/ekesken/crawlajax&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;uygulama şu an sadece bizim ihtiyaçlarımızı görecek şekilde yazıldı, lütfen kendi ihtiyaçlarınız için projeyi çatallamaktan çekinmeyin.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;ajax ve seo anahtar kelimeleri ile arama yaptığımda bir çok öneri bulabiliyorum ama çalıştırılmaya hazır, ürün haline getirilmiş bir şey bulamadım. bu projenin buradaki boşluğu dolduracağını umut ediyorum.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-144785930261533891?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/144785930261533891/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2011/10/crawlajax.html#comment-form' title='2 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/144785930261533891'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/144785930261533891'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2011/10/crawlajax.html' title='crawlajax'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-7740157482204044935</id><published>2011-07-03T11:24:00.006+03:00</published><updated>2011-07-03T16:40:48.386+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='hayat'/><title type='text'>sağ beyin, rüya ve ilham üzerine</title><content type='html'>&lt;a href="http://3.bp.blogspot.com/-BzkRIVmJJog/ThBHBO4kRrI/AAAAAAAADVY/ESaY8d1MiXI/s1600/sol-sag-beyin.gif" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 300px; height: 318px;" src="http://3.bp.blogspot.com/-BzkRIVmJJog/ThBHBO4kRrI/AAAAAAAADVY/ESaY8d1MiXI/s320/sol-sag-beyin.gif" border="0" alt="" id="BLOGGER_PHOTO_ID_5625074021086545586" /&gt;&lt;/a&gt;'&lt;a href="http://oreilly.com/catalog/9781934356050"&gt;pragmatic thinking and learning&lt;/a&gt;' kitabından aldığım şevkle bir süredir rüyalarımın kaydını tutmaya başladım.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;1 dk. önce gördüğüm rüyayı yazıya dökmekten aciz olduğumu farkettim. bir şey aynı anda hem bu kadar net hem bu kadar bulanık nasıl olabilir? görüntüler çok net ama kağıda dökülebilecek bir şey yok ortada.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;kitaba göre beynimizin iki çalışma yöntemi var, biri kontrolümüzde olan sıralı çalışma şekli (sol beyin - left brain - linear brain), diğeri ise bilinçli kullanamadığımız kaotik olan yöntem (sağ beyin - right brain - rich brain). &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;benim anladığım, beynimizin sağ tarafı aslında hiçbir zaman durmuyor, sürekli veri işlemekle (ilişkilendirmekle) meşgul, bazen bu veri işleme sırasında bilgiler rastlantısal olarak sıralı hale gelebiliyor. eğer bu sıralı hale gelme esnasında uyuyorsak bunun adına rüya diyoruz, uyanıksak da ilham.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;sıralı olmayan herhangi birşeyi ne hatırlayabiliyoruz ne de ifade edebiliyoruz. bu yüzden gördüğümüz rüyaya dair parçalar kafamızda net olabiliyor ama bir türlü birleştiremiyoruz. birleştiremeyince ifade edemiyoruz, ifade edemedikçe bulanıklaşıyor.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;bir rüyamda 'ben şimdi bunu yarın nasıl tasvir edeceğim' derdine düşüp, rüyayı görürken bir yandan beynime de gördüklerimi kazımaya çalıştım. işin üzerine gittikçe rüyaların üzerinde bir çeşit kontrol yeteneği geliştirmeye başlıyorsunuz. bir keresinde de uykuya dalma anında rüyanın başlangıcında olduğumu farkettim, henüz sol beyin yerini sağ beyine bırakmadan, uyanık bir bilinçle rüyayı yaşayabildim ve hatta yönlendirebildim. şimdi bunu görmek istiyorum diye düşünüyorum, görmek istediğim şey hayaldan öte bir netlikle karşıma geliyor. bu sırada ne uyuyorum ne de uyanığım. insanların gündüz rüyası dedikleri şey bu olsa gerek.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;her insanda bu rüya yönlendirme yeteneği bir refleks olarak mevcut. film gibi rüyaları da bu şekilde açıklıyorum, sürekli faaliyet halinde olan sadece sağ beynimiz değil, sol beynimiz de biz uyuyorken bile çalışıyor. sağ beynin uyku sırasında önüne attığı küçük sıralı parçaları birleştirip bir hikaye yaratabiliyor kendine.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;bu rüya ve ilham yönetme işini bir çözebilsek rahatlayacağız muhtemelen. aslında bir çok sorunun cevabı hali hazırda beynimizin içinde bir yerlerde var ama bir türlü su yüzüne çıkaramıyoruz. beynimizde sakladıklarımız sadece kendi tecrübelerimiz de değil, atalarımızın tecrübelerini de beynimizin bir yerinde tuttuğumuza inanıyorum.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;insan doğduğunda beyni boş mudur? dolu mu? bence boştur. ama zamanla dolar. nasıl insan büyüdükçe burnu ebeveynlerine ve atalarına benzemeye başlıyorsa, beyin de şüphesiz benzer bir süreçten geçiyor. beynimiz annemize benzedikçe annemizin hatıralarına da sahip olabilir miyiz?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;bilgiyi beyinde nasıl saklıyoruz, beynimizde tuttuğumuz bilgiler beynimizin fiziksel yapısında bir değişikliğe yol açıyor mu? hayatımız boyunca kendi beynimizde oluşturduğumuz sinir ağlarının yapısını bir şekilde gelecek nesillere aktarabiliyor muyuz?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;aktarabildiğimizi bir düşünün. bu durumda beynimiz aslında 1 milyon yaşında bir insanın tecrübesine sahip, nesiller boyu aktarılmış bir bilgi yumağı. bu hayatı erkek-kadın, zengin-fakir, güçlü-güçsüz, hasta-sağlıklı her türlü role bürünerek defalarca yaşamışız. aslında hepimizin beyninde duran bu bilgi hepimizi ölümsüz kılıyor aynı zamanda.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;15 yaşında tecrübe ettiğiniz bir aşk macerasını 30 yaşındaki bilincinizle tekrar yaşadığınızı düşünün, tahmin edemeyeceğiniz ne gelebilir başınıza? bir de bu ilişkiyi 1 milyon yaşında bir insan olarak tekrar yaşadığınızı düşünün. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;beynimizde 1 milyon yıllık bir tarih var, hem de her açıdan görüşümüz olan bir tarih. aynı dönemin padişahının da köylüsünün de hatıraları beynimizin içinde mevcut. çünkü soy ağacınızın bir dalı saraydan geçerken, bir dalı da bir köye uzanıyor.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;tabi hiç bir koşulda bu aşk macerasını 15 yaşındaki halimiz kadar heyecanla yaşayamayız, belki de bu yüzden hatırlamamayı seçiyoruz, yaşama heyecanımızı kaybetmemek için.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-7740157482204044935?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/7740157482204044935/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2011/07/sag-beyin-ruya-ve-ilham-uzerine.html#comment-form' title='1 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/7740157482204044935'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/7740157482204044935'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2011/07/sag-beyin-ruya-ve-ilham-uzerine.html' title='sağ beyin, rüya ve ilham üzerine'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-BzkRIVmJJog/ThBHBO4kRrI/AAAAAAAADVY/ESaY8d1MiXI/s72-c/sol-sag-beyin.gif' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-8367789752929811403</id><published>2011-03-08T20:05:00.036+02:00</published><updated>2011-06-27T00:19:16.026+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='jmockit'/><category scheme='http://www.blogger.com/atom/ns#' term='birim test'/><title type='text'>jmockit ile ideal birim test</title><content type='html'>projeler genelde büyük bir enerji ile başlar. hele bir de çevik programlama ve test güdümlü programlama söylemlerinin büyüsüne kapılmış bir ekibiniz varsa, harıl harıl birim test yazılmaya başlanır.&lt;br /&gt;&lt;br /&gt;zaman problemi olmayan bu enerjik ekip hiç bir şeyden üşenmez. sahte sunucular havalarda uçuşur, veritabanında çılgın sahte veriler oluşturulur. testi yazılmamış tek bir metod bulamazsınız.&lt;br /&gt;&lt;br /&gt;sonra projelerin ortalarına doğru, yazılan kodları birleştirme aşamasına gelindiğinde, odak geliştirmek değil birleştirmek olduğundan yeni test eklenmemeye başlanır. varolan testler ise sınırlı ölçüde güncellenmeye devam eder. metodun kapsamı genişlemişse, genişleyen kapsam için test eklenmez, sadece daha önce yazılmış testlerin geçmesinin sağlayacak şekilde en az değişiklik felsefesiyle test güncellemeleri yapılır.&lt;br /&gt;&lt;br /&gt;projenin sonuna doğru ise ekibimizde ne enerji ne de zaman kalmıştır. ama kod değişmeye devam eder. bu zamanlarda projede "önce çalışsın" havası hakim olur. yazılmış olan testler patlamaya başladıkça yorum haline getirilir.&lt;br /&gt;&lt;br /&gt;ve gün gelir, bakmışsınız, elinizde hiç kayda değer bir birim test kalmamış, projenin başında harcadığınız onca çabayı çöpe atmışsınız.&lt;br /&gt;&lt;br /&gt;bu duruma düşmemek için birim testler konusunda ekibin bilinçlendirilmesi şart. herkesin şu gerçekleri kabul etmesi gerek:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;yaz ve unut birim testi yoktur. test kodunu yazarken bir gün bu kodun başkası tarafından güncellenmesi gerekeceğini unutma.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;birim test yazımı kodun kendisinin yazımından daha uzun sürer, daha çok emek ister.&lt;/li&gt;&lt;li&gt;birim test ile fonksiyonel test ayrı şeylerdir. birim test ile test etmeye çalıştığımız kendi yazdığımız kod, kullandığımız veritabanının veya bağlandığımız web servisinin kodu değil!&lt;/li&gt;&lt;li&gt;test ettiğin metod alt metodlar çağırıyorsa, alt metodun yerine getirdiği işlevin doğrulamasını burada yapma! sadece alt metodun doğru paremetrelerle çağrılıp çağrılmadığını ve alt metodun döndüğü değerlere testini yazdığımız fonksiyon doğru tepki veriyor mu kontrolleri için test yaz.&lt;/li&gt;&lt;li&gt;testleri yorum haline getirmek testleri geçirme yöntemi değildir.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;yine zaman içerisinde bu duruma düşmemek için kendimce geliştirmiş olduğum bir takım prensiplerim mevcut:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;test kodundan harici bir sunucuya, veritabanına vs. bağlanmaya çalışma.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;mümkünse birim testler ön ayar gerektirmesin. projenin kodlarını çekip "ant clean test" demek birim testleri çalıştırmak için yeterli olsun.&lt;/li&gt;&lt;li&gt;uygulamayı üzerinde geliştirdiğin "framework"'u birim testler için ayağa kaldırma.&lt;/li&gt;&lt;li&gt;projenin tüm birim testlerini çalıştırmak 1 dk.'yi geçmesin.&lt;/li&gt;&lt;/ul&gt;bunlar güzel idealler, peki pratikte bunu nasıl yapıyoruz, örneğin tek yaptığı iş veritabanından bir sorgu yapmak olan metodun testini veritabanına bağlanmadan nasıl yazacağız? cevap: sahte nesnelerle.&lt;br /&gt;&lt;br /&gt;sahte nesne yaratmak için, özellikle javada bir çok gelişmiş kütüphane mevcut. yukarıda söylediğim şartları yerine getirebilmeniz için kullandığınız kütüphanenin şu özellikleri deskteklemesi gerek:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;'constructor' üzerine yazabilmelisiniz (metod içerisinde "new" ile yaratılmış nesneleri sahte nesnelerle değiştirebilmek için).&lt;br /&gt;&lt;/li&gt;&lt;li&gt;final/static/native/private metod ve değişkenlerinin üzerine yazabilmelisiniz.&lt;/li&gt;&lt;li&gt;test ettiğiniz sınıfın bir kısmını sahte hale getirebiliyor olmalısınız.&lt;/li&gt;&lt;/ul&gt;tüm bunları yapabildiğim kütüphane jmockit oldu. yine jmockit ekibinin, biraz yanlı da olsa, sahte nesne kütüphanelerinin özelliklerini karşılaştırdığı &lt;a href="http://code.google.com/p/jmockit/wiki/MockingToolkitComparisonMatrix"&gt;şu&lt;/a&gt; tablodan, seçtiğiniz kütüphanenin yeteneklerini kontrol edebilirsiniz.&lt;br /&gt;&lt;br /&gt;ben burada jmockit üzerinden bazı pratik örnekler vermeye çalışacağım:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;sınıfın bir kısmının üzerine yazmak.&lt;/li&gt;&lt;li&gt;statik metodun üzerine yazmak.&lt;/li&gt;&lt;li&gt;private değişkene değer atamak.&lt;/li&gt;&lt;li&gt;metod içerisinde new ile yarattığın bir nesnenin üzerine yazmak.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;b&gt;jmockit ile sahte nesnesi üretilecek bir interface:&lt;/b&gt;&lt;br /&gt;&lt;pre name="code" class="java"&gt;public interface IFoo {&lt;br /&gt; public String bar();&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;b&gt;jmockit ile 'constructor'i üzerine yazılacak 'concrete' sınıf:&lt;br /&gt;&lt;/b&gt;&lt;pre name="code" class="java"&gt;public class Foo implements IFoo {&lt;br /&gt; public Foo() {&lt;br /&gt; }&lt;br /&gt;&lt;br /&gt; public String bar() {&lt;br /&gt;     return "foobar";&lt;br /&gt; }&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;b&gt;birim testi yazılacak örnek sınıf:&lt;/b&gt;&lt;br /&gt;&lt;pre name="code" class="java"&gt;public class Sample {&lt;br /&gt;&lt;br /&gt; private String privateField = "sample";&lt;br /&gt; private IFoo fooNotInitiated = null;&lt;br /&gt; private IFoo fooInitiatedAtConstructor = null;&lt;br /&gt; private IFoo fooInitiatedAtDefinition = new Foo();&lt;br /&gt;&lt;br /&gt; public Sample() {&lt;br /&gt;     this.fooInitiatedAtConstructor = new Foo();&lt;br /&gt; }&lt;br /&gt;&lt;br /&gt; public Sample(IFoo fooPassed) {&lt;br /&gt;     this.fooInitiatedAtConstructor = fooPassed;&lt;br /&gt; }&lt;br /&gt;&lt;br /&gt; public static String staticMethodA() {&lt;br /&gt;     return "a";&lt;br /&gt; }&lt;br /&gt;&lt;br /&gt; public static String staticMethodBCallingA() {&lt;br /&gt;     return staticMethodA() + ",b";&lt;br /&gt; }&lt;br /&gt;&lt;br /&gt; public String instanceMethodUsingPrivateFieldAndNewFoo() {&lt;br /&gt;     Foo foo = new Foo();&lt;br /&gt;     return privateField + ":" + foo.bar();&lt;br /&gt; }&lt;br /&gt;&lt;br /&gt; public String instanceMethodUsingPrivateFooNotInitiated() {&lt;br /&gt;     return fooNotInitiated.bar();&lt;br /&gt; }&lt;br /&gt;&lt;br /&gt; public String instanceMethodUsingPrivateFooInitiatedAtDefinition() {&lt;br /&gt;     return fooInitiatedAtDefinition.bar();&lt;br /&gt; }&lt;br /&gt;&lt;br /&gt; public String instanceMethodUsingPrivateFooInitiatedAtConstructor() {&lt;br /&gt;     return fooInitiatedAtConstructor.bar();&lt;br /&gt; }&lt;br /&gt;}                                                                                                                                                       &lt;br /&gt;&lt;/pre&gt;&lt;b&gt;örnek birim test:&lt;/b&gt;&lt;br /&gt;&lt;pre name="code" class="java"&gt;import junit.framework.TestCase;&lt;br /&gt;import mockit.Mock;&lt;br /&gt;import mockit.Mockit;&lt;br /&gt;import mockit.MockUp;&lt;br /&gt;import static mockit.Deencapsulation.setField;&lt;br /&gt;&lt;br /&gt;public class SampleTest extends TestCase {&lt;br /&gt;&lt;br /&gt; private Sample instance;&lt;br /&gt;&lt;br /&gt; protected void setUp() {&lt;br /&gt;     instance = new Sample();&lt;br /&gt; }&lt;br /&gt;&lt;br /&gt; public void testStaticMethodA() {&lt;br /&gt;     assertEquals("a", Sample.staticMethodA());&lt;br /&gt; }&lt;br /&gt;&lt;br /&gt; public void testStaticMethodBCallingA() {&lt;br /&gt;     Mockit.setUpMock(Sample.class, new Object() {&lt;br /&gt;         @Mock&lt;br /&gt;         public String staticMethodA() {&lt;br /&gt;             return "m";&lt;br /&gt;         }&lt;br /&gt;     });&lt;br /&gt;     assertEquals("m,b", Sample.staticMethodBCallingA());&lt;br /&gt; }&lt;br /&gt;&lt;br /&gt; public void testOverridingNewOperator() {&lt;br /&gt;     new MockUp&lt;foo&gt;() {&lt;br /&gt;         @Mock&lt;br /&gt;         void $init() {&lt;br /&gt;         }&lt;br /&gt;&lt;br /&gt;         @Mock&lt;br /&gt;         public String bar() {&lt;br /&gt;             return "moobar";&lt;br /&gt;         }&lt;br /&gt;     };&lt;br /&gt;     assertEquals("sample:moobar", instance.instanceMethodUsingPrivateFieldAndNewFoo());&lt;br /&gt;     setField(instance, "privateField", "mample");&lt;br /&gt;     assertEquals("mample:moobar", instance.instanceMethodUsingPrivateFieldAndNewFoo());&lt;br /&gt;     assertEquals("moobar", instance.instanceMethodUsingPrivateFooInitiatedAtConstructor());&lt;br /&gt;     assertEquals("moobar", instance.instanceMethodUsingPrivateFooInitiatedAtDefinition());&lt;br /&gt;     instance = new Sample(new Foo());&lt;br /&gt;     assertEquals("sample:moobar", instance.instanceMethodUsingPrivateFieldAndNewFoo());&lt;br /&gt;     assertEquals("moobar", instance.instanceMethodUsingPrivateFooInitiatedAtConstructor());&lt;br /&gt;     assertEquals("moobar", instance.instanceMethodUsingPrivateFooInitiatedAtDefinition());&lt;br /&gt; }&lt;br /&gt;&lt;br /&gt; public void testCreatingMockFromInterface() {&lt;br /&gt;&lt;br /&gt;     IFoo mockFoo = new MockUp&lt;ifoo&gt;() {&lt;br /&gt;         @Mock&lt;br /&gt;         public String bar() {&lt;br /&gt;             return "moobar";&lt;br /&gt;         }&lt;br /&gt;     }.getMockInstance();&lt;br /&gt;     try {&lt;br /&gt;         assertEquals("moobar", instance.instanceMethodUsingPrivateFooNotInitiated());&lt;br /&gt;         fail("expecting null pointer exception here!");&lt;br /&gt;     } catch(java.lang.NullPointerException e) {&lt;br /&gt;     }&lt;br /&gt;     setField(instance, "fooNotInitiated", mockFoo);&lt;br /&gt;     assertEquals("moobar", instance.instanceMethodUsingPrivateFooNotInitiated());&lt;br /&gt;     assertEquals("foobar", instance.instanceMethodUsingPrivateFooInitiatedAtDefinition());&lt;br /&gt;     assertEquals("foobar", instance.instanceMethodUsingPrivateFooInitiatedAtConstructor());&lt;br /&gt;     instance = new Sample(new Foo());&lt;br /&gt;     assertEquals("foobar", instance.instanceMethodUsingPrivateFooInitiatedAtConstructor());&lt;br /&gt;     assertEquals("foobar", instance.instanceMethodUsingPrivateFooInitiatedAtDefinition());&lt;br /&gt;     setField(instance, "fooNotInitiated", mockFoo);&lt;br /&gt;     setField(instance, "fooInitiatedAtConstructor", mockFoo);&lt;br /&gt;     setField(instance, "fooInitiatedAtDefinition", mockFoo);&lt;br /&gt;     assertEquals("moobar", instance.instanceMethodUsingPrivateFooNotInitiated());&lt;br /&gt;     assertEquals("moobar", instance.instanceMethodUsingPrivateFooInitiatedAtDefinition());&lt;br /&gt;     assertEquals("moobar", instance.instanceMethodUsingPrivateFooInitiatedAtConstructor());&lt;br /&gt;     }&lt;br /&gt;}&lt;br /&gt;&lt;/ifoo&gt;&lt;/foo&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;derleyip birim testleri çalıştıran kod:&lt;br /&gt;&lt;/b&gt;&lt;pre name="code" class="bash"&gt;#!/bin/sh&lt;br /&gt;javac -cp .:jmockit/jmockit.jar:junit-4.9b2.jar Sample.java SampleTest.java &amp;amp;&amp;amp; java -javaagent:jmockit/jmockit.jar -cp jmockit/jmockit.jar:junit-4.9b2.jar:. org.junit.runner.JUnitCore SampleTest&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;div&gt;&lt;b&gt;&lt;i&gt;testStaticMethodA:&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;Kendi ürettiği string bir değeri dönen basit bir metod. yazdığımız test de üretilen string değerin ne olduğunu test ediyor.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;i&gt;testStaticMethodBCallingA:&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;burada B metodu kendi içerisinde A'yı çağırıyor. kendi ürettiği string bir değeri A'nın ürettiğiyle birleştirip dönüyor. kurada yazılacak birim testte A'nın ne ürettiğiyle ve nasıl ürettiğiyle ilgilenmiyoruz aslında. doğrulamamız gereken B'nin ürettiği string değer ve A'nın dönüş değerini nasıl kullandığı. dolayısıyla staticMethodA'nın üzerine yazıp döndüğü değere müdahale ediyoruz. staticMethodA veritabanına veya bir webservisine bağlanan bir metod olabilirdi. Bu fonksiyonu sahte hale getirerek tüm bu bağımlılıklardan da kurtulmuş oluyoruz.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;aynı zamanda bu örnekle "sınıfın bir kısmının üzerine yazmak" ve "statik metodun üzerine yazmak" kavramlarını da açıklamış olduk. "staticMethodA" sahte hale getirilirken birim testini yazdığımız "staticMethodBCallinA" metodunun orjinal halini çağırabildik. burada statik metodu sahte hale getirme yöntemi önemli ("Mockit.setUpMock(Sample.class, new Object(){...});" şeklinde). benim denediğim diğer yöntemlerde (new Object yerine Class kullanmak mesela) çeşitli problemler yaşadım (testin birinde sahte hale getirdiğim bir metodun başka bir testte orjinal halini kullanamamak gibi). &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;i&gt;testOverridingNewOperator:&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;bu test içinde yaptığımız new operatörü üzerine yazma işini her birim test arabirimi desteklemiyor, kişisel olarak başlıca jmockit tercih sebebimdir.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;dünya'da herkes ideal kod yazmıyor malesef, kullandığınız her 'framework' veya kütüphane doğru enjeksiyon noktaları bıraksa muhtemelen çok ihtiyacımız olmazdı bu özelliğe. eğer değişken tipi olarak 'interface' değil de 'concrete' sınıflar kullanırsanız ve yarattığınız nesnelerin üzerine yazılabilecek herhangi bir yöntem sunmazsanız (örneğin bir metodun içinde bir nesne yaratıyorsunuz, yeni nesneden bir metod çağrısı yapıp, nesneyi çöpe atıyorsunuz), insanlara new operatörünün üzerine yazmak dışında bir şans bırakmazsınız.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;örnekteki testte $init fonksiyonuyla hiç parametre almayan 'constructor'in üzerine yazmış olduk. o satırdan itibaren çalıştırılan her "new Foo();" işleminde gerçek 'constructor' yerine sahte 'constructor' çalıştırılacaktır. yaratılan nesne'den yapılan metod çağrılarında eğer sahtesi yazılmış bir metod varsa sahtesi, yoksa orjinali çalıştırılacaktır. gerçek 'constructor'in çağrılması istendiği durumlar için jmockit gerçek sınıftan yaratılan bir nesneyi enkapsüle ederek bir çözüm sunmaktadır. burada detaya inmemek için bu konuya girmiyorum.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;dikkat ederseniz 'Sample' sınıfının nesnesi 'setup' fonskiyonunda yaratılmış olmasına rağmen, 'Sample' sınıfının alanlarının tanımlanması aşamasında ve 'constructor'inda yaratılmış 'Foo' nesneleri de sahte nesneler olarak gelmiş (bar fonksiyon çağrıları 'foobar' yerine 'moobar' dönmüş).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;yine bu testte "private değişkene değer atamak" örneğini de 'privateField' değişkeni üzerinden vermiş olduk. 'Spring' gibi sınıf değişkenleri "bean" ayarları okunduktan sonra oluşturulan nesnelerle doldurulan bir 'framework' kullanıyorsanız bu özellik çok işinize yarayacaktır.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;i&gt;testCreatingMockFromInterface:&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;new operatörünün üzerine yazmak güzel ama getirdiği bir dezavantaj var. ya o sınıftan yaratılan her nesnenin üzerine yazmak istemiyorsak? örneğin test etmek istediğiniz metod java.io.BufferedReader sınıfından bir nesne yaratıyor ve sizin de bu sınıfın sahtesini yazmanız gerek. eğer new operatörü üzerine yazarsanız sistemdeki her BufferedReader nesnesini sahte hale getirmiş olursunuz. örneğin üzerine çalıştığınız 'framework' bir yerde BufferedReader nesnesi yaratıyorsa kodunuz çalışmayacak hale gelecektir.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;bu örnekte 'IFoo' interface'inden bir sahte sınıf yaratılıyor ve  önce hiçbir yerde ataması olmayan "fooNotInitiated" değişkenine bu sahte nesne atanıyor.  "fooNotInitiated" örneği annotasyonlarla yaratılan sınıf değişkenleri için güzel bir çözüm. bu sırada "fooInitiatedAtConstructor" ve "fooInitiatedAtDefinition" değişkenleri orjinal 'Foo' nesnesini barındırmaya devam ediyor. daha sonra bu değişkenlerin de üzerine yazılabileceğine örnek olması açısından sahte nesne bu değişkenlere atanarak aynı fonksiyon çağrıları tekrar yapılıyor ve dönüş değerlerinin "moobar" olarak değiştiği görünüyor.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;bu yöntemde en bağlayıcı nokta 'concrete' sınıflardan 'mock' nesne yaratılamaması! yani 'Sample' sınıfının "fooNotInitiated" değişkeninin tipi 'IFoo' değil de 'Foo' olsaydı elimizden birşey gelmezdi. 'concrete' sınıfı sahte hale getirmenin tek yolu $init fonksiyonunu kullanmak. yani kullandığınız kütüphane değişken tipi olarak 'concrete' sınıflar kullanmışsa elinizi kolunuzu bağlamış oluyor.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;özetle kullandığınız birim test çatılarının yetenekleri de bir yere kadar, bir yerde yine gelip insan faktörüne takılabiliyorsunuz.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;test edilebilir kod yazmak ya da yazmamak! işte bütün mesele bu!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-8367789752929811403?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/8367789752929811403/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2011/03/jmockit-ile-ideal-birim-test.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/8367789752929811403'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/8367789752929811403'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2011/03/jmockit-ile-ideal-birim-test.html' title='jmockit ile ideal birim test'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-8341269639200466164</id><published>2011-01-18T23:50:00.010+02:00</published><updated>2011-01-28T19:52:41.474+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='kartaca'/><title type='text'>kartaca'ya geçtim</title><content type='html'>kartaca parkyeri çatısı altında kurulmuş bir şirket. askerden döndüğümde yine parkyeri çatısı altında kurulan bir diğer şirket zeitin'de çalışmaya başlamıştım. zeitin parkyeri'nden sermaye alınarak kuruldu, kartaca ise parkyeri'nin hali hazırda yaptığı projeleri devraldı.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;zeitin sonrasında mynet'e geçiş hikayemi şu &lt;a href="http://erhan.kesken.org/2009/10/evlendim-ve-isimi-degistirdim.html"&gt;blog girdimde&lt;/a&gt; özetlemeye çalışmıştım.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;mynet'te geçen mutlu 1.5 yılın ardından çok da kolay olmayan bir kararla kartaca'ya geçerek parkyeri çatısı altına geri dönmüş oldum.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;aslında çok "geri dönmek" denilemez, çünkü her ne kadar kartaca parkyeri'nin işlerini devralmış olsa da iş yapış yöntemleri olarak kendine bambaşka bir yol çizmiş durumda. takımlar ve hedefler üzerine kurulu yeni bir düzen getirilmiş.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;mynet'te gerek yaptığım işten tatmin olmam gerekse iş arkadaşlarımla mutlu olmam geçiş kararımı oldukça güçleştirdi. bu kararı kendimce şu nedenlere dayanarak rasyonalize ettim:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;gelir ve gelir arttırma konuları&lt;/li&gt;&lt;li&gt;sistem mühendisliğine geçme isteğim&lt;/li&gt;&lt;li&gt;eğitim bütçesi olması&lt;/li&gt;&lt;li&gt;seminerlere katılım/seminer verme teşviği&lt;/li&gt;&lt;li&gt;özgür yazılım dünyasına yakınlık&lt;/li&gt;&lt;li&gt;bir kütüphanesinin olması&lt;/li&gt;&lt;li&gt;bedava çikolata&lt;/li&gt;&lt;li&gt;teknoloji şirketi olması&lt;/li&gt;&lt;li&gt;şirket etiği ve vizyonunun olması&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;gelir ve gelir arttırma konuları: &lt;/b&gt;kartaca'nın şu anda bana sunduğu şartları mynet sunamadı. mynet'te geliştirici pozisyonu için belirlenmiş bir maaş seviyesi mevcut, bu seviyenin üzerine çıkamıyorsunuz, yazılım tarafında da oturmuş bir yönetim kadrosu olduğundan terfi gibi bir durum da söz konusu değil, dolayısıyla gelirimi arttırma konusunda biraz önüm kapanmıştı. bu açıdan kartaca'da geleceğimin daha parlak olacağını düşündüm, büyümekte olan bir firmaya zamanında yapılan bir geçiş olacağı kararını verdim.&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;sistem mühendisliğine geçme isteğim:&lt;/b&gt; askerlik sonrası aldığım bir kararı 3 yıl sonra uygulama şansım olacaktı. bunu aslında mynet'te de yapabilirdim, ama mynet'te sistem tarafında mutlu olabileceğime dair şüphelerim vardı, sistem tarafının dünyası ile yazılım tarafının dünyası bambaşka mynet'te. 1.5 yılda mynet'te 3 defa mesaiye kalmışlığım ya vardır ya yoktur, sistemde ise insanların sürekli mesai yapıyor olması gibi sebepler geçiş yapmama engel oluyordu. kartaca'ya geçişim ile birlikte ruslar sıcak denizlere inemeden ben sistem mühendisliğine geçebildim ve hatta yeni sıfatımı da kendimce belirledim: "Site Güvenilirlik Mühendisi (Site Reliability Engineer - SRE)". "yazılım geliştiricisi" sıfatıyla proje yöneticisi veya müdür olmadan maaşınızı arttırmanız çok mümkün değil malesef, insan yönetmekten uzak durmak ve işin mutfağında kalmak isteyen bir insan olarak yeni sıfatımın amaçlarıma daha iyi hizmet edeceğini düşünüyorum. ve her zaman yazılım geliştirmeye hobi olarak devam edebilirim.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;eğitim bütçesi olması:&lt;/b&gt; kartaca'da herkesin bir eğitim bütçesi kumbarası var, aylık 100$ atılıyor bu kumbaraya. kendi seçtiğin herhangi bir eğitim için bu bütçeden faydalanabiliyorsun. açıkcası sırf bu bütçeden faydalanayım diye muhtelif sertifikaları toplamayı düşünüyorum yavaş yavaş. normalde maaş olarak verseler bana bu parayı eğitim bütçesi adı altında, eğitime harcamazdım muhtemelen, bu şekilde olunca ağaç zorla eğilmiş oluyor. şirketinin eğitimini düşünüyor olması ve alacağın eğitim konusunda da seni özgür bırakıyor olması güzel bir şey.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;seminerlere katılım/seminer verme teşviği:&lt;/b&gt; çalışanları seminer versin/alsın diye ittiren bir şirket olması.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;özgür yazılım dünyasına yakınlık:&lt;/b&gt; parkyeri ve çatısı altında kurulan şirketler hep türkiye'deki özgür yazılım camiasının yanında olmuştur, maddi ve manevi olarak. bu da güzel bir çevre edinme şansı veriyor insana.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;bir kütüphanesinin olması: &lt;/b&gt;bunun değerini kaybedince anladım. okuduğu kitabı bir daha okumayan bir insan olarak kitap biriktirme işini hep anlamsız bulmuşumdur. okurken itu'nun, çalışırken de parkyeri'nin kütüphanesini sömürdüğümden mynet'e geçince bir boşluğa düştüm. kitaba para vermek, evde kütüphane oluşturmak gibi yeni kavramlar girdi hayatıma. kartaca'da teknik olsun/olmasın istediğiniz kitabı söylüyorsunuz alıyorlar. kitap dışında yurt içi/dışı birçok derginin üyeliğinden de faydalanabiliyorsunuz. teknik olarak herhangi bir konuda bir kitaba ihtiyacınız olduğunda, aradığınız kitabı daha önce birilerinin sipariş etmiş olmasının hazzı bambaşka birşey. teknik olmayan kitaplar da kitap okuma faaliyetini sosyal bir hale dönüştürmesi nedeniyle önemli.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;bedava çikolata: &lt;/b&gt;mynet'te maaşımızın bir kısmını yatırdığımız gündelik "saat 5" çaylarımız vardı, bu molalarımızda en çok aradığım şey parkyeri'ndeki bedava  abur cubur/içeçek dolabımız olurdu. böylece hep insanlara bahsini ettiğim dolabıma kavuşmuş oldum. Böyle uygulamalar şirketler için çok önemli, çok fazla bir maliyet yaratmadan çalışanlarınızın kalbini fethetmenin en kolay yolu.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;teknoloji şirketi olması:&lt;/b&gt; bir şirketin teknoloji satıyor olması ile kullanıyor olması apayrı şeyler. kartaca doğrudan adam-gün satıyor, dolayısıyla şirketin pazarladığı doğrudan çalışanlarının teknik yetenekleri ve şirkette birikmiş olan bilgi. dolayısıyla ben bilgimi ve yeteneklerimi arttırdığım sürece şirketin değeri de artmış oluyor. doğrudan bir kazan-kazan ilişkisi söz konusu. mynet ise üyelik ve reklam gelirleriyle ayakta duran bir şirket. teknik adam olarak şirketin başarısındaki rolünüz biraz daha küçük oluyor bu durumda. yarın bir gün mynet tüm teknik işlerini rahatlıkla taşeronlaştırabilir mesela, ama kartacanın varoluş sebebi barındırdığı teknik personel.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;şirket etiği ve vizyonunun olması:&lt;/b&gt; askerliğim öncesi parkyeri'nde bir vizyon/misyon belirleme çalışması yapmıştık. kartaca bu çalışmanın çıktısını sahiplenmiş ve bu yolda köklü değişiklikler yapmış. şirket bir yandan ayakta durabilmenin gereklerini yerine getirebilirken bir yandan da belirlediği vizyon doğrultusuna ilerlemeyi başarabilmiş. ve bunlar başarılırken parkyeri zamanında benimsenmiş etik değerler korunabilmiş. kartaca için çok rahatlıkla şunları söyleyebilirim: çalışanın sosyal haklarını gasp etmez (stajyerlere bile sigorta yapılıp, maaş bağlanır, kartaca çapında bunu yapan başka şirket olduğunu sanmıyorum türkiye'de), vergi kaçırmaz, kaçak yazılım kullanmaz, yasa dışı iş yapmaz. türkiye'de bunları kendi şirketi için şüphe etmeden söyleyebilecek kaç çalışan var? &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-8341269639200466164?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/8341269639200466164/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2011/01/kartacaya-gectim.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/8341269639200466164'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/8341269639200466164'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2011/01/kartacaya-gectim.html' title='kartaca&apos;ya geçtim'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-4618985904496874044</id><published>2011-01-18T11:55:00.014+02:00</published><updated>2011-06-26T17:55:04.268+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='tripledes'/><category scheme='http://www.blogger.com/atom/ns#' term='şifreleme'/><category scheme='http://www.blogger.com/atom/ns#' term='php'/><category scheme='http://www.blogger.com/atom/ns#' term='kartaca'/><title type='text'>php'de MCRYPT_3DES ve MCRYPT_MODE_CBC ile şifrelemenin java'daki karşılığı</title><content type='html'>php'de &lt;a href="http://en.wikipedia.org/wiki/Triple_DES"&gt;TripleDES&lt;/a&gt; şifreleme algoritması ile &lt;a href="http://en.wikipedia.org/wiki/Cipher_block_chaining"&gt;CBC&lt;/a&gt; mod kullanarak ürettiğiniz şifrelenmiş sözcüğün aynısını java'da üretmek için internette arandığınızda karşınıza iki anahtar sözcük çıkacaktır:&lt;div&gt;&lt;ul&gt;&lt;li&gt;DESede (algoritma olarak)&lt;/li&gt;&lt;li&gt;DESede/CBC/PKCS5Padding (dönüşüm metodu)&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;burada yanıltıcı olan dönüşüm metodu, php "PKCS5Padding" desteklemediğinden şifrelemek için verdiğiniz sözcüğün sonuna, kendince, 8'in katı kadar karakter sayılı hale getirecek şekilde boş karakterler ekliyor. Dolayısıyla java'da da dönüşüm metodu olarak "DESede/CBC/NoPadding" kullanıp, eksik karakter hatası[1] almamak için de php'nin yaptığını elle yapmanız gerekli.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;aşağıdaki şifreleme için kullanılan php kodunun java karşılığını daha da aşağısında bulabilirsiniz.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;PHP:&lt;/div&gt;&lt;pre name="code" class="php"&gt;&lt;br /&gt;$plaintext = "Some-plain-text-message-to-be-symetrically-encrypted";&lt;br /&gt;$deskey = "secret word with 24 byte";&lt;br /&gt;$ivkey = "12345678";&lt;br /&gt;$td = mcrypt_module_open(MCRYPT_3DES, '', MCRYPT_MODE_CBC, '');&lt;br /&gt;mcrypt_generic_init($td, $deskey, $ivkey);&lt;br /&gt;$encrypted_data = mcrypt_generic($td, $plaintext);&lt;br /&gt;mcrypt_generic_deinit($td);&lt;br /&gt;echo strtoupper(bin2hex($encrypted_data));&lt;br /&gt;mcrypt_module_close($td);&lt;br /&gt;&lt;/pre&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;JAVA:&lt;br /&gt;&lt;pre name="code" class="java"&gt;&lt;br /&gt;import javax.crypto.Cipher;&lt;br /&gt;import javax.crypto.SecretKey;&lt;br /&gt;import javax.crypto.SecretKeyFactory;&lt;br /&gt;import javax.crypto.spec.DESedeKeySpec;&lt;br /&gt;import javax.crypto.spec.IvParameterSpec;&lt;br /&gt;import org.apache.commons.codec.binary.Hex;&lt;br /&gt;import java.util.Date;&lt;br /&gt;import java.util.Arrays;&lt;br /&gt;import java.text.SimpleDateFormat;&lt;br /&gt;import java.text.ParsePosition;&lt;br /&gt;&lt;br /&gt;public class Encrypt {&lt;br /&gt;&lt;br /&gt;public static void main(String[] args) throws Exception {&lt;br /&gt;String plainText = "Some-plain-text-message-to-be-symetrically-encrypted";&lt;br /&gt;String desKey = "secret word with 24 byte";&lt;br /&gt;String ivKey = "12345678";&lt;br /&gt;String algorithm = "DESede";&lt;br /&gt;// String transformation = "DESede/CBC/PKCS5Padding";&lt;br /&gt;String transformation = "DESede/CBC/NoPadding";&lt;br /&gt;byte[] keyValue = desKey.getBytes("UTF-8");&lt;br /&gt;byte[] ivValue = ivKey.getBytes("UTF-8");&lt;br /&gt;DESedeKeySpec keySpec = new DESedeKeySpec(keyValue);&lt;br /&gt;IvParameterSpec iv = new IvParameterSpec(ivValue);&lt;br /&gt;SecretKey key = SecretKeyFactory.getInstance(algorithm).generateSecret(keySpec);&lt;br /&gt;Cipher encrypter = Cipher.getInstance(transformation);&lt;br /&gt;encrypter.init(Cipher.ENCRYPT_MODE, key, iv);&lt;br /&gt;// byte[] input = plainText.getBytes();&lt;br /&gt;byte[] input = getPaddedBytes(plainText);&lt;br /&gt;byte[] encrypted = encrypter.doFinal(input);&lt;br /&gt;System.out.println(new String(Hex.encodeHex(encrypted)).toUpperCase());&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;public static byte[] getPaddedBytes(String s) throws java.io.UnsupportedEncodingException {&lt;br /&gt;int n = s.length();&lt;br /&gt;n = n + (8 - (n % 8));&lt;br /&gt;byte[] src = s.getBytes("UTF-8");&lt;br /&gt;byte[] dst = Arrays.copyOf(src, n);&lt;br /&gt;return src;&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;[1] javax.crypto.IllegalBlockSizeException: Input length not multiple of 8 bytes&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-4618985904496874044?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/4618985904496874044/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2011/01/phpde-mcrypt3des-ve-mcryptmodecbc-ile.html#comment-form' title='2 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/4618985904496874044'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/4618985904496874044'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2011/01/phpde-mcrypt3des-ve-mcryptmodecbc-ile.html' title='php&apos;de MCRYPT_3DES ve MCRYPT_MODE_CBC ile şifrelemenin java&apos;daki karşılığı'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-1631187521433163129</id><published>2010-04-04T13:00:00.012+03:00</published><updated>2010-04-04T13:37:16.180+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='bilişim'/><category scheme='http://www.blogger.com/atom/ns#' term='seminer'/><title type='text'>özgür yazılım ve linux günlerinin ardından</title><content type='html'>bir '&lt;a href="http://www.ozguryazilimgunleri.org/"&gt;özgür yazılım ve linux günleri&lt;/a&gt;' etkinliği daha geride kaldı. biz eski parkyeri çalışanları için bir çeşit mezun günü buluşması anlamı da taşıyor bu senelik etkinlik, dostlarla bir araya gelmemize vesile oluyor.&lt;br /&gt;&lt;br /&gt;bu seneki etkinlikten kazanımlarım ise '&lt;a href="http://www.bitder.org"&gt;Bilişim ve İletişim Çalışanları&lt;/a&gt;' derneğinin farkına varmam ve brian king'in sunumundan edindiğim &lt;a href="https://jetpack.mozillalabs.com/"&gt;jetpack&lt;/a&gt; ve &lt;a href="https://wiki.mozilla.org/Drumbeat"&gt;drumbeat&lt;/a&gt; anahtar sözcükleri oldu.&lt;br /&gt;&lt;br /&gt;bu arada yine brian king'in sunumu sırasında, firefox'ta, özellikle video üzerinde css'le yapılabilecek hareketleri gösterdiği demo oldukça etkileyiciydi, depodan son sürümü çekip derleyesim geldi.&lt;br /&gt;&lt;br /&gt;drumbeat mozilla'nin oluşturmaya çalıştığı, internetin 10 sene sonraki sosyal portresini belirlemeyi hedefleyen felsefi tartışmaların döndüğü bir platformmuş. yani &lt;a href="http://www.w3.org/"&gt;w3c&lt;/a&gt;'nin teknik olmayanı. internetin insani değerleri koruyarak, herkese açık kalarak, katılımı teşvik edici ve merkezi olmayan bir şekilde büyümesine devam edebilmesi için uzun vadeli stratejik kararların alınabileceği bir topluluk yaratmaya çalışıyorlar anladığım kadarıyla.&lt;br /&gt;&lt;br /&gt;jetpack ise firefox'un insanı &lt;a href="https://developer.mozilla.org/en/XUL"&gt;xul&lt;/a&gt;'le uğraştırmayan eklenti geliştirme paketiymiş, yeni bir eklenti yazmanız için sadece html, css ve javascript bilgisi yeterliymiş, jetpack ile yazılmış eklentiler tarayıcınızı açıp kapamanızı da gerektirmiyormuş kurulumdan sonra. ama tabiki xul ile yazılmış eklentiler kadar güçlü değil henüz, ama benim &lt;a href="https://addons.mozilla.org/en-US/firefox/addon/7250"&gt;imkbizle&lt;/a&gt; gibi basit eklentiler için çok faydalı bir icat olmuş bence. muhtemelen eklenti yazan insan sayısını da arttıracaktır bu yaklaşım.&lt;br /&gt;&lt;br /&gt;(hemen araya bir parkyeri reklamı sokayım) parkyeri'nde calışmanın ayrıcalıklarını insan uzaklaşınca farkediyor. misal jetpack diye birşeyi parkyeri'nde çalışıyorsanız duymamamınıza çok imkan yoktur, mutlaka biri lafını eder, ister istemez kulak misafiri olursunuz. jetpack'i özgür yazılım günlerinde duymuş olmam biraz dünyayla bağlantımın kesildiği hissi yarattı bünyemde. bu arada parkyeri bu hızla şirket doğurmaya devam ederse, yakında &lt;a href="http://www.ozguryazilimgunleri.org/images/afis_2010.png"&gt;afiş&lt;/a&gt;lerin altında diğer sponsorların logosuna yer kalmayacak.&lt;br /&gt;&lt;br /&gt;bunlar dışında etkinliğin geneline bakacak olursak, sanki geçmis senelere oranla biraz daha sönük geçti gibi geliyor bana, tabi ben de büyümüş olabilirim artık. ama türkiye debian listelerinde de eskisine göre bir durağanlık söz konusu mesela. sanki özgür yazılım camiasının büyümesinde bir yavaşlama var. diğer yandan etrafımda linux kullanan insan sayısında da bir artış görüyorum. galiba artık linux kullanıcıları uzaylı muamelesi görmediğinden linuxcuları birbirine yaklaştıran bağlarda da bir zayıflama yaşanıyor. eskiden linux kullanan insanlar birbirlerine daha benzer bir profile sahipken, şimdi çesitlilik biraz daha arttı sanki, bağların zayıflamasını da buna bağlıyorum kendimce.&lt;br /&gt;&lt;br /&gt;sonuç olarak faydalı ve birleştirici bir etkinlik oldu, emeği geçen herkeze teşekkürler, umarım hiç sonu gelmez bu etkinliklerin.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-1631187521433163129?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/1631187521433163129/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2010/04/ozgur-yazlm-ve-linux-gunlerinin-ardndan.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/1631187521433163129'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/1631187521433163129'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2010/04/ozgur-yazlm-ve-linux-gunlerinin-ardndan.html' title='özgür yazılım ve linux günlerinin ardından'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-8582024787277945607</id><published>2010-01-12T23:13:00.005+02:00</published><updated>2010-01-17T19:35:19.130+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='siberfiber'/><title type='text'>siberfiber ne ki?</title><content type='html'>bu soruya sıklıkla maruz kalıyorum ve genelde &lt;a href="http://www.intimatek.com/index.php?id=63,0,0,1,0,0"&gt;siberfiber&lt;/a&gt;'i insanlara anlatma girişimim hüsranla sonuçlanıyor, yazayım rahatlayım dedim.&lt;br /&gt;&lt;br /&gt;siberfiber &lt;a href="http://www.intimatek.com/index.php?hakkimizda"&gt;intimatek&lt;/a&gt; çatısı altında geliştirilen, tübitak desteği alan, bir bilgisayar destekli yönetim yazılımı. iş analistlerinin, bir programcıya ihtiyaç duymadan, sektörlere ve şirketlere özel kurumsal kaynak planlama (KKP)[1] ve iş akışı yönetimi (IAY)[2] çözümleri üretebilmelerini sağlayan bir ortam yaratmayı hedefliyor.&lt;br /&gt;&lt;br /&gt;siberfiber'i bir ar-ge çalışmasi yapan ise bazı köklü problemlere özgün çözümlerle yaklaşması. bir KKP yazılımında ana problem bir kaynakta meydana gelen değişimi, bu değişimden etkilenen diğer kaynaklara yansıtmaktır. programcılar kaynakların veri modellerini çıkarır ve gerekli veritabanı tablolarını oluşturur. ancak veritabanı sistemlerinde genel sıkıntı veriler arasında ilişkilerin tek taraflı tutulmasıdır.&lt;br /&gt;&lt;br /&gt;peki ne demek bu? 'ögretmen' ve 'ögrenci' diye iki kaynağımız olsun, bu iki kaynak arasında 1'e n bir ilişki var ise (1 öğretmenin n ögrencisi olabilir, 1 öğrencinin yalnızca 1 ögretmeni olabilir). klasik veritabanı sistemlerinde yapılan, öğrenci tablosunda öğretmen'in id'sini tutan bir kolon eklemektir. bu durumda 'öğrenci' tablosunun şemasına bakarak, 'öğretmen' ve 'öğrenci' kaynakları arasındaki ilişkiyi görebiliriz, ancak 'öğretmen' tablosunun şeması bu ilişkiye dair herhangi bir bilgi içermez.eğer size lazım olan 'x ögretmenin ögrencileri bilgisi' ise yapmanız gereken bir programcı tutup, sizin için bir sql sorgusu yazmasını sağlamaktır.&lt;br /&gt;&lt;br /&gt;siberfiber'in geleneksel işlemsel programlama (procedural programming) anlayışına göre değil de tanımsal programlama (declarative programming) anlayışı ile geliştirilmiş olmasi, kaynaklar arasındaki ilişkilerin tamamının çift taraflı tutuluyor olması birçok problemi kökünden çözüyor.&lt;br /&gt;&lt;br /&gt;siberfiber'de öğretmen-öğrenci arasındaki ilişki hem 'öğrenci' hem de 'öğretmen' tiplerinin şemasından görülebilir, çünkü tüm ilişkiler tanımlama aşamasında kurulur.&lt;br /&gt;&lt;br /&gt;örneğimizi biraz daha karmaşıklaştıralım, örneğin 'x öğretmenin başarılı öğrencileri' bilgisine ihtiyacımız olsun, bunun için de öğrenci tablosuna 'not' diye bir kolon ekleyelim, ve programcımıza başarılı öğrenci tanımı olarak "notu 50'den yüksek olan öğrenci başarılıdır' bilgisi verilmiş olsun. bu durumda programcı şu sql'i yazacaktır:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;[sql]&lt;br /&gt;select * from ogrenci, ogretmen where ogretmen.id=ogrenci.ogretmen_id and ogrenci.not &gt; 50;&lt;br /&gt;[/sql]&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;siberfiberde ise bu mantık öğretmen ve öğrenci tiplerinin oluşturulduğu aşamada, şu sfs[3]'le ifade edilir.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;[sfs]&lt;br /&gt;createsifter "ogretmen" "basarili ogrenciler" n "ogrenci" "basarili oldugu ogretmen" 1 filtervaluesgreaterthan ogrenci.not 50&lt;br /&gt;[/sfs]&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;(burada sfs hakkında bilgilendirme yapmayacağım, 3 satırda anlatılabilecek bir şey değil malesef, bu aşamada gereksiz detay olacaktır diye düşünüyorum, ama örnek vermeseydim de çok havada kalacaktı anlattıklarım)&lt;br /&gt;&lt;br /&gt;yukarıda tek bir sfs komudu hem öğrenci tipinde hem de öğretmen tipinde iki property (klasik veritabanı sistemindeki tablo kolonu gibi düşünülebilir) yaratır.&lt;br /&gt;&lt;br /&gt;bizden 'başarılı olduğu öğretmen' bilgisi istenmemiş olmasına rağmen, siberfiberin tip tanımında ilişkileri çift taraflı kurmaya zorluyor olması bu soruya kendiliğinden cevap verilmesini sağladı. aslında yukarıda yaptığımız iki tip arasında bir ip çekmek, ve bu ipin başına ögrenci tipi tarafında 'başarılı olduğu öğretmene gider' tabelası koymak, öğretmenin tipi tarafına da 'başarılı öğrencilere gider' tabelasını koymak. bu ip üzerinde iki yönde de seyehat etmek mümkün.&lt;br /&gt;&lt;br /&gt;klasik veritabanlarında ise ipler genelde sadece inmeye izin verir, yukarı çıkamazsınız, 'başarılı olduğu öğretmen' bilgisini elde etmek için yeni bir ip çekmeniz gerekir, yani programcınızın yeni bir sql daha yazmasını gerektirir.&lt;br /&gt;&lt;br /&gt;çift yönlü ilişkiler sayesinde, siberfiber uzayında herhangi bir tipte gerçekleşen değişimden etkilenen tüm tipler anında kendiliğinden güncellenir. (tipler derken bu tipte yaratılmış nesnelerden, yani siberfiber jargonundaki 'thing'lerden bahsediyorum)&lt;br /&gt;&lt;br /&gt;KKP yazılımı dünyasında, iş analistleri süreçleri ve kaynakları belirler, sonra bunu programcılara anlatırlar, programcıdan konuya kendileri kadar hakim olmalarını beklerler, programcı da anladığı kadarıyla kodlamasını yapar ve ortaya bir yazılım çıkar. ya da programcı o kadar çok aynı sektörle ilgili KKP ve IAY yazılımı yazmıştır ki artık bir iş analisti-programcı'ya dönüşmüştür, kendisinin tanrı olduğunu düşünmektedir.&lt;br /&gt;&lt;br /&gt;siberfiber'de ise tanımlamalar programcıya değil doğrudan sisteme yapılır. tabi ki iş analistlerinden sfs kodu yazmasını beklemiyoruz, bunun için bir siberfiber tasarım arayuzu yazılmakta, siberfiber tanımlamaları BPMN[4]'e benzer bir gösterimle ifade edilebilir. iş analistleri tasarim arayüzünü kullanarak bu gösterimleri oluşturabilecek ve bu gösterimlerin ürettiği gerçek zamanlı sfs kodları ile sistemde güncellemeler yapılabilecek.&lt;br /&gt;&lt;br /&gt;tabi bir de, bir BDY yazılımının bir kullanıcı arayüzü olması gerekiyor, peki bu arayüzü kim oluşturacak. yine iş analistleri, maske adı verilen tanımlamalarla. maskeler bir tipin arayüzde ne şekilde gösterileceğini belirler, mesala öğrenci tipindeki 'not' kolonu öğretmen arayüzünde değiştirilebilir bir metin kutucuğu şeklinde görünecektir, öğrenci arayüzünde ise salt-okunur bir etiket şeklinde. bu maske tanımlamaları da tiplerde olduğu gibi siberfiber tasarım arayüzünden çizilerek oluşturulacak.&lt;br /&gt;&lt;br /&gt;umarım siberfiber hakkında az da olsa bir fikir verebilmişimdir, bu sadece buz dağının görünen kısmı, tamamına değinmeye çalışırsam gereksiz kafa karıştırıcı olacaktı, şu anda bile öyle oldu sanki.&lt;br /&gt;&lt;br /&gt;[1] KKP ~= ERP (Enterprise resource planning)&lt;br /&gt;[2] IAY ~= BPM (Bussiness Process Management)) cozumleri&lt;br /&gt;[3] SFS(SiberFiber Script) =&gt; siberfiber icin tasarlanan DSL (Domain Specific Language)&lt;br /&gt;[4] Bussiness Process Modeling Notation&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-8582024787277945607?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/8582024787277945607/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2010/01/siberfiber-ne-ki.html#comment-form' title='1 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/8582024787277945607'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/8582024787277945607'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2010/01/siberfiber-ne-ki.html' title='siberfiber ne ki?'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-3581581378473187385</id><published>2009-10-24T13:46:00.008+03:00</published><updated>2009-10-24T14:24:02.681+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='qooxdoo selenium'/><title type='text'>selenium qooxdoo eklentisini yamalamak lazım</title><content type='html'>qooxdoo bir kez daha ömrümü tüketti. selenium ile basit bir test yazayım dedim, bir düğmeye tıklayabilme mücadelesinde kayboldum gittim.&lt;div&gt;öncelikle qooxdoo uygulamanıza selenium testi yazabilmek için &lt;a href="http://wiki.openqa.org/display/SEL/qooxdooExtension"&gt;şu eklenti&lt;/a&gt;ye ihtiyacınız var. yalnız bu eklentiyi çalıştırabilmeniz için eski bir firefox ve eski bir qooxdoo versiyonu kullanmanız gerekiyor.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;uzun lafın kısası, debelenmelerimin sonucu &lt;a href="http://erhankesken.googlepages.com/selenium_qooxdoo_extension-0.3.patch.txt"&gt;şu yama&lt;/a&gt; ortaya çıktı, bu şekilde firefox 3 civarı ve qooxdoo-0.8.3 için çalışıyor.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;ama testlerin, derlenmiş (./ generate build) qooxdoo uygulamasında çalışmıyor olması, ve selenium qooxdoo elemanlarını bulabilsin diye koda setUserData çağrıları eklemek gerekiyor olması insanı biraz soğutuyor açıkcası.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;nedir bu qooxdoo'dan çektiğim benim.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-3581581378473187385?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/3581581378473187385/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2009/10/selenium-qooxdoo-eklentisini-yamalamak.html#comment-form' title='2 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/3581581378473187385'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/3581581378473187385'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2009/10/selenium-qooxdoo-eklentisini-yamalamak.html' title='selenium qooxdoo eklentisini yamalamak lazım'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-7487385721630549365</id><published>2009-10-24T13:23:00.005+03:00</published><updated>2009-10-24T13:42:29.612+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='hayat'/><title type='text'>evlendim ve işimi değiştirdim</title><content type='html'>&lt;div&gt;&lt;div&gt;son girdimden bu yana hayatımda bir takım önemli değişiklikler oldu, sonunda esra ile evlenmeyi başarabildik (borçlarını ödemeye devam ediyoruz gerçi) ve mynet'te işe başladım.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;mynet'te 3. ayımı doldurdum, deneme süresi 2 ay olduğuna göre ya kovmayı unuttular ya da artık resmi olarak mynet çalışanıyım.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;mynet'e geçiş hikayemi özetlemek gerekirse;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;zeitin, çalışanların özveride bulunması gerektiği bir modele geçmek zorunda kaldı, evliliğim nedeniyle özveride bulunamayacak durumda olduğumdan, pek istemediğim bir zamanda gemiyi terketmek zorunda kaldım.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;parkyeri'ne geri dönemedim, zeitin'deki insanların psikolojisini bozmak istemedim. bir de farklı dünyaları tanıma isteğim vardı, gözünü parkyeri'nde açmış ve parkyeri çatısı altında büyümüş bir insan olarak. intimatek'e de geçemedim, o zaman da mavcı'ya ayıp olacaktı.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;iş ararken ya ağ mühendisliği ya da test mühendisliği diye yola çıktım, ancak benim istediğim maaş seviyesi icin tecrübeye bakıyordu insanlar haklı olarak, yine biraz evliliğimin zorlaması ile tecrübem dahilindeki işlere de başvurmaya başladım, ve kendimi mynet'te buldum. yaklaşık bir 4 aydır mynet çatısı altında adklik projesinde yazılım geliştirici olarak çalışıyorum.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;mynet'in yanı sıra siberfiber projesine de devam etmeye çalışıyorum boş zamanlarımda, hobi olarak. siberfiber, parkyeri ortaklarından giray abi'nin kardeşleriyle birlikte kurduğu, başında selçuk abi'nin olduğu 'intimatek' şirketi bünyesinde başlatılmış ve tübitak desteği almış güzel bir proje, siberfiber'i 3 kelimeyle anlatabilmem mümkün değil, bu yüzden onun için ayrı bir girdi yapmayı düşünüyorum.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;özetle zeitin altında yürüttüğümüz gökada ve vidi projelerinden koptum, hayata adklik ve siberfiber projeleriyle devam etmekteyim.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;işte öyle.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-7487385721630549365?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/7487385721630549365/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2009/10/evlendim-ve-isimi-degistirdim.html#comment-form' title='1 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/7487385721630549365'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/7487385721630549365'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2009/10/evlendim-ve-isimi-degistirdim.html' title='evlendim ve işimi değiştirdim'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-7139785398292763770</id><published>2009-07-11T19:40:00.013+03:00</published><updated>2009-10-24T13:44:01.761+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><category scheme='http://www.blogger.com/atom/ns#' term='red5'/><category scheme='http://www.blogger.com/atom/ns#' term='rtmp'/><category scheme='http://www.blogger.com/atom/ns#' term='flash'/><title type='text'>red5, rtmp ve flash ile ilgili öğrendiklerim</title><content type='html'>uzun zamandır bloğumu ihmal ettiğimi farkettim, ve işin ilginci son 5-6 aydır red5 ile yatıp red5 ile kalkan bir insan olarak nedense hiç red5 ile ilgili bir girdi yapmamışım. öğrendiklerimi tek bir girdide toplayıp acısını çıkarayım dedim.&lt;br /&gt;&lt;br /&gt;öncelikle rtmp açık bir protokol değil, dolayısıyla red5 bir tersine mühendislik ürünü, facebook'un bile red5 tercih ettiğini düşünecek olursak oldukça da başarılı bir ürün. bu arada adobe 2009 yılının ortasında rtmp belirtimlerini açacağını duyurmuş olmasına rağmen henüz açmadı.&lt;br /&gt;&lt;br /&gt;rtmp bağlantıları tcp soketleri üzerinden kuruluyor, neden udp değil anlamış değilim, tcp'nin kayıpsızlığı canlı video aktarımlarında biraz sıkıntı yaratıyor. yetersiz bağlantılarda gecikmeler kaçınılmaz hale geliyor. gelen yayına (stream) müdahale edemiyorsunuz, sadece izleyenlere giden yayında paket düşürebiliyorsunuz ki elinizi koda bulaştırmadan bu paket düşürme işlerini yapamıyorsunuz.&lt;br /&gt;&lt;br /&gt;elinizi koda sokma sıkıntısı ölçeklendirme ve red5'den red5'e yayın aktarma konusunda da var. ölçeklendirme için terracotta kullanıyor insanlar[1], sunucudan sunucuya yayın aktarma işi için de örnek kod bulmak mümkün değil, teoride nasıl yapılabileceğini e-posta listesinde bulmak mümkün[2], yani kolları biraz sıvamak şart bu işlere girmeniz gerekirse.&lt;br /&gt;&lt;br /&gt;red5 ön tanımlı olarak, 5080'den http, 1935'den rtmp, 8443'den rtmps ve 8088'den rtmpt sunuyor. bu durumda şirketlerin güvenlik duvarlarına takılıyorsunuz doğal olarak. çoğu yerde sadece 80 portuna izin veriliyor. biz vidi için red5 üzerinden axis ile hem bir webservisi sunuyoruz hem de rtmp hizmeti sunuyoruz. yani en az 2 port açmamız gerekiyordu aynı sunucu üzerinde. bu engeli de vidi uygulamasının web.xml'inde bazı servlet ayarları yaparak aştık[3].&lt;br /&gt;&lt;br /&gt;rtmpt aslında http'den başka bir şey değil. yayın verileri peşpeşe http paketleri olarak aktarılıyor. dolayısıyla aynı port üzerinden hem webservisini hem rtmpt sunmak için şu servlet ayarlarını eklemeniz yeterli:&lt;br /&gt;&lt;br /&gt;&lt;div style="width: 400px; height: 400px; background-color: a0ffff; color: 000000; font-family: arial; font-size: 12px; text-align: left; border: 0px solid 00000; overflow: auto; padding: 4px;" fcs="" open="" close="" send="" idle=""&gt;&lt;br /&gt;&amp;lt;servlet&amp;gt;&lt;br /&gt;  &amp;lt;servlet-name&amp;gt;rtmpt&amp;lt;/servlet&amp;gt;&lt;br /&gt;  &amp;lt;servlet-class&amp;gt;org.red5.server.net.rtmpt.RTMPTServlet&amp;lt;/servlet&amp;gt;&lt;br /&gt;  &amp;lt;load-on-startup&amp;gt;1&amp;lt;/load&amp;gt;&lt;br /&gt;&amp;lt;/servlet&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;servlet-mapping&amp;gt;&lt;br /&gt;  &amp;lt;servlet-name&amp;gt;rtmpt&amp;lt;/servlet&amp;gt;&lt;br /&gt;  &amp;lt;url-pattern&amp;gt;/fcs/*&amp;lt;/url&amp;gt;&lt;br /&gt;&amp;lt;/servlet-mapping&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;servlet-mapping&amp;gt;&lt;br /&gt;  &amp;lt;servlet-name&amp;gt;rtmpt&amp;lt;/servlet&amp;gt;&lt;br /&gt;  &amp;lt;url-pattern&amp;gt;/open/*&amp;lt;/url&amp;gt;&lt;br /&gt;&amp;lt;/servlet-mapping&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;servlet-mapping&amp;gt;&lt;br /&gt;  &amp;lt;servlet-name&amp;gt;rtmpt&amp;lt;/servlet&amp;gt;&lt;br /&gt;  &amp;lt;url-pattern&amp;gt;/close/*&amp;lt;/url&amp;gt;&lt;br /&gt;&amp;lt;/servlet-mapping&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;servlet-mapping&amp;gt;&lt;br /&gt;  &amp;lt;servlet-name&amp;gt;rtmpt&amp;lt;/servlet&amp;gt;&lt;br /&gt;  &amp;lt;url-pattern&amp;gt;/send/*&amp;lt;/url&amp;gt;&lt;br /&gt;&amp;lt;/servlet-mapping&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;servlet-mapping&amp;gt;&lt;br /&gt;  &amp;lt;servlet-name&amp;gt;rtmpt&amp;lt;/servlet&amp;gt;&lt;br /&gt;  &amp;lt;url-pattern&amp;gt;/idle/*&amp;lt;/url&amp;gt;&lt;br /&gt;&amp;lt;/servlet-mapping&amp;gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;iletişimi ssl ile şifrelemek için yaptığımız çalışmalarda da anladık ki aslında rtmps diye bir şey yok, rtmps=rtmpts=https demek mümkün. ssl işinde baya zorlandık, 0.7.4'de çalışmayınca 0.8 sürümlerine geçtik, orada da çalışmadı, bir düzine deneme sonrası sadece 0.8-RC2 versiyonunda çalıştırmayı başarabildik. bu versiyonun üstünde de altında da problemler yaşadık.&lt;br /&gt;&lt;br /&gt;flash player tarafında ise, uygulama tasarımına girişmeden flash kısıtlarını araştırmak da fayda var. örneğin flash'ın izin kutucuklarının boyutu sabit, bu boyutun altında bir flash yaratırsanız kullanıcı kamerayı kullanma iznini veremiyor, ve eğer kullanıcı hatırla kutucuğunu işaretlememişse her flash için bu izni ayrı ayrı vermesi gerekiyor. eğer ekranda flashın tamamı gözükmüyorsa flash üzerindeki herhangi bir düğmeye tıklayamıyorsunuz. tam ekran yapma gibi işlevleri kullanıcı bir yere tıklamadıkça yapamıyorsunuz. bir de flash'i içine entegre ettiğiniz siteden başka bir alan adından sunacaksanız atmanız gereken epey bir takla var, flash'ın güvenlik politikası ile ilgili belgeleri bir okuyun derim ben. böyle ufak detaylar uygulama tasarımını tamamen değiştirebiliyor.&lt;br /&gt;&lt;br /&gt;sunucuyla flash istemciler arasındaki komut iletişimi için shared object yerine uzak fonksiyon çağrılarını kullanmakta fayda var, red5'in shared object gerçeklemesinde sıkıntılar var.&lt;br /&gt;&lt;br /&gt;bunun dışında geliştirme ortamı olarak linux üzerinde çalışan insanlar olarak actionscript yazmak da çok zorlanmadık, flex3sdk ve derlemeler için ant kullanımı yeterli oldu. ama ince çizimler yapacağım, tasarımla uğraşacağım diyorsanız linux çok doğru bir tercih değil.&lt;br /&gt;&lt;br /&gt;red5'i kapalı devre sistemler için kullanıp kullanamacağımızı görmek için kalite konusunda sınırıları zorlama durumunda da kaldık, gördük ki flash player ile dvd kalitesine (480 satır) kadar çıkmak mümkün. dvd normalde 7-8 mbit/s'lik bir bant genişliği gerektiriyor, red5'de ise bant genişliği kontrollerini aktif hale getirmeden 1mbit/s'lik upload hızını aşamıyorsunuz, bant genişliği kontrollerini aktif hale getirebilmek için de biraz kod yazmanız gerekiyor.&lt;br /&gt;&lt;br /&gt;yalnız 480 satırdan sonra flash oynatıcı çatlamaya başlıyordu. bir de flash oynatıcı ile görüntüyü sadece h.263 veya vp6 kodlayabiliyorsunuz. flash oynatıcı h.264 kodlayamıyor ama oynatırken h.264'u çözebiliyor. veri miktarını azaltmak için h.264 kullanmak elzem. bu arada xuggler[4] ile gelen yayını dağıtmadan kodlamasını değiştirmek mümkün. ama biz gönderirken h.264 gönderelim dedik flash oynatıcı dışında neyle yayın gönderebiliriz diye araştırdık. rtmp'nin belirtimlerinin kapalı olmasından olsa gerek pek bir alternatif yoktu. yaptığımız araştırmalarda rtsp'nin çok yaygın kullanıldığını gördük. eğer rtmp yayınını rtsp'ye dönüştüren bir ara uygulama olsa baya artacak alternatif sayısı aslında.&lt;br /&gt;&lt;br /&gt;vlc 0.9 sonrasında rtmp izleme desteği geliyordu, ama sunucuya görüntü gönderilemiyordu. bu arada vlc'nin red5 ile çalışması için vlc kodunda bazı kontrolleri kaldırıp yeniden derlememiz gerekti. vlc ile flash oynatıcıdan çok daha başarılı bir görüntü akışı elde ettik, ama çok daha fazla gecikme gibi bir bedeli vardı. gecikmenin tam nedenini anlayacak kadar bakamadık henüz. görüntü aktarımı için java'yla yazılmış bir kod bulduk, ama yeterince olgun olmadığını düşündüğümüz için tercih etmedik. sonunda adobe flash media encoder kullanmak durumunda kaldık, bu da windows bağımlılığı anlamına geldiğinden hiç istemediğimiz bir durumdu. bu arada adobe flash media encoder ile red5'e rtmpt üzerinden yayın aktarmak için red5'te "content type" ile ilgili bir kontrolü kaldırıp yeniden derlememiz gerekti.&lt;br /&gt;&lt;br /&gt;kalite denilince kodlamadan ziyade görüntüyü taşıdığınız arabirimler önem kazanıyor. red5'e görüntü aktarmak için bilgisayarınızın görüntü kaynağını webcam olarak algılaması gerekiyor. eğer bir yakalayıcı (capture) kart kullanırsanız televizyona verebildiğiniz herhangi bir görüntüyü (bir televizyon kanalını, bilgisayar ekranı görüntüsünü, veya composite çıkışı olan herhangi bir kamerayı, dvr kameraları) kullanabilirsiniz. burada veriyi sayısal olarak taşımak önemli (hdmi, dvi). anolog olarak ise sadece component arabirimi hd kalitesine (1080 satıra) izin veriyor. yalnız yakalayıcı kartlarda yüksek çözünürlük, sayısal arabirim dediğinizde fiyatlar biraz uçuyor.&lt;br /&gt;&lt;br /&gt;şimdilik aklıma gelenler bu kadar, sonradan birşeyler hatırladıkça bu girdiye eklemeyi düşünüyorum. bir de yukarıda üstün körü geçtiğim yerlerden açılmasını istediğiniz varsa yorum bırakırsanız gerekli ekleri yapabilirim.&lt;br /&gt;&lt;br /&gt;[1] http://www.terracotta.org/confluence/display/wiki/Red5+and+Terracotta+POC&lt;br /&gt;[2] http://osflash.org/pipermail/red5_osflash.org/2007-December/017650.html&lt;br /&gt;[3] http://gregoire.org/2009/01/28/rtmpt-and-red5/&lt;br /&gt;[4] http://www.xuggle.com/xuggler/&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-7139785398292763770?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/7139785398292763770/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2009/07/red5-rtmp-ve-flash-player-ile-ilgili.html#comment-form' title='3 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/7139785398292763770'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/7139785398292763770'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2009/07/red5-rtmp-ve-flash-player-ile-ilgili.html' title='red5, rtmp ve flash ile ilgili öğrendiklerim'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-2314143842332520374</id><published>2009-04-26T14:09:00.014+03:00</published><updated>2009-10-24T13:43:37.526+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='oflademo'/><category scheme='http://www.blogger.com/atom/ns#' term='bwcheck'/><category scheme='http://www.blogger.com/atom/ns#' term='red5'/><category scheme='http://www.blogger.com/atom/ns#' term='flowplayer'/><title type='text'>flowplayer bwcheck eklentisi için red5 örneği</title><content type='html'>&lt;a href="http://flowplayer.org/plugins/streaming/bwcheck.html"&gt;şurada&lt;/a&gt;ki rtmp örneğini red5 üzerinde çalıştırabilmek için tüm flowplayer'i anlamam gerekti, internette sadece yarım yamalak bilgiler bulabildim, yaşadığım süreci başkaları için hızlandırabilmek adına yaptığım ayarları paylaşayım dedim:&lt;br /&gt;&lt;br /&gt;index.html:&lt;br /&gt;&lt;div style="width: 400px; height: 600px; background-color: a0ffff; color: 000000; font-family: arial; font-size: 12px; text-align: left; border: 0px solid 00000; overflow: auto; padding: 4px;"&gt;&amp;lt;html&amp;gt;                                                                                                                                                                                               &lt;br /&gt; &amp;lt;head&amp;gt;                                                                                                                                                                                   &lt;br /&gt;   &amp;lt;script type="text/javascript" src="flowplayer-min.js"&amp;gt;&amp;lt;/script&amp;gt;                                                                                                       &lt;br /&gt; &amp;lt;/head&amp;gt;                                                                                                                                                                                  &lt;br /&gt; &amp;lt;body&amp;gt;                                                                                                                                                                                   &lt;br /&gt;   &amp;lt;div id="info"&amp;gt;click below to see most appropriate video to your bandwidth&amp;lt;/div&amp;gt;                                                                                       &lt;br /&gt;   &amp;lt;a class="rtmp" id="red5"&amp;gt;&amp;lt;img src="img/showme.png" /&amp;gt;&amp;lt;/a&amp;gt;                                                                                                       &lt;br /&gt;   &amp;lt;script language="JavaScript"&amp;gt;                                                                                                                                               &lt;br /&gt;     $f("red5", "swf/flowplayer-3.1.0.swf", {                                                                                                                               &lt;br /&gt;       log: {                                                                                                                                                     &lt;br /&gt;         filter: 'org.flowplayer.bwcheck.*',                                                                                                            &lt;br /&gt;         level: 'debug'                                                                                                                                 &lt;br /&gt;       },                                                                                                                                                         &lt;br /&gt;                                                                                                                                                                                                     &lt;br /&gt;       clip: {                                                                                                                                                    &lt;br /&gt;         url: 'skyandice.flv',                                                                                                                          &lt;br /&gt;         urlResolvers: 'bwcheck',                                                                                                                       &lt;br /&gt;         live: true,                                                                                                                                    &lt;br /&gt;         provider: 'rtmp'                                                                                                                               &lt;br /&gt;       },                                                                                                                                                         &lt;br /&gt;                                                                                                                                                                                                     &lt;br /&gt;       plugins: {                                                                                                                                                 &lt;br /&gt;                                                                                                                                                                                                     &lt;br /&gt;         bwcheck: {                                                                                                                                     &lt;br /&gt;           url: 'swf/flowplayer.bwcheck-3.1.0.swf',                                                                                           &lt;br /&gt;           netConnectionUrl: 'rtmp://red5ip:1935/bwcheck',                                                                                    &lt;br /&gt;           bitrates: [40, 150, 400, 700, 1000],                                                                                               &lt;br /&gt;           serverType: 'red5',                                                                                                                &lt;br /&gt;           rememberBitrate: false,                                                                                                            &lt;br /&gt;                                                                                                                                                                                                     &lt;br /&gt;           onBwDone: function(url, chosenBitrate, bitrate) {                                                                                  &lt;br /&gt;             var el = document.getElementById("info");                                                                              &lt;br /&gt;             el.innerHTML = "Your speed is: " +bitrate+ "&amp;lt;br /&amp;gt;Video file served: " +url;                                     &lt;br /&gt;           }                                                                                                                                  &lt;br /&gt;         },                                                                                                                                             &lt;br /&gt;                                                                                                                                                                                                     &lt;br /&gt;         rtmp: {                                                                                                                                        &lt;br /&gt;           url: 'swf/flowplayer.rtmp-3.1.0.swf',                                                                                              &lt;br /&gt;           netConnectionUrl: 'rtmp://red5ip:1935/oflaDemo'                                                                                    &lt;br /&gt;         }                                                                                                                                              &lt;br /&gt;       }                                                                                                                                                          &lt;br /&gt;     });                                                                                                                                                                    &lt;br /&gt;   &amp;lt;/script&amp;gt;                                                                                                                                                                    &lt;br /&gt; &amp;lt;/body&amp;gt;                                                                                                                                                                                  &lt;br /&gt;&amp;lt;/html&amp;gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;kullanilan dosyalar:&lt;br /&gt;&lt;div style="width: 400px; height: 300px; background-color: a0ffff; color: 000000; font-family: arial; font-size: 12px; text-align: left; border: 0px solid 00000; overflow: auto; padding: 4px;"&gt;&lt;br /&gt;http://static.flowplayer.org/img/player/btn/showme.png # img altina&lt;br /&gt;http://static.flowplayer.org/video/skyandice-40.flv&lt;br /&gt;http://static.flowplayer.org/video/skyandice-150.flv&lt;br /&gt;http://static.flowplayer.org/video/skyandice-400.flv&lt;br /&gt;http://static.flowplayer.org/video/skyandice-700.flv&lt;br /&gt;http://static.flowplayer.org/video/skyandice-1000.flv&lt;br /&gt;# skyandice*.flv'ler /usr/lib/red5/webapps/oflaDemo/streams altına (artık siz nereye kurduysanız)&lt;br /&gt;http://flowplayer.org/releases/flowplayer.bwcheck/flowplayer.bwcheck-3.1.0.swf&lt;br /&gt;http://flowplayer.org/releases/flowplayer.rtmp/flowplayer.rtmp-3.1.0.swf&lt;br /&gt;http://flowplayer.org/releases/flowplayer/flowplayer-3.1.0.zip&lt;br /&gt;# flowplayer-3.1.0.swf, flowplayer.controls-3.1.0.swf, flowplayer-3.1.0.min.js de bu zip dosyasından geliyor&lt;br /&gt;# tum swfler swf dizini altına&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;bir de http://red5ip:5080/installer adresinden bwcheck ve oflaDemo uygulamalarını kurmuş olmanız gerekiyor.&lt;br /&gt;&lt;br /&gt;umarım birilerine faydası dokunur.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-2314143842332520374?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/2314143842332520374/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2009/04/flowplayer-bwcheck-eklentisi-icin-red5.html#comment-form' title='1 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/2314143842332520374'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/2314143842332520374'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2009/04/flowplayer-bwcheck-eklentisi-icin-red5.html' title='flowplayer bwcheck eklentisi için red5 örneği'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-3074081406059466736</id><published>2009-04-19T22:25:00.009+03:00</published><updated>2009-04-23T18:55:08.333+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='zeitin'/><title type='text'>anarşik bir iş ortamında iş yapabilmek</title><content type='html'>zeitin'de demokrasinin de ötesinde anarşik bir düzen daha doğrusu düzensizlik hüküm sürüyor şu sıralar, anarşinin son bulduğu tek nokta ise öncelik listemiz, parkyeri'ndeyken bölüm sorumluları ve şirket ortakların bir araya geldiği eşgüdüm toplantılarında her bölüm için o haftanın öncelikli işlerini çıkarmaya çalışırdık. zeitin'de sayımız az olduğundan, herkesin katıldığı haftalık şirket toplantıları yapmaya başlamış ve eşgüdüm işini de bu toplantılarda halletmeye çalışmıştık, ancak anerşik yapımız bu toplantıların devamlılığını getirmemize engel oldu, ve muhtemelen küçük bir şirket için en uygun olan yönteme kendiliğinden bir yönelim yaşadık, işlerin önceliklendirilmesi işini bir kişi kendi başına yapar duruma geldi, şu anda da bu işi giray abi üstlenmiş durumda.&lt;br /&gt;&lt;br /&gt;bu hafta, önceliklerimizin dışında bir işle uğraşınca alper'den tepki aldım. anarşinin getirdiği yan etkilerden biri de bu, kimden ne zaman nasıl bir tepki alacağınızı tahmin etmek çok kolay değil. sonradan öğrendim ki alper de aynı işe talipmiş ve giray abilerle konuştuğunda işin önceliği engeline takılmış.&lt;br /&gt;&lt;br /&gt;hiyerarşik bir düzende veya kuralların belli olduğu bir yerde herhangi bir hareketinizin sonuçlarını tahmin etmek biraz daha kolaydır, en azından mutlu etmeniz gereken insanlar bellidir.  anarşik bir toplumda ise herkesin mutlu olmasını sağlamanız gerekiyor, bu da fazla ideal bir durum, pratikte çok mümkün gözükmüyor. dolayısıyla ortamda şikayetler eksik olmuyor, her an illa biri birilerinden veya bir durumdan şikayetçi, ve şikayetleri yönetmediğimizden, ilginiz olsa da olmasa da, ister istemez her şikayetten etkileniyorsanız. "ilginiz olsa da olmasa da" sözü aslında zeitin için çok yanlış, çünkü zeitin çalışanı iseniz her işle doğal olarak ilgili olduğunuzu kabul etmişsiniz demektir.&lt;br /&gt;&lt;br /&gt;bugün zeitin'de sahip olduğumuz özgürlüklerin dünya üzerinde hiç bir şirket çalışanına sunulduğunu sanmıyorum, buna google da dahil. insanlar parkyeri'nin ve zeitin'in google'dan esinlendiğini düşünüyor, eğer benzetileceksek google'dan çok "SUN"'a benzetilmemiz bence daha doğru, benim uzaktan algıladığım "SUN" çok daha okul gibi tasarlanmış ve çalışan insiyatifinin ön planda tutulduğu bir şirket. google ise daha çok "mış gibi" yapan bir şirket. "don't do evil" diyip, android telefonlarda google hesabını zorunlu kılan, dağıtım gücünü tekel oluşturmak için kullanan bir şirket. "çalışanlarımıza zamanlarının %20'sinde istedikleri işi yapma özürlüğü tanıyoruz" diye reklam yapan, ama bu %20'de yapacağınız işi müdürünüze onaylatmanız gerektiği detayını pek paylaşmayan, içeride müdür gibi kavramların hüküm sürdüğü bir şirket. chrome ve chromium diye biri açık biri kapalı kaynaklı iki ayrı proje açıp tek taraflı faydaya dayalı bir camia gücü oluşturma peşine düşmüş bir şirket. bu gibi hareketler google'in samimiyetinden şüphe ettiriyor insanı.&lt;br /&gt;&lt;br /&gt;zeitin olarak debian tercih etmemizin sebebi de bu, gerçekten özgürlüğü varoluş sebebi olarak koruyabilmiş tek dağıtım, genelde diğer dağıtımlar camia gücünü kullanmaya çalışan, başka amaçlarla yola çıkmış, çıktıkları yol özgür yazılımlarla kesiştiği için özgür yazılıma destek olan, pek çok konuda google'un yaptığı gibi "mış gibi" yapan dağıtımlar.&lt;br /&gt;&lt;br /&gt;zeitin'in kurucularını tanıyan ve zeitin'in kuruluşuna şahit olma şansı yakalamış bir insan olarak, zeitin'in çalışan mutluluğu ve özgürlüğü üzerine kurulmuş bir şirket olduğuna, bu iki unsurun herşeyin önünde tutulmuş olduğuna birinci elden tanığım. umarım hep böyle kalabilir.&lt;br /&gt;&lt;br /&gt;yalnız "özgürlük eşittir mutluluk" demek doğru değil, özgürlüğü başarılı olma sebebi olarak göstermek de doğru değil. ama hem özgür hem başarılı olunabilir.&lt;br /&gt;&lt;br /&gt;herkesin özgür olması demek anarşi demek, anarşilerde huzursuzluk oluşması doğal, bu huzursuzluklara çözüm demokrasi olabilir, yalnız demokrasiyi zeitin'e çok uyarlayamıyoruz çünkü demokrasi beraberinde yasaları getiriyor, yasa demek yasak demek. (gerçi başbakanımız en son türban mevzularında "artık yasaklar ülkesi olmayalım" gibi ilginç demeçlerde bulunmuştu, ya başbakanın bir yanlışı var ya benim, bildiğim kadarıyla yasaklarla yönetilmeyen herhangi bir ülke yok, tek yaptığımız ülkeleri yasakları koyuş ve uygulayış şekline göre sınıflandırmak)&lt;br /&gt;&lt;br /&gt;yasa ve yasakların ters tarafı zamanla hiç duymadığın bilmediğin kurallara tabi hale gelmen. bunu çözüm de yasaları yazmayıp töreler gibi yazılı olmayan kurallarla ilerlemek, uygulama konusunda da toplumsal yaptırımlara başvurmak, yani mahalle baskısına izin vermek. bu durumda "bir yasayı duymadıysan o yasa yoktur" kuralı işler.&lt;br /&gt;&lt;br /&gt;bu son örnekte, önceliklerimizin dışına çıkarak törelerimize karşı gelmiş oldum sanırım, karşıma da ilk çıkan alper oldu, beni destekleyen kimse çıkmadığından mahalle baskısını da yemiş oldum. ancak herşeye rağmen başladığım işi bitirmekte ısrar ettim, "ya bu işi yaparım, ya da işime son verirsiniz" diye çıkışınca engelleri aşmış oldum, muhtemelen ay sonunda başarım değerlendirmemin olumsuz etkilenmesi gibi son bir yaptırım daha yiyeceğim, bir daha böyle bir şey yapmamam için (şu an başarım değerlendirmesi işini de giray abi üstlenmiş durumda, bu cezayı verip vermeme kararını verecek insan da kendisi dolayısıyla)&lt;br /&gt;&lt;br /&gt;yapacağım iş sürüm çıkma yöntemimizi değiştirecekti, parkyeri zamanlarından beri sürümlerin deb paketi olarak çıkılmasını, sürümlerimizi ve bağımlılıklarını koyabileceğimiz bir debian depomuz olması gerektiğini savunan bir insan olarak, yeni şirkette daha insanlar alışkanlıklarını oluşturmadan bu işin halledilmesi gerektiğini düşünüyordum, bu yüzden benim için oldukça öncelikli bir işti. giray abi işin önceliği konusunda benimle aynı fikirde değildi, ancak giray abinin öncelikleriyle ilerleyecek olsam muhtemelen 6 yıl beklemem gerekecekti (parkyeri'nin 6 yıldır debian kullanan ama debian deposu olmayan bir şirket olduğunu düşünecek olursak).&lt;br /&gt;&lt;br /&gt;bu çok kritik bir işti, çünkü anarşik bir toplumda doğru zamanda doğru yerde yazacağınız ufak bir betik, bir araç ya da belirleyeceğiniz bir çalışma yöntemi, yeni bir "töre"'nin doğmasını tetikleyecektir. bu ilk bakışta zor koşma gibi bir yöntem gibi gözükse de aslında pek değil, çünkü eğer insanları saçma bir yönteme zorlarsanız kabullenmeyeceklerdir, direnç göstereceklerdir. tabi bunun çalışması için de akıllı ve sorgulayan insanlarla çalışmak gibi bir ön koşul gerekiyor. yalnız yöntem belirlemek yeterli değil, arkasında durmak da gerekiyor töreleştirebilmek için. bir süre sürüm işleriyle kendim ilgileneceğim, belirlediğim yöntemleri insanlara göstereceğim, eleştirlerini alacağım, yöntemlerin iyice olgunlaşması ve başkalarının da aynı yöntemleri kullanmasını sağlamak için mücadele edeceğim. zaten doğru bir şey yapıyorsam insanlar kısa zamanda benimseyecektir.&lt;br /&gt;&lt;br /&gt;zeitin yeni bir şirket olduğundan, henüz insanlar sürüm hazırlama konusunda bazı alışkanlıklar oturtmamış olduğu için işim biraz daha kolay olacak. eğer zaman geçmesine izin verseydim sadece mantıklı bir yöntem önermem yetmeyecekti, aynı zamanda insanların eski alışkanlıklarını kırmak için çok zorlu bir mücadeleye girişmem gerekecekti ve muhtemelen başaramayacaktım.&lt;br /&gt;&lt;br /&gt;bir diğer yöntem ise, işe girişmeden önce herkesi ikna etmek olabilirdi. bence bu yöntem çok masraflı, toplantı gibi ön koşullar gerektiriyor, toplantılarda herkezden bir anda yaptıkları işlerden uzaklaşıp sizin yaptığınız işe sizin kadar odaklanmalarını bekliyorsunuz, ben bunu gerçekten başarabilene şahit olmadım açıkcası. bir de bu yöntemde fikri öneren ile uygulayan farklı insanlar oluyor genelde, dolayısıyla önerilerin yeterince olgunlaşmaması gibi bir risk taşıyor.&lt;br /&gt;&lt;br /&gt;eğer anarşik bir toplumda iş yapacaksanız, öncelikle yaptığınız işe inanmanız gerekiyor, motivasyonunuzu iyi belirlemeniz ve sağlam temellere oturtmanız gerekiyor, çünkü insanların tepkilerinin motivasyonunuzu kırmasına izin vermemelisiniz, başladığınız işi bitirmek gibi bir prensip edinmiş olmanız da işinize yarayacaktır.&lt;br /&gt;&lt;br /&gt;insanların motivasyonunuzu kırmasına izin vermemeniz gerektiği gibi kendiniz de başkasının motivasyonunu gereksiz bozacak laflar etmemeniz gerekiyor. amacı olmayan cümlelerden uzak durmalısınız, ama amaçlı cümlelerinizi de sakınmamanız gerekiyor, yoksa şirket istemediğiniz bir yöne doğru kayabilir, desteklediğiniz töreleri yıpratıcı hareketlerden kaçınmanız önemli (gerçi alper'le yaşadığımız son örnekte buna uyamadım, çünkü yaptığım hareketin getirisi götürüsünden çoktu), bir de birinin hata yaptığını düşünüyorsanız mutlaka yüzüne karşı söylemeniz lazım, kendini düzeltme şansı tanımak için, ancak bunu yaparken kendinizin de hatalı düşünüyor olma ihtimalini göz önünde bulundurmanız şart. bu lafına dikkat etme meselesi o kadar da kolay değil, kurduğum cümlelerde kendime bir nebze hakim olabilsem de biri ters bir laf ettiğinde karşı saldırıya geçme gibi yenemediğim bir refleksim var, bu anlarda biraz şevk kırıcı olabiliyorum sanırım.&lt;br /&gt;&lt;br /&gt;açıkcası zeitin'de çok huzursuz olduğum anlar olmadı değil, kafam rahat olsun da özgür olmayım dediğim anlar da oldu. ancak dönüp baktığımda görüyorum ki 3 ayda vidi gibi bir ürün çıkarabilmişiz ki aynı ölçeklerde kurumsal bir şirkete parasıyla aynı işi yaptırmaya kalksanız muhtemelen 1 sene de çıkacak bir ürün, 1 sene iyimser bir tahmin bile olabilir. daha duyurusunu yapmamış olduğumuz ve çok ses getireceğine inandığımız gokada adlı projemizde de yolu yarılamış durumdayız, şu anda bu proje kapsamında geliştirdiğimiz "thinclient" çözümünü şirket içerisinde kullanmaktayız.&lt;br /&gt;&lt;br /&gt;yani görünen o ki anarşiyle, törelerle bir şekilde bir şeyler ortaya çıkarabiliyoruz, bir yazılımcı olarak bu başarı hissi, "bir şey ürettim" hissi çok önemli. umarım yakın zamanda ürünlerimizin satışını da başarabilir ve şirketimizin devamlılığını sağlayabiliriz.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-3074081406059466736?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/3074081406059466736/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2009/04/anarsik-bir-is-ortamnda-is-yapabilmek.html#comment-form' title='4 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/3074081406059466736'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/3074081406059466736'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2009/04/anarsik-bir-is-ortamnda-is-yapabilmek.html' title='anarşik bir iş ortamında iş yapabilmek'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-5535683730020071551</id><published>2009-03-22T14:21:00.006+02:00</published><updated>2009-10-24T13:44:46.327+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><category scheme='http://www.blogger.com/atom/ns#' term='log'/><category scheme='http://www.blogger.com/atom/ns#' term='syntax'/><title type='text'>vim'le log renklendirme</title><content type='html'>logları "tail -f LOGDOSYASI | ccze -A" komudu ile takip etmeye alışmış insanlar olarak, sonradan logu bir editörle açtığımızdaki renksizlik epey gözlerimizi rahatsız ediyordu. &lt;a href="http://bdgn.net/"&gt;bekir&lt;/a&gt;, sağolsun, vim için bir renklendirici yazdı, rahatladık. &lt;a href="https://svn.bdgn.net/public/test/bekir/.vim/syntax/log.vim"&gt;şuradan&lt;/a&gt; indirdiğiniz dosyayı ~/.vim/syntax dizinine koyup (eğer dizin yoksa, yaratın), bir log dosyasını vim ile açıp, ":set syntax=log" derseniz dünyanız renklenecektir. eğer her defasında ":set syntax=log" demek istemiyorsanız ~/.vimrc dosyanıza "au! BufRead,BufNewFile *log set filetype=log" satırını eklemeniz yeterli. özetle şudur:&lt;div&gt;&lt;pre&gt;&lt;br /&gt;#!/bin/sh&lt;br /&gt;mkdir -p ~/.vim/syntax&lt;br /&gt;cd ~/.vim/syntax&lt;br /&gt;wget --no-check-certificate https://svn.bdgn.net/public/test/bekir/.vim/syntax/log.vim&lt;br /&gt;echo "au! BufRead,BufNewFile *log set filetype=log" &gt;&gt; ~/.vimrc&lt;br /&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-5535683730020071551?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/5535683730020071551/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2009/03/vimle-log-renklendirme.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/5535683730020071551'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/5535683730020071551'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2009/03/vimle-log-renklendirme.html' title='vim&apos;le log renklendirme'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-3912129969790466805</id><published>2009-03-07T19:35:00.011+02:00</published><updated>2009-03-09T18:11:07.151+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='git'/><title type='text'>neden git kullanır insan?</title><content type='html'>şirkette subversion'dan git'e geçilmesi ardından yaşanan yoğun git karşıtlığı nedeniyle bir süredir git'i savunmak durumunda kalıyorum zaman zaman, ama çok da başarılı olduğum söylenemez, ben de savunmamı yazılı hale getirmeye karar verdim, belki böyle daha ikna edici olabilirim.&lt;br /&gt;&lt;br /&gt;aslında &lt;a href="http://whygitisbetterthanx.com/"&gt;şurada&lt;/a&gt; git'in diğer versiyon kontrol sistemlerine göre üstünlükleri oldukça detaylı açıklanmış.&lt;br /&gt;&lt;br /&gt;kişisel tercih sebeplerimi özetlemem gerekirse:&lt;br /&gt;&lt;br /&gt;* geliştirmenin bir kısmını teslim etmeye izin vermesi.&lt;br /&gt;* 'git add -p' komuduyla çalıştırılan etkileşimli teslim modu.&lt;br /&gt;* dallarla çalışmayı olağan hale getirmesi.&lt;br /&gt;* geçmiş teslimleri birleştirme/bölme, teslim mesajını sonradan düzenleme gibi geçmişe yönelik işlemlere izin vermesi.&lt;br /&gt;* ana depo ile klonlanan depo arasında bir farkın olmaması, daha doğrusu bir ana depo olmaması.&lt;br /&gt;* başkasının yerine teslim edebilme olanağı sunması.&lt;br /&gt;* "git-am" ile teslimlerin eposta yoluyla paylaşımının kolaylaştırılması.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://bdgn.net/"&gt;bekir&lt;/a&gt; zamanında &lt;a href="http://www.parkyeri.com/"&gt;parkyeri&lt;/a&gt;'nde rcs'den svn'e geçildiğinde, insanların "nasıl yani, bir dosya değiştiğinde tüm deponun revizyonu mu değişecek" şeklinde tepki gösterdiklerinden bahsetmişti. git'e geçerek dosya dosya teslim edebilme özelliğimizi geri kazanmış olduk, hatta daha da fazlasını yapabilir hale geldik, artık hunk hunk teslimler yapabiliyoruz. yani değil dosya dosya, dosyada yaptığımız değişikliklerin bir kısmını bile teslim edebilir hale geldik.&lt;br /&gt;&lt;br /&gt;git'te 3 aşamalı bir teslim anlayışı var. "git add" ile yaptığınız değişiklikleri önce "index"'e teslim ediyorsunuz; sonra "git commit" ile çalıştığınız dala; en son olarak da başka bir ana depo söz konusu ise "git push" ile, başka bir ana dal söz konusu ise "git merge" ile son teslimi yapmış oluyorsunuz.&lt;br /&gt;&lt;br /&gt;svn'de "svn commit" ile tek aşamada yapılan bir işi niye böyle zorlu bir hale getirdik diye deliren insanlar olabiliyor bu durumda. öncelikle bu 3 aşamada yapılan işi, "svn commit"'in yaptığı işe denk saymak çok yanlış. geçmişte uzun zamanlı bir geliştirme yapacaksam (örneğin 1 haftalık) svn-rcs karışık kullanımına yöneliyordum. svn'den çektiğim depoyu aynı zamanda bir rcs deposuna çevirerek geri almayacağımdan emin olduğum değişiklikleri rcs deposuna teslim ediyordum, ve rcs diffleri üzerinden geliştirmeye devam ediyordum. aksi takdirde yama 1 haftada çok büyüyordu ve gözden geçirme olanaksız hale geliyordu. tabi svn-rcs karışık kullanımı bu derdimi çözüyor olmasına karşın hayatıma yeni dertler sokabiliyordu. git bu açıdan ilaç gibi geldi diyebilirim, bence gayet şık çözmüşler meseleyi. artık geliştirme esnasında ne zaman kopuk ve sonucundan emin olmadığım bir yola yönelecek olsam, "git add" ile kaybetmek istemediğim değişiklikleri öncelikle index'e alıyorum, koda korkmadan dalabiliyorum, baktım yolun sonu iyi değil, "git co ." ile anında temiz noktaya geri dönüş yapabiliyorum. 3 günlük bir geliştirme yapacaksam, her gün akşam "git add" ile yaptığım işi gözden geçirip varsa kalıcı kod, teslimlerimi yapıyorum, böylece 3 gün sonunda kocaman bir yama gözden geçirmektense bu işi gün gün yaparak gözden kaçırma durumunu en aza indirgemiş oluyorum.&lt;br /&gt;&lt;br /&gt;"git add -p" index teslimlerini etkileşimli bir hale getirerek insanın işini epey bir kolaylaştırıyor. hunkları teker teker önünüze getirerek kabul edip etmediğinizi soruyor. tüm hunkların üzerinden geçerek kalacak kodları "index"'e ekliyorum, düzeltme gereken yerlerde arka planda değişiklikleri yapıyorum, hunklar bittikten sonra yeni düzeltmelerin teslimi için işlemi tekrarlıyorum, en sonunda sadece atılacak değişiklikler geriye kalıyor, "git co ." komuduyla bu kodları atıyorum.&lt;br /&gt;&lt;br /&gt;svn-rcs karışık kullanacağına svn'de bir dal açsaydın da rahat etseydin diye düşünebilirsiniz, onu da denedim ancak svn'de dal kullanımı hiç de dökumanlarda yazıldığı gibi pratik bir şey değil. herşeyden önce dalı açma sebebim trunk'da yapamayacağım işleri dalda yapabilmek. peki bir insan trunk'da ne yapamaz? sonradan silme ihtimali olduğu kodların teslimini yapmaktan çekinir mesela, ya da tek satırlık teslimlerle ilerlemeyi tercih etmezsin genelde teslim logunu kirletmemek için. dalda bütün bunları yapabiliyorum artık güzel, geliştirmemizi bitirdik, geldik yaptıklarımızı trunk'a geçirmeye. bu aşamada benim yaptığım, dalı açtığım noktayla geldiğim son nokta arasındaki farktan hazırladığım yamayı trunk'a uygulamaktı. böylece dalda yazdığım çöp kodları ve tek satırlık teslimleri trunk'a almamış oluyordum, ancak o zaman da dal ile trunk arasındaki bağ kopuyordu, "svn merge" komudunu hiç kullanmaz oluyordum yani gerçek anlamda dal açmış olmuyordum aslında. svn'de dal açmış olmamın svn-rsc karışık kullanımına göre yarattığı tek fark geliştirmede geldiğim son noktayı ve geçtiğim aşamaları diğer insanlarla da paylaşabiliyor olmamdı. aslında "svn merge" hiç kullanmıyor da değildim, trunk'da yapılan değişiklikleri dala almak için tek yönlü bir şekilde kullanıyordum, onda da her defasında "svn merge -rX:Y" dediğimde X dahil oluyor muydu olmuyor muydu diye sürüncemede kaldığımı hatırlarım. dalda yaptığım değişikliklerden hazırladığım yamayı trunk'a uygulayıp teslim ettikten sonra, dalı trunk'la eşit hale getirme meselesi var tabi bir de. onun için de dalda, çatalladığım ilk revizyona döndükten sonra, o revizyon ile trunk'taki son revizyon arasını, geri aldığım dala "svn merge" ile birleştirirdim. bütün bu işlemler çok külfetli geldiğinden kısa sürede svn'de dal kullanımından vazgeçmiş, svn-rcs karışık kullanımına geri dönmüştüm.&lt;br /&gt;&lt;br /&gt;peki svn'de dalla çalışmak problem de git de değil mi? pek değil, git'in tüm kurgusu dalların birleştirilmesi üzerine kurulu olduğundan tüm dal işlemleri gündelik hale geliyor, kısa sürede svn'de uzak durmaya çalıştığınız bir sürü şeyi çoktan refleks haline getirmiş oluyorsunuz. bir de git'te, "git rebase" diye bir komut var, yukarıda saydığım tüm problemleri tek kalemde çözüyor. bir daldan çatallayarak yeni bir dal oluşturdunuz, bu sırada ana dalda insanlar değişiklik yapmaya devam ediyor, bu değişiklikleri açtığıniz dala almak için "git rebase ANADAL" demeniz yeterli. ve artık açtığınız dalda korkmadan dilediğinizi özgürce yapabilirsiniz, çünkü git ile geçmişi de değiştirmeniz mümkün, yaptığınız tek satırlık teslimleri birleştirerek tek bir teslim haline getirebilirsiniz, geçmiş teslim mesajını değiştirebilir, "git cherry-pick" komudu ile başka dallarda hoşunuza giden değişiklikleri nokta atışı ile kendi dalınıza geçirebilirsiniz.&lt;br /&gt;&lt;br /&gt;svn'de geçmişte değişiklik yapabilmeniz için svnadmin gibi bir komuda ve bazı izinlere ihtiyacınız olur, git'te ise bir depoyu klonladığınızda ana depoyu yerelinize çekmiş olursunuz. ana depo üzerinde yapabileceğiniz her işi yerelinizde de yapabilirsiniz. deponun geçmişinde bir şey değiştirebilmeniz için sistem yöneticilerine "şu değişikliği yapabilir misiniz?" diye e-posta atmanız gerekmez.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.parkyeri.com/"&gt;parkyeri&lt;/a&gt;'nde gözden geçirmeleri eposta ile yapardık, geliştirmenizi tamamladığınızda "[YAMA]" etiketli bir epostayla yamanızı yayınlardınız, herhangi biri gözden geçirip teslim edebilirsin dedikten sonra yamayı gönderen teslimi gerçekleştirirdi, eğer biri birşeyi beğenmezse yamayı gönderen gerekli değişiklikleri yapar ve tekrar bir yama gönderirdi. eğer süreç şu şekilde olsa bence daha etkin bir çalışma yöntemi olurdu. geliştirmesini bitiren yamayı yayınlar, bir diğer kişi yamayı kendi deposuna uygular, problemli bulduğu yerlerde istediği değişiklikleri yapar ve teslimi gerçekleştirir. bu şekilde aynı yamanın ufak değişiklikler yüzünden 8 defa gönderilmesi derdinden de kurtulmuş oluyoruz. bir de yama gözden geçirmek için eposta üzerinden hızlıca bir göz atmak çok uygun bir yöntem değil, gözden kaçırmalara çok açık, yamayı yerelinize uygularsanız ister istemez testini de yapar halde bulacaksınız kendinizi, bu da gözle yakalayamadığınız hataları yakalayabilmenizi sağlayacaktır, örneğin yamaya eklenmesi unutulmuş bir değişiklik varsa, veya ayar dosyasında yapılması gereken bir değişiklik yamaya eklenmemişse testiniz patlayacağından anında durumun farkına varabilirsiniz.&lt;br /&gt;&lt;br /&gt;yalnız bu çalışma yönteminde, svn'de başkasının yerine teslim yapamadığınızdan değişikliklerin sahiplik bilgisinin kaybedilmesi gibi ciddi bir dert var. git'te ise istediğiniz kişi bilgileriyle teslim yapmanız mümkün. ve özellikle "git am" komudu ile teslimlerin eposta ile paylaşımı çok pratik bir hal aliyor, tek bir komutla eposta'daki yamayı yerelinize teslim edebiliyor ve yerelinizdeki teslimleri eposta haline getirebiliyorsunuz.&lt;br /&gt;&lt;br /&gt;sonuç olarak bence git üzerine gerçekten kafa yorulmuş ve güzel tasarlanmış, kişisel olarak yasadığım bir çok derde çözüm oldu. git diğer versiyon kontrol sistemlerinin sunduğu özellikleri sağladığı gibi daha da fazlasını sunuyor. o yüzden git kullanan bir insan herhangi bir versiyon kontrol sistemini kullanabilir, ama tersinin doğru olduğunu söylemek zor. bu nedenle diğer versiyon kontrol sistemlerine alışmış ve halinden memnun olan insanlar yadırgayabiliyorlar, işlerin gereksiz karmaşıklaştırıldığını düşünüyorlar. bence karmaşıklaştırılıyor olsa bile gereksiz karmaşıklaştırılmıyor, yukarıda saydığım ve benim kendimce daha karmaşık çözümler ürettiğim bir sürü problemi çok güzel çözmüş. aslında birşeyi karmaşıklaştırdığı görüşünü de paylaşmıyorum, sadece farklılaştırıyor, ve alıştıktan sonra gündelik kullanımda diğer versiyon kontrol sistemlerinden daha fazla veya daha az yormuyor diye düşünüyorum.&lt;br /&gt;&lt;br /&gt;özetle bence git doğru seçim.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-3912129969790466805?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/3912129969790466805/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2009/03/neden-git-kullanr-insan.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/3912129969790466805'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/3912129969790466805'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2009/03/neden-git-kullanr-insan.html' title='neden git kullanır insan?'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-3816827846527854624</id><published>2008-10-05T18:32:00.005+03:00</published><updated>2008-10-05T22:56:28.492+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='veryansın'/><category scheme='http://www.blogger.com/atom/ns#' term='plan9'/><title type='text'>sürücülerle nereye kadar!</title><content type='html'>macbook'ta debianı adam etmeye çabaladığım şu sıralar bir kez daha kendimi sürücülerle boğuşurken buluverdim. askerliğim boyunca uğraştığım TSK'nın win2k bilgisayarları sağolsun; karşılaştığım türlü dertler, ticari bir işletim sistemi tercih etsen bile bu sürücü belasının kurtulamayacağın bir illet olduğunu bir kez daha hatırlatmış oldu bana.&lt;br /&gt;&lt;br /&gt;herşeyden önce anlamadığım, insanoğlunun bilgisayarını başka bir şirketten, işletim sistemini başka bir şirketten almaya nasıl ikna olmuş olduğu. adam bir donanım satıyor ve bu donanımın başka bir şirketin ürettiği yazılım olmadan hiçbir anlamı yok. sadece bilgisayarlar değil, örneğin bir ağ kamerası aldınız, bunu kullanabilmek için bir bilgisayarınızın, bir de sorunsuz calışan bir işletim sisteminizin olması gerekiyor (ki bu sıradan bir windows kullanıcısı için kurulumdan sonraki 3-4 aya tekabül ediyor, sonrasında sistem çatırdamaya başlıyor), belki o zaman ağ kameranız size hizmet vermeye lütfedebilir, tabi o da üreticiler kullandığınız işletim sistemi için bir sürücü yazmışlarsa.&lt;br /&gt;&lt;br /&gt;bence bu işler bir noktada yanlış bir yola sapmış, IBM'in PC standardını serbest bırakması bir kırılma noktası olabilir. herşeyden önce cihazlar çalışmak için neden dış bir işletim sistemine ihtiyaç duyuyorlar, neden kendi işletim sistemleri kendi üzerilerinde gelmiyor?&lt;br /&gt;&lt;br /&gt;unix, ilk zamanlarda dosya yönetmekten başka bir amacı olmayan bir sistem, ve günümüz işletim sistemleri bu sistem üzerine oturtulmuş durumda. unix'te birinci kural "herşey bir dosyadır.", yani bilgisayarınıza taktığınız ethernet arabirimi de, ağ kamerası da sistem için birer dosyadan başka bir şey değildir. çıkış için dosyaya birşey yazılır, giriş için dosyadan birşeyler okunur. cihazlarin sürücüleri de bu dosyaya yazma-okuma işlemlerini cihazın anlayacağı dile tercüme eder. yani aslında bilgisayar dediğimiz şey iki kavramdan ibarettir: "giriş-çıkış", "kodlama-çözümleme". 1900'lerde de bu böyleydi, 3000'lerde de bu böyle olacak.&lt;br /&gt;&lt;br /&gt;ama umarım 3000'lerde hala sürücülerle uğraşıyor olmayız. yıl 3000'de bir uzay gemisine bindiğimde yanımda getirdiğim bir aygıtı kullanabilmek için uzay gemisi bana sürücü CDsi sorarsa o gemiyi yakabilirim.&lt;br /&gt;&lt;br /&gt;neyse ki şu sıralar bell labs &lt;a href="http://netlib.bell-labs.com/plan9/"&gt;plan9&lt;/a&gt; projesi ile unix'te sapılan "herşeyi dosyaya benzetme" yolundan dönme çabası içerisinde. yeni işletim sistemi için model olarak internet seçilmiş. bu da insana gelecek için biraz umut aşılıyor.&lt;br /&gt;&lt;br /&gt;herhangi bir donanımı çalışır hale getirmek bir adsl modemi çalışır hale getirmekten daha zor olmamalı, gerekli bağlantıları yaptıktan sonra tarayıcımdan bir adrese girmeliyim ve karşıma ayarlar sayfası çıkmalı, gerekli ayarları yaptıktan sonra cihaz çalışır hale gelmeli.&lt;br /&gt;&lt;br /&gt;bir uzay gemisindesiniz, evdeki sevdiklerinize son halinizin fotoğrafını göndermek istiyorsunuz, ve çevrenizde bir sürü akıllı aygıt var, bu aygıtların aklında da sadece 2 soru var: "girdileri nereden alacağım?", "çıktıyı nereye vereceğim?". kodlama-çözümleme ile ilgili soruların cevapları doğumlarında veya sonradan, donanım veya yazılım olarak beyinlerine kazınmış durumda. sizin ihtiyacınız olan bir ağ kamerası, fotoğrafı kaydetmek için bir dosya sunucusu ve mesaj göndermek için bir e-posta sunucusu.&lt;br /&gt;&lt;br /&gt;ve şimdi kullanacağınız aygıtların sorularına cevap verelim:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;ağ kamerası ayar sayfasında: görüntü dondurulduğu anda çıkışını dosya formatında, şu ayarlarda şu adresteki dosya sunucusuna gönder, girişin şu klavye üzerindeki şu kısayollar; şu kısayolda görüntüyü dondur, şu kısayolda görüntü akışına devam et.&lt;br /&gt;&lt;br /&gt;dosya sunucusu ayar sayfasında: girişinde şu ağ kamerasından akan verileri kabul et, şu adrese şu dosya ismiyle kaydet ve şu e-posta sunucusuna şu ayarlarla gönder.&lt;br /&gt;&lt;br /&gt;e-posta sunucusu ayar sayfasında: girişinde şu dosya sunucusundan akan verileri kabul et, transfer tamamlanınca çıkışın şu eposta adresi.&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;eğer fotoğrafın kaydını tutmak istemiyorsanız o zaman dosya sunucusunu hiç kullanmayabilirsiniz, ağ kamerasını doğrudan e-posta sunucusuna bağlayacak şekilde ayarlarınızı değiştirmeniz yeterli olacaktır.&lt;br /&gt;&lt;br /&gt;ama ne yazık ki günümüzde bu tip ölçeklendirmelere gitmek, kolayca bileşen değişikliği yapabilmek çok mümkün değil. çünkü ürettiğimiz aygıtların bir PC olmadan bir anlamları yok, PC'lerin efendi diğer aygıtların köle olduğu bir düzende yaşıyoruz, elimizdeki cihazı ancak PC'mizin gücünün izin verdiği ölçüde kullanabiliyoruz. halbuki iş paylaşımı ve haberleşmeye dayalı bir tasarım üzerine ilerlenmiş olsa, her cihazı çalıştığınız sistemden bağımsız olarak gerçek gücünde kullanmak mümkün olacaktı, belki de işletim sistemi diye birşey olmayacaktı.&lt;br /&gt;&lt;br /&gt;sun'in vizyonunda da söylendiği gibi "ağ demek bilgisayar demek!", inşallah.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-3816827846527854624?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/3816827846527854624/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2008/10/srclerle-nereye-kadar.html#comment-form' title='4 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/3816827846527854624'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/3816827846527854624'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2008/10/srclerle-nereye-kadar.html' title='sürücülerle nereye kadar!'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-8072387448392523404</id><published>2008-09-21T14:54:00.001+03:00</published><updated>2008-10-05T18:50:24.980+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='veryansın'/><category scheme='http://www.blogger.com/atom/ns#' term='debian'/><category scheme='http://www.blogger.com/atom/ns#' term='güvenlik'/><category scheme='http://www.blogger.com/atom/ns#' term='snort'/><category scheme='http://www.blogger.com/atom/ns#' term='IT'/><category scheme='http://www.blogger.com/atom/ns#' term='bilgisayar'/><category scheme='http://www.blogger.com/atom/ns#' term='internet'/><category scheme='http://www.blogger.com/atom/ns#' term='mac'/><category scheme='http://www.blogger.com/atom/ns#' term='base'/><category scheme='http://www.blogger.com/atom/ns#' term='bilişim'/><category scheme='http://www.blogger.com/atom/ns#' term='macbook'/><title type='text'>cinnet sonrası debian'a dönüş</title><content type='html'>macbook'la ikinci senemi doldurmak üzereyim, geçenlerde ağ trafiğimdeki bazı şüpheli hareketlerden kıllanıp &lt;a href="http://www.snort.org/"&gt;snort&lt;/a&gt;+&lt;a href="http://base.secureideas.net/"&gt;base&lt;/a&gt; ile bir takip edeyim dedim ne oluyor ne bitiyor. base, &lt;a href="http://www.php.net/gd"&gt;gd&lt;/a&gt; bağımlılıkları olan bir php uygulaması, leopard ile gelen php'nin ne yazık ki gd desteği yok idi, internette biraz bakındığımda gd desteği için yeni bir php derlemem gerektiğini fark ettim. mac'te en kıllandığım durumlardan biri bu, bir sistemin içinde gelen bir şeyler var, bir de onların yetmediği yerde darwin-ports'tan kurduğun şeyler, sisteminde 2şer tane gcc, 2şer tane php olabiliyor. bu da sistemi patlamaya hazır saatli bomba haline getiriyor, path'de ön sırada olan uygulamanın yanlış kütüphaneyi kullanması gibi sıkıntıların yol açabileceği, teşhisi zor problemlere davetiye çıkarılmış oluyor.&lt;br /&gt;&lt;br /&gt;bu fevri kızgınlık sırasında, şöyle döndüm bir kendime baktım. 2 yıl içerisinde, ağ trafiğindeki şüpheli hareketlerden kıllanan, türkiye'de yaşadığı için itunes store'dan alışveriş yapamadığına üzülen, apple'in çıkardığı her ürünün reklamlarını vs. pür dikkat izleyen bir adam haline gelmişim. steve jobs'un rüzgarına kapılarak huzurumdan olmuşum.&lt;br /&gt;&lt;br /&gt;şöyle bir "ps" çektim konsolda, bir sürü ne yaptığını bilmediğim işlem koşuyor bilgisayarımda, geçenlerde kendine &lt;a href="http://xmonad.org/"&gt;xmonad&lt;/a&gt; kurmuş, sisteminde toplasan 20 işlemin koştuğu &lt;a href="http://bdgn.net/"&gt;bekir çocuğu&lt;/a&gt; geldi aklıma ve bilgisayarım üzerindeki kontrolu yitirdiğim hissiyatına kapıldım.&lt;br /&gt;&lt;br /&gt;bu düşünce silsilesi sonrası getirdiğim cinnet sonrası macbook'uma debian kurma kararı aldım. yalnız o kadar da cinnet geçirmemişim sanırım ki tüm diski formatlamak yemedi, çift işletim sistemi çözümüne yöneldim.&lt;br /&gt;&lt;br /&gt;kurulumu tamamlayıp, yeni debianımı açtığımda uzun yıllar sonrası memlekete geri dönüşünde ilk işi toprağı öpmek olan gurbetçi pisikolojisine büründüm bir an için. mac'e geçtiğimde compiz, xgl yeni yeni çıkan kavramlardı, arkadaşlardan görüyordum ama içinde yaşama şansı bulamamıştım, diyebilirim ki memleket görmeyeli çok değişmiş. herhalde istanbul'a döndüğünde ilk kez gördüğü boğaziçi köprüsünden geçerken değişen istanbul üzerinde göz gezdiren gurbetçi ile aynı hissiyat içindeydim bu noktada da.&lt;br /&gt;&lt;br /&gt;yalnız çok zaman geçmeden memleketin bozuk yolları, gündelik dertleri gözüme batar oldu. tanınmayan donanımlar ve masaüstündeki genel bir yavaşlık hali. macbook o kadar ağım-şahım bileşenlere sahip olmayan bir bilgisayar olmasına rağmen macosx işletim sistemi ile gerçekten çok üstün bir başarım sergileyebiliyor. bu da insanın makineden beklentisini arttırıyor sanırım.&lt;br /&gt;&lt;br /&gt;ubuntunun kendi bilgisayarını ürettiği, ya da bir çinli üreticinin bünyesindeki düzgün yazılımcı ekibiyle üretilen bilgisayar için  kullanılacak linux dağıtımı üzerinde gerçek anlamda bir eniyileme çalışması yapabileceği günleri iple çekiyorum. her bilgisayarda koşsun diye yazılan yazılımların, özel bir donanım üzerinde koşulmak üzere yazılmış macosx işletim istemiyle rekabet edebilmesi oldukça güç aksi takdirde.&lt;br /&gt;&lt;br /&gt;neyse sanırım geri dönüşüm o kadar da hızlı gerçekleşemeyecek, biraz daha araştırma yapıp, çekirdeği macbook'a göre derleyip, bir iki ayar ile sıkıntılarımı aşabileceğim umuduna sahibim. televizyona ve dış monitore sorunsuz görüntü verebilme, skype'i kameralı olarak sorunsuz çalıştırabilme aşmam gereken öncelikli sıkıntılar.&lt;br /&gt;&lt;br /&gt;bu arada mac kullanıcılarına snort+base'i tavsiye ederim, başarılı bir nasıl belgesini &lt;a href="http://homepage.mac.com/duling/halfdozen/Snort-Howto.html"&gt;şurada&lt;/a&gt; bulabilirsiniz. arkadaş hemen quicktime'in vs.'in yaptığı hareketleri yakalıyıverdi.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-8072387448392523404?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/8072387448392523404/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2008/09/cinnet-sonras-debiana-dn.html#comment-form' title='1 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/8072387448392523404'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/8072387448392523404'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2008/09/cinnet-sonras-debiana-dn.html' title='cinnet sonrası debian&apos;a dönüş'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-3441362990149071746</id><published>2008-07-22T21:56:00.002+03:00</published><updated>2008-07-23T06:36:16.884+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='eklenti'/><category scheme='http://www.blogger.com/atom/ns#' term='firefox'/><category scheme='http://www.blogger.com/atom/ns#' term='imkbizle'/><category scheme='http://www.blogger.com/atom/ns#' term='imkb'/><category scheme='http://www.blogger.com/atom/ns#' term='borsa'/><title type='text'>imkbizle'ye "akbank yatırım" eklendi</title><content type='html'>&lt;div&gt;&lt;a href="http://addons.mozilla.org/en-US/firefox/addon/7250"&gt;imkbizle&lt;/a&gt; &lt;a href="http://imkbizle.googlecode.com/files/imkbizle-2.1.xpi"&gt;2.1 sürümü&lt;/a&gt; ile birlikte artık &lt;a href="http://www.isnet.net.tr/"&gt;işnet&lt;/a&gt;ten olduğu gibi &lt;a href="http://yatirimci.akbank.com.tr/"&gt;akbank yatırım&lt;/a&gt;dan da veri çekilebiliyor. böylece sitelerden biri problem yaşarsa insanlar diğer siteden hayatlarına devam edebilirler.&lt;/div&gt;&lt;br /&gt;&lt;div&gt;bununla birlikte sitelerden hisse değerleri dışında bilgi de çekilebilmesi mümkün, bunun ilk örneği dolar ve euro kur değerleri oldu, hisse listesinin sonuna "USDTRY" ve "EURTRY" diye iki yeni madde eklendi (firefox sayfasından gelen bir kullanıcı isteğiydi &lt;a href="http://code.google.com/p/imkbizle/issues/detail?id=16"&gt;bu&lt;/a&gt;)&lt;/div&gt;&lt;br /&gt;&lt;div&gt;kullanıcı test senaryoları ve birim testler de depoya eklendi. sanırım artık eklentiyi &lt;a href="http://addons.mozilla.org/en-US/firefox/pages/experimentalAddons"&gt;halka arz&lt;/a&gt; etmeye hazırım, 2.1 sürümü biraz indirilsin, insanlar tarafından da biraz test edilsin, herkes tarafından indirilebilir bir eklenti olması için başvuruda bulunacağım.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-3441362990149071746?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/3441362990149071746/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2008/07/imkbizleye-akbank-yatrm-eklendi.html#comment-form' title='1 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/3441362990149071746'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/3441362990149071746'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2008/07/imkbizleye-akbank-yatrm-eklendi.html' title='imkbizle&apos;ye &quot;akbank yatırım&quot; eklendi'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-386434162559534382</id><published>2008-06-01T17:36:00.004+03:00</published><updated>2008-06-01T19:01:41.652+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ipucu'/><category scheme='http://www.blogger.com/atom/ns#' term='güvenlik'/><category scheme='http://www.blogger.com/atom/ns#' term='internet'/><category scheme='http://www.blogger.com/atom/ns#' term='yasak'/><category scheme='http://www.blogger.com/atom/ns#' term='youtube'/><title type='text'>internet yasaklarını aşmanın en güvenli yolu</title><content type='html'>eskiden, türk telekom, internet yasakları için oldukça basit bir yöntem kullanıyordu. sadece dns sunucularında yasaklanan sitenin adresi, gerçek adresi yerine mahkeme kararının yayınlandığı adrese yönlendirilirdi. eğer türk telekomun dns sunucularını kullanmıyorsanız yasaklı siteye erişebilirdiniz.&lt;div&gt;geçenlerde türk telekom'un dns sunucularını kullanmamama rağmen yasaklı youtube'a giremediğimi farkettim. türk telekom mühendisleri sağda solda yazılan "bir siteyi bile adam gibi yasaklamaktan aciz mahluklar" gibi yakıştırmalara içerlemiş olsalar gerek, yasaklı sitelere ulaşım yolunu kesme yöntemine yönelmişler (bu tahrik dolu yazıları yazan yarım akıllılara hiç akıl sır erdiremiyorum, ekmeğini ağ mühendisliğinden kazanan bir insanın senin kadar kafasının calışmamasi gibi bir ihtimale nasıl inanabiliyorsun?).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;neyse son yasaklama yöntemiyle birlikte artık yasağı aşmak için bir vekil sunucu kullanmak farz hale geldi. ancak internette bir aratma sonucunda bulduğunuz ilk vekil sunucuyu kullanmak kendi ipinizi kendi elinizle çekmeniz anlamına geliyor. bu şekilde tüm trafiğinizi tanımadığınız birilerine dinletmek için gönüllü olmuş oluyorsunuz ki bir yandan da kendinizi &lt;a href="http://en.wikipedia.org/wiki/Man-in-the-middle_attack"&gt;ortadaki adam saldırıları&lt;/a&gt; için kurbanlık koyun haline getirmiş oluyorsunuz.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;naçizane önerim, internet yasaklarını aşacağım diye sakın ha bilmediğiniz herhangi bir dns sunucusunu veya vekil sunucusunu kullanmaya kalkmayın, canınız fena halde yanabilir. kimse sunucusu üzerindeki trafiği sevabına arttırmak istemez, bir art niyet olma olasılığı oldukça yüksektir.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;şu an için internet yasaklarını aşmanın en güvenli yolu, yurt dışında ssh ile bağlanabileceğiniz bir sunucunuz varsa eğer, bir socks v4 vekil sunucusu ayaklandırmanız ve tarayıcınızın ayarlarını bu vekil sunucusunu kullanacak şekilde değiştirmeniz.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;div&gt;&lt;div&gt;&lt;blockquote&gt;# ssh -D 8080 user@yurtdisindakimakine&lt;/blockquote&gt;&lt;/div&gt;&lt;div&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;yukarıdaki komut yerelinizde, 8080 portunda bir socks v4 vekil sunucusu oluşturur. örneğin firefox için, aşağıda görüldüğü gibi "socks v4 vekil sunucusu olarak localhost:8080 portunu kullan" şeklinde bir ayar yaparsanız (Ayarlar-Gelişmiş sekmesindeki bağlantı ayarlarından);&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_Ns5lQ4LvsCI/SEK7jVGRYoI/AAAAAAAACwk/caMf4WMRpOs/s1600-h/firefox-proxysettings.png"&gt;&lt;img style="cursor:pointer; cursor:hand;" src="http://bp2.blogger.com/_Ns5lQ4LvsCI/SEK7jVGRYoI/AAAAAAAACwk/caMf4WMRpOs/s320/firefox-proxysettings.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5206930334826979970" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;firefoxunuzdaki tüm trafik "yurtdisindakimakine" adlı sunucu üzerinden akmaya başlayacaktır, bu şekilde kullandığınız internet sağlayıcının (burada türk telekom) koyduğu kuralların bir anlamı sizin için kalmamış oluyor, "yurtdisindakimakine" sunucusunun internet sağlayıcısının koyduğu kurallar çerçevesinde internette gezinebiliyorsunuz.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;güzel memleketimi iran'a çevirmeye çalışan zihniyetler sağolsun artık internette rahat rahat gezinebilmek için yurt dışında bir makine kiralamak farz hale geldi sanırım.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-386434162559534382?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/386434162559534382/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2008/06/internet-yasaklarn-amann-en-gvenli-yolu.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/386434162559534382'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/386434162559534382'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2008/06/internet-yasaklarn-amann-en-gvenli-yolu.html' title='internet yasaklarını aşmanın en güvenli yolu'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp2.blogger.com/_Ns5lQ4LvsCI/SEK7jVGRYoI/AAAAAAAACwk/caMf4WMRpOs/s72-c/firefox-proxysettings.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-5566255653823978080</id><published>2008-05-24T13:51:00.004+03:00</published><updated>2008-05-26T23:14:42.495+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='eklenti'/><category scheme='http://www.blogger.com/atom/ns#' term='firefox'/><category scheme='http://www.blogger.com/atom/ns#' term='proje'/><category scheme='http://www.blogger.com/atom/ns#' term='kodlama'/><category scheme='http://www.blogger.com/atom/ns#' term='imkb'/><category scheme='http://www.blogger.com/atom/ns#' term='web'/><category scheme='http://www.blogger.com/atom/ns#' term='borsa'/><title type='text'>imkbizle</title><content type='html'>firefox'ta dolaşırken bir yandan portföyündeki hisselerinin gözünün altında olmasını isteyen insanlar için şöyle bir eklenti projesi açtım:&lt;div&gt;&lt;div&gt;&lt;a href="http://code.google.com/p/imkbizle/"&gt;http://code.google.com/p/imkbizle&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;firefox eklentileri arasına da ekledim:&lt;/div&gt;&lt;div&gt;&lt;a href="http://addons.mozilla.org/en-US/firefox/addon/7250"&gt;http://addons.mozilla.org/en-US/firefox/addon/7250&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;eğer bu sayfaya girip "vay anasını be", "adamlar yapmış", "supeer!" gibi yorumlar eşliğinde 5 yıldız verebilirseniz, eklentinin halka arzı için başvuruda bulunacağım. (değerlendirmede önemliymiş anladığım kadarıyla, yorumsuz not veremiyorsunuz, "asdf" gibi yorumlar yaptığınızda notunuz geçerli sayılmıyor ve yorum yazmak için kullanıcı hesabınızın olması gerekiyor. özetle biraz gereksiz kastırmışlar.)&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-5566255653823978080?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://code.google.com/p/imkbizle/' title='imkbizle'/><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/5566255653823978080/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2008/05/imkbizle_24.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/5566255653823978080'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/5566255653823978080'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2008/05/imkbizle_24.html' title='imkbizle'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-4424257018746192778</id><published>2008-05-24T13:39:00.003+03:00</published><updated>2008-05-25T17:23:47.881+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='yama'/><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='kodlama'/><category scheme='http://www.blogger.com/atom/ns#' term='jmeter'/><category scheme='http://www.blogger.com/atom/ns#' term='web'/><title type='text'>jmeter'la artık birden fazla dosya göndermek mümkün</title><content type='html'>kabul edilen &lt;a href="http://svn.apache.org/viewvc?view=rev&amp;amp;revision=654389"&gt;şu yamam&lt;/a&gt;la birlikte artık jmeter http isteklerine birden fazla dosya eklemek mümkün.&lt;div&gt;&lt;div&gt;ve bu yamayla birlikte "&lt;a href="http://sozluk.sourtimes.org/show.asp?t=hede"&gt;hede&lt;/a&gt;" sözcüğünü de jmeter kod tabanına sokmuş oldum.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-4424257018746192778?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/4424257018746192778/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2008/05/jmeterla-artk-birden-fazla-dosya.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/4424257018746192778'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/4424257018746192778'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2008/05/jmeterla-artk-birden-fazla-dosya.html' title='jmeter&apos;la artık birden fazla dosya göndermek mümkün'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-3029768164469000473</id><published>2008-03-30T17:38:00.002+03:00</published><updated>2008-03-30T17:40:56.558+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='ipucu'/><category scheme='http://www.blogger.com/atom/ns#' term='kodlama'/><category scheme='http://www.blogger.com/atom/ns#' term='jmeter'/><category scheme='http://www.blogger.com/atom/ns#' term='mac'/><title type='text'>macosx'te jmeter testlerini çalıştırma mücadelesi</title><content type='html'>leopard üzerinde jmeter birim testlerini çalıştırma mücadeleniz varsa ve&lt;blockquote&gt;(org.apache.jmeter.assertions.XMLSchemaAssertionTest)java.lang.IllegalArgumentException: http://java.sun.com/xml/jaxp/properties/schemaLanguage&lt;/blockquote&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;tadında hatalar alıyorsanız, ~/Library/Java/Extensions/xerces.jar kütüphanesini silip tekrar denemenizi tavsiye ederim, tabi bir tarafa yedeğini almakta fayda var, başka bir program için yerine koymanız gerekebilir belki bir vakit, belli mi olur.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-3029768164469000473?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/3029768164469000473/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2008/03/macosxte-jmeter-testlerini-altrma.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/3029768164469000473'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/3029768164469000473'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2008/03/macosxte-jmeter-testlerini-altrma.html' title='macosx&apos;te jmeter testlerini çalıştırma mücadelesi'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-5148988916884836185</id><published>2008-01-07T21:20:00.000+02:00</published><updated>2008-01-08T11:22:16.554+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='IT'/><category scheme='http://www.blogger.com/atom/ns#' term='teknoloji'/><category scheme='http://www.blogger.com/atom/ns#' term='web'/><category scheme='http://www.blogger.com/atom/ns#' term='bilişim'/><category scheme='http://www.blogger.com/atom/ns#' term='web3'/><title type='text'>Ağ 3.0 - Anlamsal Ağ</title><content type='html'>&lt;p&gt;(&lt;a href="http://www.emo.org.tr/"&gt;emo&lt;/a&gt;'nun isteği üzerine &lt;a href="http://bdgn.net/"&gt;bekir&lt;/a&gt;'le beraber hazırladığımız makale)&lt;/p&gt;&lt;p&gt;--&lt;/p&gt;&lt;p&gt;Genelağ (internet) üzerinde oluşan sosyal ağlar, yaygınlaşan elektronik günlükler ve kişisel yayınlar ile birlikte çığ gibi büyüyen sanal veri yığınının çöp haline gelmemesi ve aramalarda tekellere bağımlılığın son bulması için, içeriklerin ve kavramların birbirleriyle ve kişilerle ilişkilendirilebildiği anlamsal bir ağın (semantic web) oluşturulması şart. "web-3.0" ve "semantic web" çoğu zaman birlikte anılan kavramlar. Ağa (web) sürüm biçen resmi bir otorite olmamasına rağmen "web-1.0", "web-2.0" ve "web-3.0" şeklinde isimlendirmeler, pazarlama kavramları olarak sürekli gündemde. Bu sürüm numaralarıyla ifade edilen dönemleri genelağ üzerinde yaşanan ekonomik değişimler sonucu atlanan çağlar olarak tanımlamak da mümkün. "web-1.0" döneminde genelağ üzerinden ticaret ile tanıştık. "web-2.0" ise, e-ticarete katılan e-topluluklar ve beraberinde gelen zengin ve dağıtık içeriğin ekonomik gidişatı belirlediği çağdı. Şirketlerin değerleri kullanıcı sayılarıyla ölçülür hale geldi. Zamanla kişiselleştirilebilirlik ağda yükselen bir değer haline geldi. Genelağdaki kimliklerin ve kullanıcı alışkanlıklarının giderek belirginleşmesi ile birlikte görünümler kişiye göre şekillendirilebilir kılındı, ancak sadece görüntüde değil işlevde de kişiselleştirme bir ihtiyaç halini aldı. Arama motorları, arama yapan kişinin kimliğine göre farklı sonuçlar getirme mücadelesine giriştiler. Peki ağ bu değişime gerçekten hazır mı? Halen ağdaki sayfamızın arama motorları tarafından farkedilmesi için özel anahtar kelimelerden faydalanıyoruz. İnsanın okuyacagi ile makinenin okuyacağı içerigi ayırmış durumdayız. Aramalarda gerçek anlamda bir kişiselleştirme için içerigi kişiyle bir şekilde ilişkilendirmek şart. Bir insanın basitçe cevap vereceği soruları bir arama motoruna sorup da düzgün bir cevap almak çok mümkün değil bu ilişki bilgisinin eksikliği nedeniyle. Genelağ üzerindeki içeriğin birbiriyle ilişkilendirildiği ve cümlelerle ifade edilebilir hale geldiği, genelağın dev bir veritabanına dönüştüğü, makinelere soru sorabildiğimiz, makinelerin birbirleriyle konuşarak sorularımıza cevap arayabildiği, özetle makinelerin konuşmayı öğrendiği, servis ve sunucu merkezli yaklaşımların yerini kullanıcı merkezli dağıtık bir yapıya bıraktığı yeni çağ "web-3.0", ve bu çagın temelini oluşturan alt yapı da anlamsal ağ (semantic web) olarak tanımlanıyor.&lt;/p&gt;&lt;p&gt;İçerikleri anlamlı bir şekilde ilişkilendirebilmek için öncelikle sözlere, ve bu sözlerin tanımına bakabileceğimiz sözlüklere ihtiyacımız var. Günümüzde ağdaki sayfamızın insan dışında da bazı ziyaretçileri var. Yayınlarımızın kolayca takibini mümkün kılan RSS okuyucular, gezegenler; yazdıklarımızın diğer insanlar tarafından bulunabilmesini sağlayan arama motorları mevcut. İnsan dışındaki en eski ziyaretçi kitlesi olan bu arama motorlarının gözüne çarpmak için sayfamızda insanlara hitap etmeyen anahtar sözcükler barındırıyoruz. İçerik hakkında içerik olarak da tanımlayabileceğimiz bu anahtar sözcükleri (metadata) belirlerken insanların genelağ üzerinde bir arama yaparken edindikleri bazı alışkanlıkları takip ederek ilerliyoruz. Anlamsal ağlarda ise içerik (data) ile anahtar sözcüklerin (metadata) iç içe geçmesi hedefleniyor. İçerik ile içerik hakkındaki bilgilerin birlikte ifade edilebildiği yollar aranıyor. Bu durumda anahtar sözcüklerler şu anda olduğu gibi sayfanın geneline dair değil, içerik bazında bir ilişkilendirme imkanı sunar hale gelecekler. Amaç sayfanızda tanımlanmamış herhangi bir içeriğin kalmaması. Peki bu tanımlar nereden geliyor? Tanımlara, işlevi dolayısıyla sözlük olarak nitelendirilebilecek belirtimlerden (spec) bakılıyor. Aynı belirtimleri kullanarak yazılan uygulamalar birbirlerinin dilini konuşabiliyorlar (FOAF (Friend Of A Friend) incelenebilecek güncel sözlüklere güzel bir örnek[8]).&lt;/p&gt;&lt;p&gt;Sözlükler oluştuktan sonra, sayfalarımızda kullanılagelen içerik-etiket eşleşmelerini, temel dilbilgisi kuralları üzerine kurulu cümlelere dönüştürebiliriz. İçerik ilişkilendirmelerimizi kuracağımız cümlelerin yüklemi olarak düşünmek mümkün. İnsanların kişisel bilgilerini yayınladığımız bir sayfamız olsun. Seçtiğimiz sözlükte "kişisel bilgi" sözcüğünün tanımı yapılmış mı diye bakıyoruz, yapılmışsa cümlemizin öğeleri tamamlandı anlamına geliyor. Burada özne içeriğin kendisi, nesne sayfamız, yüklem ise "kişisel bilgidir". İnsanın kolayca anlayabileceği bir cümle olarak ifade edersek, "bu içerik bu sayfada bir kişisel bilgidir." cümlesi karşımıza çıkıyor. "kişisel bilgi" sözcüğünün sözlükteki tanımı şu şekilde yapılmış olsun: "ad-soyad bilgisinin mutlaka olması gereken, bunun yanında takma isim, genelağ adresi, e-posta adresi, posta adresi, enlem-boylam pozisyonu, fotoğrafı, sıfatı, notlar ve çeşitli kimlik numaraları gibi kişiye dair diğer bilgileri de içerebilen bilgiler bütünü". Diyelim ki sayfamızda "ali veli" diye bir isim geçiyor, "ali veli" ismini bir "kişisel bilgi"'nin içine dahil edip "ad-soyad" olduğunu belirttiğimizde ikinci cümlemizi kurmuş oluyoruz: "ali veli bu kişisel bilgiye dair bir ad-soyaddır". Kullandığımız "kişisel bilgi" ve "ad-soyad" etiketlerini sayfanın gösteriminde de kullanarak hem görsel hem metin olarak insan tarafından anlaşılır kılmak çok zor değil. Bunun yanında "sayfa", "kişisel bilgi" ve "ad-soyad" sözcükleri arasında kurduğumuz ilişki sayesinde hem insan hem makineler için anlam ifade edecek yeni cümleler türetmek mümkün hale geliyor (örneğin "ali veli bu sayfadaki bir insan ismidir").&lt;/p&gt;&lt;p&gt;Kurulan ilişkiler ve cümleler ile bir sayfa üzerinde tıpkı bir veritabanı sorgusuna benzer sorguların çalıştırılması mümkün. Şekil 1'de kıtalar ile ülkeler arasında "içerme" ilişkisini ve ülkeler ile şehirler arasında "başkent olma" ilişkisini tutan bir sayfa üzerinde çalıştırılan örnek bir SPARQL (SPARQL Protocol and RDF Query Language) sorgusunu görüyoruz. Afrika'yla "içerme" ilişkisi kuran ülkelerin isimleri ve bu ülkelerle "başkent olma" ilişkisi bulunan şehir isimleri sorgulanmış. Günümüzde, veritabanlarının yaygın kullanımı nedeniyle, veri sorgulama denilince insanların aklına ilk olarak SQL sorgularının geliyor olması SPARQL ile SQL arasındaki söz dizimi benzerliğinin sebebini ortaya koyuyor. Burada önemli olan bu tip bir soyutlamaya izin veren altyapının oluşturulması.&lt;/p&gt;&lt;div align="CENTER"&gt;&lt;table&gt;&lt;tbody&gt;&lt;/tbody&gt;&lt;caption align="BOTTOM"&gt;&lt;strong&gt;Şekil 1:&lt;/strong&gt;&lt;br /&gt;SPARQL örneği&lt;/caption&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;img width="461" height="204" border="0" src="http://erhankesken.googlepages.com/img1.png" alt="\begin{figure}\begin{center} \footnotesize \line(1,0){230} \begin{verbatim}PRE... ...nContinent abc:africa. }\end{verbatim} \line(1,0){230}\end{center}\end{figure}" /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;p&gt;Sorgu dili soyutlamasındaki son nokta ise iletişimi günlük konuşma dili seviyelerine çekebilmek. Örneğin şekil-1'deki SPARQL sorgusu yerine "Afrika'daki ülkeler ve başkentleri nelerdir?" diye bir sorunun makineler tarafından cevaplandırılabilir hale gelmesi anlamsal ağ çalışmalarındaki nihai hedef.&lt;/p&gt;&lt;p&gt;Sadece insanın makinelere değil, makinelerin de birbirlerine soru sorabileceği bir altyapıdan söz ediyoruz. Şekil-1'deki sorguda tek bir sayfadan değil iki sayfadan veri çekildiği durumu düşünelim. Sayfalardan biri kıtalar ile ülkeler arasındaki "içerme" bilgisini tutsun, diğeri de ülkeler ile şehirleri arasındaki "başkent olma" ilişkisini. İlk sayfa, "Afrika'da hangi ülkeler vardır?" sorusuna cevap verebilecektir, her bir ülke için diğer sayfaya "bu ülkenin başkenti nedir?" sorusunu soracak, ve edindiği bilgiler ile kullanıcının sorusuna doğrudan istediği sonuçları dönmesi mümkün olacaktır.&lt;/p&gt;&lt;p&gt;Makinelerin kendi arasında haberleşmesi çok yeni bir şey olmamasına rağmen, bu haberleşmenin teknik olmayan insanlar tarafından anlaşılır hale gelmesi anlamsal ağlarla mümkün. Örneğin yukarıdaki örnekte sayfalardan biri diğerine ülke sayısı kadar "bu ülkenin başkenti nedir?" sorusunu soruyor. Burada şebekeyi (network) dinleyen insanın ne konuşulduğunu anlaması için herhangi bir protokolün belirtimini okumasına, okuduğu belgeyi anlayabilmek icin uzun uzun eğitimler almış olmasına gerek kalmıyor, çünkü konuşulan protokol gündelik hayatında da kullanageldiği basit dil bilgisi kuralları üzerine kurulmuş bir protokol.&lt;/p&gt;&lt;p&gt;Anlamsal ağa dair oluşumlar, diğer bir yandan, günümüzde olduğu gibi merkezde servislerin ve sunucunun olduğu değil, kullanıcının yer aldığı bir yapıyı zorluyor. Örneğin e-posta hesabımızı tuttuğumuz servisle, kişi listemizi tuttuğumuz servisin aynı firma tarafından veriliyor olması gibi bir kısıtın kalmaması gerekiyor. Kişi listemizde bulunan adreslere, eposta uygulamamızdan kolayca erişip hızlı bir şekilde mesaj gönderebilmek amaçlanıyor. Bunun için de kullanıcı kimliklerinin her servis için ayrı ayrı oluşturulduğu şu anki yapının yerini tek bir kullanıcı kimliğinin olduğu, kimliğin servislere tanıtıldığı bir düzene bırakması bekleniyor. Kullanıcılar içerik sorgularken ve yayınlarken kullanacakları dile seçtikleri sözlüklerle karar verebilecekler. Dağıtık, sonu olmayan ve güvenli bir paylaşım ortamının oluşturulmasi anlamsal ağların gereksinimlerinden biri.&lt;/p&gt;&lt;div align="CENTER"&gt;&lt;table&gt;&lt;tbody&gt;&lt;/tbody&gt;&lt;caption align="BOTTOM"&gt;&lt;strong&gt;Şekil 2:&lt;/strong&gt;&lt;br /&gt;XSLT ile XHTML'in RDF'e çevrilmesi&lt;/caption&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;img width="460" height="345" border="0" src="http://erhankesken.googlepages.com/img2.png" alt="\begin{figure}\begin{center} \footnotesize \line(1,0){230} \begin{verbatim}&amp;lt;ht... ...-01-0 &amp;lt;/rdf:Description&amp;gt;\end{verbatim} \line(1,0){230}\end{center}\end{figure}" /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;p&gt;Anlamsal ağ çalışmalarına "W3C"[1] çalışma grupları ve ortaya koydukları standartlar yön veriyor. Ağı veriye dönüştürme amaçlı bu çalışmalar genel olarak iki odak altinda ilerliyor. Bir odak, RDF (Resource Definition Language)[3] ve OWL (Web Ontology Language)[4] gibi dillerle anlam bilimsel cümleler kurulması ve uygulamalarin bu cümleler güdümünde geliştirilmesi. "W3C"'nin ortaya koyduğu standartlar ışığında RDF ve OWL yaratabilmek, yaratılmış olanlar üzerinde SPARQL ile sorgulama yapabilmek için geliştirilmiş pek çok araç var, pek çoğu da geliştirilmeye devam ediliyor. Anlamsal ağ ile ilgili yayınlanan belge sayısı ve çalışan geliştirici toplulukları gayet tatmin edici boyutlarda. Anlamsal ağ çalışmalarında bir diğer odak noktası olan GRDDL (Gleaning Resource Descriptions from Dialects of Languages)[5] ile var olan içeriği bir dizi değişime uğratıp anlam bilimsel formatlara çevirme yöntemi üzerinde duruluyor (bkz. Şekil 2). Biçim imleri (tag) içindeki öznitelikleri (attribute) etiket olarak kullanıp, daha sonra bu etiketlere bakarak kolayca RDF'e ya da başka herhangi bir formata dönüştürmek mümkün. Bu etiket mantığı üzerine kurulu en bilinen yöntem, fikir babalığını "W3C"'de söz sahibi Tantek Çelik isimli bir Türk'ün yaptığı "mikroformat"[7] yöntemidir. "Tails Export"[9] isimli "firefox" eklentisi sayesinde genelağda dolaşırken girdiğiniz sayfanın herhangi bir mikroformata uyumlu içerik bulundurup bulundurmadığını ve bulunduruyorsa bu içeriklerin neler olduğunu görebilirsiniz. Anlamsal ağ kavramlarından faydalanan sayfaları ve portalları incelemek için "smile"[10] projesi kapsamında geliştirilen ve firefox eklentisi olarak calışan "piggy bank"[11] uygulamasını indirip deneyebilirsiniz. Anlamsal ağlarla ilgili şu ana kadar yapılan çalışmalardan örnekler vermek gerekirse, tanınmış sözlükler için;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;SKOS Core[12]&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Dublin Core[13]&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;FOAF[8]&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;DOAP[14]&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;SIOC[15]&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;vCard in RDF gibi[16]&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;duyulmuş projeler için:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Pfizer[17]&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;NASA's SWEET[18]&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Eli Lilly[19]&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;MITRE Corp.[20]&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Elsevier[21]&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;EU Projeleri (ör: Sculpteur[22], Artiste[23])&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;UN FAO’s MeteoBroker&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;DartGrid[24]&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Smile[10]&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;p&gt;anlamsal ağlar üzerine kurulmuş portallar için;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Vodafone's Live Mobile Portal&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Sun’s White Paper Collections[26] and System Handbook collections[27]&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Nokia’s S60 support portal[25]&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Harper’s Online magazine linking items via an internal ontology[28]&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Oracle’s virtual press room[29]&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Opera’s community site[30]&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Yahoo! Food[31]&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;FAO's Food[32]&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Nutrition and Agriculture Journal portal.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;örneklerini vermek mümkün.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Anlamsal ağlar yolunda şu ana kadar epey bir mesafe kaydedilmiş durumda. Şekil 3'de anlamsal ağa dair kavramlar katman katman belirtilmiş. Son 3 katmana kadar RDF, OWL, SPARQL ve GRDDL gibi somut çıktılarla yol katedildiği görülüyor. Geri kalan, "mantık", "kanıt" ve "güven" basamakları için henüz atılmış somut bir adım olmamasına karşın, "W3C" bünyesindeki çalışma grupları ile bu konular üzerindeki çalışmalar devam ediyor. Burada mantık ile kastedilen kurulmuş cümleleri okuyup anlayarak mantık kuralları çerçevesinde yeni cümlelerin kurulabilmesini sağlayan altyapıdır. "Kanıt" ise, bir çıkarımı doğrulayan savların ne şekilde ortaya konulacağını belirleyen katmandır. En üstteki güven katmanında, bilgilerin güvenilirligi ve kişilerin mahremiyet haklarını koruma ile ilgili çözümler yerini alacaktır.&lt;/p&gt;&lt;div align="CENTER"&gt;&lt;table&gt;&lt;tbody&gt;&lt;/tbody&gt;&lt;caption align="BOTTOM"&gt;&lt;strong&gt;Şekil 3:&lt;/strong&gt;&lt;br /&gt;Anlamsal Ağ Katmanları&lt;/caption&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;img width="320" height="240" border="0" src="http://erhankesken.googlepages.com/semantic-web-layer-cake-2.png" alt="\begin{figure}\begin{center} \epsffile{swlevels.eps}\end{center}\end{figure}" /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;p&gt;Anlamsal ağlar bir hayal değil gereksinimdir. Bugün milyonlarla ifade edilen genelağ kullanıcısı sayısının yakın zamanda milyarlarla ifade edilir hale geleceği öngörülüyor. Hızla artan kullanıcı nüfusu ve yayılan paylaşım kültürü ile herkese açık ve katlanarak büyüyen veri yığınını anlamlı hale getirmek şart. Yayınlayan için bulunabilirlik, arama yapan için ise doğru bilgiye hızlı erişime imkan tanıyan bir çözüm olarak ortaya çıkıyor anlamsal ağ. İçerikler arası kurulan ilişkilendirmeler sayesinde her bir sayfa başka sayfalarla ve insanlarla konuşabilen zayıf bir zekaya sahip hizmetkarlara dönüşüyor. Genelağı, arama motorlarının bize sundugu dar bir pencereden seyredebiliyoruz. İleride ise yapacağımız herhangi bir aramada, tetikleyeceğimiz kıvılcım tıpkı bir dedektif gibi ilişkilerle kurulan yolları izleyerek aradığımızı bulup önümüze getirebilecek. Yerel ağınızda bir arama yapabilmek için daha önceden yerel ağınızdaki tüm sayfaları dolaşıp indeks oluşturan bir arama motoruna ihtiyaç ortadan kalkıyor, aramalar gerçek zamanlı bir hal alıyor. Genelağda kendi sınırlarımızı belirleyebiliyoruz, ağdaki yaşam alanımızı istediğimiz zaman genişletip, istediğimiz zaman daraltmamız mümkün. Yapacağımız aramanın ne kadar detaylı olacağını kullandığımız arama motorunun gücü değil, yapacağımız seçimler belirleyecek.&lt;/p&gt;&lt;div align="CENTER" style="text-align: left;"&gt;Kaynaklar:&lt;br /&gt;[1] http://www.w3.org/&lt;br /&gt;[2] http://www.w3.org/2001/sw/&lt;br /&gt;[3] http://www.w3.org/RDF/&lt;br /&gt;[4] http://www.w3.org/2004/OWL/&lt;br /&gt;[5] http://www.w3.org/2001/sw/grddl-wg/&lt;br /&gt;[6] http://www.w3.org/TR/rdf-sparql-query/&lt;br /&gt;[7] http://microformats.org/&lt;br /&gt;[8] http://www.foaf-project.org/&lt;br /&gt;[9] http://addons.mozilla.org/firefox/2240&lt;br /&gt;[10] http://smile.mit.edu/&lt;br /&gt;[11] http://simile.mit.edu/piggy-bank/&lt;br /&gt;[12] http://www.w3.org/TR/swbp-skos-core-guide/&lt;br /&gt;[13] http://www.dublincore.org/&lt;br /&gt;[14] http://usefulinc.com/doap/&lt;br /&gt;[15] http://sioc-project.org/&lt;br /&gt;[16] http://www.w3.org/2006/vcard/ns&lt;br /&gt;[17] http://www.pfizer.com&lt;br /&gt;[18] http://sweet.jpl.nasa.gov/ontology/&lt;br /&gt;[19] http://www.lilly.com/&lt;br /&gt;[20] http://www.mitre.org/&lt;br /&gt;[21] http://aduna.biz/dope/&lt;br /&gt;[22] http://www.sculpteurweb.org/&lt;br /&gt;[23] http://users.ecs.soton.ac.uk/km/projs/artiste/&lt;br /&gt;[24] http://ccnt.zju.edu.cn/projects/dartgrid/intro.html&lt;br /&gt;[25] http://www.forum.nokia.com/&lt;br /&gt;[26] http://www.sun.com/servers/wp.jsp&lt;br /&gt;[27] http://sunsolve.sun.com/handbook_pub/validateUser.do?target=index&lt;br /&gt;[28] http://www.harpers.org/&lt;br /&gt;[29] http://pressroom.oracle.com/&lt;br /&gt;[30] http://my.opera.com/community/&lt;br /&gt;[31] http://food.yahoo.com/&lt;br /&gt;[32] http://www.fao.org/&lt;br /&gt;[33] http://www.w3.org/2001/12/semweb-fin/w3csw&lt;br /&gt;[34] http://www.w3.org/2007/Talks/0831-Singapore-IH/&lt;br /&gt;[35] http://www.w3.org/2007/Talks/0424-Stavanger-IH/&lt;br /&gt;[36] http://www.w3.org/TR/grddl-primer/&lt;br /&gt;[37] http://en.wikipedia.org/wiki/Semantic_Web&lt;br /&gt;[38] http://en.wikipedia.org/wiki/Ontology_%28computer_science%29&lt;br /&gt;[39] http://en.wikipedia.org/wiki/Web_Ontology_Language&lt;br /&gt;[40] http://en.wikipedia.org/wiki/Resource_Description_Framework&lt;br /&gt;[41] http://en.wikipedia.org/wiki/GRDDL&lt;br /&gt;[42] http://sramanamitra.com/2007/02/14/web-30-4c-p-vs&lt;br /&gt;[43] http://www.ozgan.net/?sm=content.ybz&amp;amp;id=63&lt;br /&gt;[44] http://xmlns.com/foaf/spec/&lt;br /&gt;&lt;/div&gt;&lt;div align="CENTER" style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-5148988916884836185?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/5148988916884836185/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2008/01/30-anlamsal.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/5148988916884836185'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/5148988916884836185'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2008/01/30-anlamsal.html' title='Ağ 3.0 - Anlamsal Ağ'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-756799513807607094</id><published>2007-12-09T16:19:00.000+02:00</published><updated>2007-12-09T16:23:32.371+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><category scheme='http://www.blogger.com/atom/ns#' term='parkyeri'/><category scheme='http://www.blogger.com/atom/ns#' term='kodlama'/><category scheme='http://www.blogger.com/atom/ns#' term='IT'/><category scheme='http://www.blogger.com/atom/ns#' term='bilgisayar'/><category scheme='http://www.blogger.com/atom/ns#' term='bilişim'/><category scheme='http://www.blogger.com/atom/ns#' term='egitim'/><title type='text'>jmeter'a hızlı başlangıç</title><content type='html'>&lt;embed style="width:400px; height:326px;" id="VideoPlayback" type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docId=-4883814708324445199&amp;amp;hl=en" flashvars=""&gt;&lt;/embed&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-756799513807607094?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/756799513807607094/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2007/12/jmetera-hzl-balang.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/756799513807607094'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/756799513807607094'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2007/12/jmetera-hzl-balang.html' title='jmeter&apos;a hızlı başlangıç'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-482815914769214692</id><published>2007-12-09T16:16:00.000+02:00</published><updated>2007-12-09T16:19:38.447+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><category scheme='http://www.blogger.com/atom/ns#' term='parkyeri'/><category scheme='http://www.blogger.com/atom/ns#' term='kodlama'/><category scheme='http://www.blogger.com/atom/ns#' term='IT'/><category scheme='http://www.blogger.com/atom/ns#' term='bilgisayar'/><category scheme='http://www.blogger.com/atom/ns#' term='bilişim'/><category scheme='http://www.blogger.com/atom/ns#' term='egitim'/><title type='text'>java, php, perl, python, ruby, lisp ve javascript için birim test örnekleri</title><content type='html'>&lt;embed style="width:400px; height:326px;" id="VideoPlayback" type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docId=7820771400298430433&amp;amp;hl=en" flashvars=""&gt;&lt;/embed&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-482815914769214692?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/482815914769214692/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2007/12/java-php-perl-python-ruby-lisp-ve.html#comment-form' title='2 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/482815914769214692'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/482815914769214692'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2007/12/java-php-perl-python-ruby-lisp-ve.html' title='java, php, perl, python, ruby, lisp ve javascript için birim test örnekleri'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-1222990824189205117</id><published>2007-12-09T16:01:00.000+02:00</published><updated>2007-12-09T16:19:22.882+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><category scheme='http://www.blogger.com/atom/ns#' term='nasıl'/><category scheme='http://www.blogger.com/atom/ns#' term='debug'/><category scheme='http://www.blogger.com/atom/ns#' term='parkyeri'/><category scheme='http://www.blogger.com/atom/ns#' term='kodlama'/><category scheme='http://www.blogger.com/atom/ns#' term='IT'/><category scheme='http://www.blogger.com/atom/ns#' term='bilgisayar'/><category scheme='http://www.blogger.com/atom/ns#' term='emacs'/><category scheme='http://www.blogger.com/atom/ns#' term='bilişim'/><category scheme='http://www.blogger.com/atom/ns#' term='egitim'/><title type='text'>konsoldan ve emacs'ten basit gdb ve perldb kullanımı</title><content type='html'>&lt;embed style="width:400px; height:326px;" id="VideoPlayback" type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docId=-2002454321452602041&amp;amp;hl=en" flashvars=""&gt;&lt;/embed&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-1222990824189205117?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/1222990824189205117/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2007/12/konsoldan-ve-emacsten-basit-gdb-ve.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/1222990824189205117'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/1222990824189205117'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2007/12/konsoldan-ve-emacsten-basit-gdb-ve.html' title='konsoldan ve emacs&apos;ten basit gdb ve perldb kullanımı'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-8200162730517489877</id><published>2007-12-09T15:15:00.000+02:00</published><updated>2007-12-09T16:00:00.339+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='hayat'/><category scheme='http://www.blogger.com/atom/ns#' term='parkyeri'/><title type='text'>parkyeri'nde çalışmak</title><content type='html'>neredeyse 2 yılımı geçirdiğim parkyeri'nden askerlik nedeniyle ayrılmak durumunda kaldım. türkiye'de başka herhangi bir şirkette bu kadar kısa bir sürede bu kadar fazla deneyim edinebileceğimi sanmıyorum. bunda parkyeri'nde toplanmış insanların ve çalışana istediğini yapma özgürlüğünün tanınmasının payı büyük.&lt;br /&gt;&lt;br /&gt;parkyeri'nde; kişisel gelişiminizi, alanınız hakkında sizin kadar fikir sahibi olması mümkün olmayan insan kaynakları elemanlarının eline bırakmıyorsunuz. bir eğitime, ya da bir seminere katılmak istediğinizi belirtiyorsunuz, sizinle birlikte gelmek isteyenlerle birlikte gidebiliyorsunuz. insan kaynakları da sizin için işin organizasyon kısmını hallediyor. çalışma saatleri ve ücretsiz izinler konusundaki rahatlık işiniz dışındaki gelişmeleri de rahatça takip edebileceğiniz bir ortam sunuyor. tabi herşeyden önemlisi birlikte çalıştığınız insanlar ve bilgi paylaşımı üzerine kurulu bir düzen. insanlar çok hızlı bir şekilde aynı seviyeye geliyorlar. özetle yeni mezun iseniz ve türkiye'de iş arıyorsanız, parkyeri en iyi seçimlerden biri olur.&lt;br /&gt;&lt;br /&gt;ancak herkes için hayat o kadar toz parlak değil. parkyeri'nde yetki yok, sorumluluklar var. ve içerideki düzen sorumlulukların paylaşımı üzerine kurulu. insanlara iş seçme özgürlüğünün verildiği bir ortamda, bazen kendi sorumluluğunuzdaki işin ilerlemesi için insan bulamayabiliyorsunuz. etrafta bağıran çağıran bir müdürün olmadığı bir ortamda kişisel disiplinler ön plana çıkıyor. insanların verdikleri sözü tutmama gibi öz disiplin eksiklikleri göstermeleri, zaman zaman canınızı fena halde sıkabiliyor. klasik yönetimsel yaklaşımlarla ilerlemek çok mümkün değil. herkesin herşeyden haberdar olmasına güvenen, yönetimde şeffaflığı hedefleyen bir sisteme en çok zararı yayılan asparagazlar ve asılsız dedikodular veriyor. herkesin herkese istediğini söyleme hakkının tanındığı bir ortamda düşünülmeden yapılan konuşmalar insanların canını sıkmaya ve motivasyon kayıplarının oluşmasına yetiyor. Diğer yandan düzen bu dedikodular üzerinde ayakta duruyor. Sürekli ortama birşeylere geç kalındığına, yeterli çalışılmadığına, müşterinin memnun olmadığına, böyle giderse batacağımıza dair bir stres pompalanıyor, ve pompanın başında da kimse yok, kendiliğinden oluşan stres dolu bir ortam. Örneğin Deloitte tarafından Türkiye'de en hızlı büyüyen şirket olduğumuz sırada bile şirket içinde "ne zaman batacağız acaba" sohbetleri dönüyordu. uygulama geliştirme bölümü sorumluluğum sırasında şirketimize teşekkür için gelen müşterilerle yapılan bir toplantıda duyduklarıma inanamamıştım. o an anladım ki çalışanlar olarak çıtamızı çok yukarılara koyuyoruz, halbuki çalıştığımız sektörde o kadar kötü örnekler var ki, müşterilerin koyduğu çıta bizim kendimizin koyduğunun çok çok aşağısında kalıyor.&lt;br /&gt;&lt;br /&gt;parkyeri'nde iki ana fikir akımı sürekli bir çatışma halindedir: "çalışana daha çok özgürlük diyenler" ve "disiplin olmadan ilerlenemeceğini düşünenler". aslında bunlar tarih boyunca değişik çatılar altında defalarca tartışılmış, insanlık tarihi kadar eski konular. insan özgürlük mü ister? yoksa liderlik mi? kişisel düşüncem, işin insanda bittiği, doğru insanlarla her iki düzende de başarı elde etmek mümkün ki tarih her iki düzenin de başarı hikayeleriyle dolu.&lt;br /&gt;&lt;br /&gt;kendi adıma ben genelde özgürlükçüler tarafında yer aldım. ülkemizdeki liberal ekonomi ve batılılaşma politikaları nedeniyle, özellikle bilgisayar sektöründe, disiplin ve hiyerarşiler üzerine iş modelleri geliştirme mücadelelerini akıntıya karşı yüzmek olarak görüyorum. özgür iradenin herşeyin önüne geçtiği bir çağı yaşıyoruz, bu gerçeği gören ve bundan faydalanan sistemlerle ilerlemek şu an için daha kolay.&lt;br /&gt;&lt;br /&gt;parkyeri kurumsal müşterilere iş yapan ve daha çok butik işler yapan bir şirket. bu da içerideki yapıyı olumsuz bir şekilde etkiliyor malesef. içerideki rahat ortamı geren ve kavga dövüşün koptuğu kısım da hep müşteri kısmı oluyor. benim gözlemlediğim, müşteriye yaklaştıkça disiplinciler tarafına, müşteriden uzaklaştıkça da özgürlükçüler tarafına kayıyorsunuz. parkyeri'nin benim arzu ettiğm yolda devam edebilmesi için son kullanıcıya hitap eden ürünlere kayması şart. kurumsal müşterilere de ürün değil, hizmet ve danışmanlık satar hale gelmek lazım. çünkü ne yazık ki memleketimizde kurumsal müşterinin tek odağı maliyet ve zaman, kalitenin çok bir önemi yok. parkyeri çalışanları genelde kalite odaklı insanlar ve kalitesiz iş yaptıklarında mutsuz olan insanlar. son kullanıcıya gittiğinizde de kaliteden çok ödün vermeniz mümkün değil, yoğun rekabet ve yüksek müşteri beklentisi nedeniyle. açıkcası nasıl yaşar böyle bir firma, hiç bir fikrim yok, olsaydı zaten kendi işimi kurmuştum şimdiye kadar.&lt;br /&gt;&lt;br /&gt;parkyeri'nde tırmanılması gereken kariyer basamakları da yok. parkyeri'ne geldikten bir ay sonra kendinizi proje yönetirken bulabilirsiniz. olay sizin yetkinliklerinizde ve isteklerinizde bitiyor. hiyerarşi olmadığı için hiyerarşiye dayalı bir maaş dağılımı da yok. girerken ne anlaşıyorsunuz odur. 4 ayda bir zam değerlendirmesi yapılır. aylık bir başarım değerlendirme sistemi maaşının yüzde kaçını alacağını belirler. sınırları belirleyen kesin bir kural olmamasına karşın genelde %75-150 arası bir maaş alırsınız. (tarihte %300 maaş alan insanlar da mevcuttur.) başarım değerlendirmenizi bölüm sorumlunuz yapar. çalışanın sosyal ve yasal hakları konusunda son derece duyarlı bir politika mevcuttur.&lt;br /&gt;&lt;br /&gt;sorumluluklar bayrak yarışı gibi ilerler, yorulduğunuz zaman sorumluluklarınızı başkanıza devredebilirsiniz ve bu sorumluluk değişimleri çok doğal olarak karşılanır (bazen insanların küfretmesine de yol açmıyor değil tabi ama sizi sorumluluğunuza devam etmeye zorlayan herhangi bir otorite yok, sadece toplumsal yaptırıma maruz kalabiliyorsunuz). bu ortam, projenin gidişatından genelin haberdar olduğu bir ortam yaratıyor, klasik yönetimlerdeki tek kişiye bağımlılık, adam değiştirememe gibi dertlerin önünü kesiyor.&lt;br /&gt;&lt;br /&gt;son 2 yıl içinde parkyeri'nde kod yazdım, testler ve destek sürecinde görev aldım, "proje" ve "uygulama geliştirme bölümü" sorumluklarım oldu. okuldan mezun olur olmaz ilk tam zamanlı işimde ve ilk 2 yılımda bana bunca tecrübeyi edinmemi sağlayacak bir ortam yarattıkları için parkyeri'nin kurucuları Giray Pultar ve Murat Avcı'ya; parkyerini ayakta tutan, büyük başarılara imza atmasında emeği geçen tüm parkyerlilere ne kadar teşekkür etsem azdır.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-8200162730517489877?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/8200162730517489877/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2007/12/blog-post.html#comment-form' title='1 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/8200162730517489877'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/8200162730517489877'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2007/12/blog-post.html' title='parkyeri&apos;nde çalışmak'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-4330179129197781274</id><published>2007-11-19T14:57:00.001+02:00</published><updated>2007-11-21T09:33:01.079+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='hayat'/><title type='text'>kredi kartımı kaptırdım</title><content type='html'>&lt;div style="float: right; margin-left: 10px; margin-bottom: 10px;"&gt; &lt;a href="http://www.flickr.com/photos/bergerx/1805261073/" title="photo sharing"&gt;&lt;img src="http://farm3.static.flickr.com/2226/1805261073_bc67d9398c_m.jpg" alt="" style="border: 2px solid rgb(0, 0, 0);" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="margin-top: 0px;font-size:0;" &gt;&lt;br /&gt;&lt;a href="http://www.flickr.com/people/bergerx/"&gt;&lt;/a&gt; &lt;/span&gt;&lt;/div&gt;cevahir alışveriş merkezinde yemek yerken, ceketimin cebindeki cüzdanı alıp içinden nüfus cüzdanım ile kredi kartımı alan hırsız, aşağı kattaki teknosa mağazasından 450 YTL'lik alışveriş yapınca cep telefonuma şifresiz işlem yaptığıma dair mesaj geldi. gelen mesajı okuduğum an bu şekilde yansımış fotoğrafa.&lt;br /&gt;&lt;br /&gt;hırsızı gayet sonuç odaklı ve soğukkanlı bulduğumu söylemeliyim. kalabalık (çarprazımda ve karşımda benle konuşan insanların olduğu) bir masada, arkamdaki ceketten cüzdanı alıyor ve kredi kartımla kimliğimi çıkartıp aynı soğukkanlılıkla geri koyuyor.&lt;br /&gt;&lt;br /&gt;aslında fotoğrafta giray abi'ye banka'dan gönderilen reklam mesajlarından yakınıyordum ki sonradan çok şükrettim atılan mesaja.&lt;br /&gt;&lt;br /&gt;olayın hemen ardından panik halinde kredi kartımı kapattırdım ve karakola giderek tutanak tutturdum.&lt;br /&gt;&lt;br /&gt;yapılan alışveriş şifresiz olduğu için yapılan harcama kadar geri ödeme yapıldı 3 hafta içerisinde. sanırım olan teknosa'ya oldu ki bence böyle olması çok da adaletli. normalde teknosa'larda şifresiz alışverişe izin verilmezken bu teknosa'da izin veriliyor oluşu, ve aynı teknosa'da daha önce de benzer olayların yaşandığını öğrenmem "içeride adam mı var?" şüphesini insanın aklına getirmiyor değil.&lt;br /&gt;&lt;br /&gt;gelen uyarı mesajı sayesinde olayın yaşandığı an saniyesi saniyesine bilinirken ve o kadar güvenlik kamerası olan bir alışveriş merkezinde hırsızı yakalayamamak gercekten zor. teknosa, mağazalarındakı kameranın süs olduğunu ve kayıt tutmadığını, cevahir güvenliği de kendi kameralarının döner kameralar olduğundan bu tarz anlık olayları yakalayamadıklarını belirtti. ya güvenlikler gerçekten göstermelik, ya da insanlar fazla uğraşmak istemiyor bu tip vakalarla. banka müşterinin zararını karşıladığından müşteri de çok peşinden koşturmuyor anladığım kadarıyla.&lt;br /&gt;&lt;br /&gt;kimliğimi kaptırdığıma daha çok üzülüyorum şu an, çünkü olaydan bir hafta sonra internet üzerinden berlin'de bir alışveriş yapılmaya çalışılmış, bu da kimliğimin kart ile birlikte satıldığı şüphesini uyandırdı bende.&lt;br /&gt;&lt;br /&gt;bu arada garanti bankası müşteri hizmetlerinden edinemeyeceğiniz bir takım faydalı bilgileri de paylaşayım tecrübe edinmişken, kredi kartınızı kapattırdıktan sonra alışveriş itirazı için bir dilekçe fakslamanızı istiyorlar bir numaraya. bu dilekçeyi elle yazmamanız gerekiyor (ki bu ayrıntıyı sizle paylaşan olmuyor), bir de tutanak göndersem olur mu demiştim ben, olur demişlerdi, buna da inanmayın, bir hafta sonra kendinizi dilekçe yazarken bulursunuz ki dilekçeyi elle yazdığınızdan 1 hafta boyunca hergün dilekçe gönderip bir türlü ekranlarına düşmesini sağlayamazsınız (neyse ki 45 günlük itiraz süresi var.)&lt;br /&gt;&lt;br /&gt;niye bu devirde faksla iş yapılmaya çalışılıyor akıl sır erdiremedim. sürecin başlayıp başlamadığından herhangi bir şekilde haberdar olamıyorsunuz, ancak süreç sonlanınca durum belli oluyor. ve sürekli müşteri hizmetleri "dönücekler size" telkinlerine devam ederek sinirinizi zorluyor, arkadaşım süreç başlamadıysa niye dönsünler bana, soruşturmanın başlayıp başlamadığını öğrenmeye çalışıyorum.&lt;br /&gt;&lt;br /&gt;başıma gelen her hırsızlık olayından sonra hayatıma yeni paranoyalar ekliyorum, evime hırsız girmesi ardından, yatarken cüzdanımı, telefonumu saklar olmuştum, artık cevahir'de yürürken de herkese hırsız gözüyle bakmaya başladım.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-4330179129197781274?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/4330179129197781274/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2007/11/kredi-kartm-hrszl.html#comment-form' title='1 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/4330179129197781274'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/4330179129197781274'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2007/11/kredi-kartm-hrszl.html' title='kredi kartımı kaptırdım'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://farm3.static.flickr.com/2226/1805261073_bc67d9398c_t.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-4292114841334762320</id><published>2007-11-05T10:05:00.000+02:00</published><updated>2007-11-05T10:29:22.642+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='IT'/><category scheme='http://www.blogger.com/atom/ns#' term='bilişim'/><category scheme='http://www.blogger.com/atom/ns#' term='seminer'/><title type='text'>haftasonu ggk seminerleri</title><content type='html'>bu haftasonu &lt;a href="http://www.gencgirisimciler.org/"&gt;ggk&lt;/a&gt;'nın düzenlediği iki seminer vardı:&lt;br /&gt;&lt;br /&gt;* &lt;a href="http://www.gencgirisimciler.org/bpi.asp?cid=573&amp;amp;caid=315"&gt;Kablosuz Haberleşme Ağları (Dr. Melik Şah Ertuğrul)&lt;/a&gt;&lt;br /&gt;* &lt;a href="http://www.gencgirisimciler.org/bpi.asp?cid=574&amp;amp;caid=311"&gt;Kalite mi teknikten, teknik mi kaliteden? (Özay Civelek)&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;ilkine &lt;a href="http://bdgn.net/"&gt;bekir&lt;/a&gt; ve &lt;a href="http://www.raptiye.org/"&gt;alper&lt;/a&gt; ile beraber gittik. kablosuz ağlar konusunda&lt;br /&gt;genel bir fikir edinmek için oldukça faydalı bir seminerdi. kendi&lt;br /&gt;adıma en büyük kazanımım ise &lt;a href="http://www.ubicom.com/"&gt;ubicom&lt;/a&gt; diye bir şirketin varlığından&lt;br /&gt;haberdar olmuş olmamdı. bu tip firmaları duymak çok kolay değil&lt;br /&gt;(muhtemelen genelde devletle iş yaptıklarından), ünleri kulaktan&lt;br /&gt;kulağa yayılıyor. öğrenciliğim sona erdiğinde tam zamanlı işlere&lt;br /&gt;bakınırken algım daha çok haberleşme ve gömülü programlama ile ilgili&lt;br /&gt;işlere açıktı. o zamanlar ubicom'un varlığından haberdar olsaymışım&lt;br /&gt;ilaç gibi gelirmiş. gerçi parkyeri'ne girdiğim için de gayet memnunum.&lt;br /&gt;&lt;br /&gt;ikinci seminere bekir ile beraber gittik. &lt;a href="http://www.developen.com/"&gt;özay bey&lt;/a&gt;'in yaptığı sunum,&lt;br /&gt;sonrasındaki tartışmanın açılış konuşması tadında geçti. seminerin isminden&lt;br /&gt;olsa gerek katılımcı sayısı azdı ancak gelenler de hep sektörde&lt;br /&gt;tecrübe sahibi olan insanlar olduğundan, gerek aralardaki sohbetler&lt;br /&gt;gerekse tartışma sırasındaki paylaşımlar insanı geldiğine pişman&lt;br /&gt;etmedi.&lt;br /&gt;&lt;br /&gt;sektörün ne kadar farklı alanlarında çalışıyor olursak olalım&lt;br /&gt;problemlerin aynı olduğunu gördüm. proje yönetimi hepimizin kanayan&lt;br /&gt;yarası.&lt;br /&gt;&lt;br /&gt;sunum sonrası tartışma'da "türkiye'de nasıl yazılım tutar" sorusuna&lt;br /&gt;cevap aradık. göçebe toplum olduğumuzdan, uzun vadeli düşünenin&lt;br /&gt;olmadığından, düşünmeye niyetin varsa da uzun vade plan yapılabilecek&lt;br /&gt;bir ortam olmadığından dem vuruldu. ben &lt;a href="http://grou.ps/emresokullu.blog/"&gt;emre sokullu&lt;/a&gt;'nun tespitini&lt;br /&gt;gündeme getirerek, henüz türkiye'de basın-girişimci-yatırımcı&lt;br /&gt;üçgeninin oluşmamasının önemli bir engel olduğunu savundum. google,&lt;br /&gt;youtube, facebook'un hükümet politikası doğrultusunda çıkarılan başarı&lt;br /&gt;hikayeleri olduğunu, bizde basında bir mynet'in bir ekşisözlük'ün&lt;br /&gt;değerinin konuşulmadığını dile getirdim.&lt;br /&gt;&lt;br /&gt;kişisel olarak o kadar da umutsuz bakmıyorum aslında, çünkü gördüğüm&lt;br /&gt;kadarıyla düğmeye çoktan basıldı türkiye'de de. fikir patlatma odaklı&lt;br /&gt;şirketler kurulmaya başlandı, kurulmuş şirketler odağını fikir&lt;br /&gt;patlatmaya çevirmeye başladılar. yerli melek yatırımcılar yavaş yavaş&lt;br /&gt;ortaya çıkıyor. televizyonda teknoloji kanalları çoğalıyor. yani&lt;br /&gt;basın-girişimci-yatırımcı üçgeninin oluşmasına o kadar da uzun zaman&lt;br /&gt;yok sanki. yakın zamanda meyvelerini toplamaya başlarız.&lt;br /&gt;&lt;br /&gt;arada programlamaya yeni başlayacak olan bir arkadaş "hangi dili&lt;br /&gt;kullanıyorsunuz? hangi dille başlasam?" gibi sorular soruyordu. RFC ve&lt;br /&gt;W3C okumasını önerdim kendisine. pek önemsemedi, ben de "dilden ziyade&lt;br /&gt;standartlara ve protokollere odaklanmak lazım" diye tavsiyeme devam&lt;br /&gt;ettim. ama yine de çok etkili olabildiğimi sanmıyorum. bekir "birşey&lt;br /&gt;yazmamış adama standart-protokol vs. okutamazsın" diye bir görüşte&lt;br /&gt;bulundu. çok katılmıyorum bekir'e aslında, üniversitelerde hocalar&lt;br /&gt;"C'de şunu yap" diye ödevler vermek yerine, "şu" kısmını varolan&lt;br /&gt;RFC'lere bırakıp, C diye belirtmeseler ve ödevi şu şekilde verseler&lt;br /&gt;"şu RFC'nin şurasının istediğin dili kullanarak uygulamasını yaz",&lt;br /&gt;belki insanların düşünce yapısını değiştirmek mümkün olur. ben kendim&lt;br /&gt;de önce dil öğrenen bir insan olarak, önce standartları ve&lt;br /&gt;protokolleri okusaydım gelişimim daha hızlı olurdu diye düşünüyorum.&lt;br /&gt;&lt;br /&gt;kendi adıma bir diğer kazanım da bir başka web2.0 girişimi olan&lt;br /&gt;&lt;a href="http://bisorusor.com/"&gt;bisorusor.com&lt;/a&gt;'dan haberdar olmuş olmamdı. bisorusor'u forumlardan,&lt;br /&gt;usenetten ve  "yahoo answers"'tan farklı kılan detaylı istatistikler&lt;div&gt;çıkarmaya odaklı olması ve kendi sitenizde yayınlayabileceğiniz&lt;br /&gt;eklentiler sunması. başka bir yerden bire bir kopya olmayan bir web2.0&lt;br /&gt;girişimi olduğu için heyecanlandım, hayırlısı diyorum.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-4292114841334762320?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/4292114841334762320/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2007/11/haftasonu-ggk-seminerleri.html#comment-form' title='2 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/4292114841334762320'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/4292114841334762320'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2007/11/haftasonu-ggk-seminerleri.html' title='haftasonu ggk seminerleri'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-7166132809901266878</id><published>2007-10-27T19:55:00.000+03:00</published><updated>2007-10-27T22:58:03.410+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='parkyeri'/><category scheme='http://www.blogger.com/atom/ns#' term='IT'/><category scheme='http://www.blogger.com/atom/ns#' term='bilgisayar'/><category scheme='http://www.blogger.com/atom/ns#' term='teknoloji'/><category scheme='http://www.blogger.com/atom/ns#' term='web'/><category scheme='http://www.blogger.com/atom/ns#' term='bilişim'/><category scheme='http://www.blogger.com/atom/ns#' term='web3'/><category scheme='http://www.blogger.com/atom/ns#' term='seminer'/><title type='text'>semantic web, mikroformat vs...</title><content type='html'>1 kasim'da &lt;a href="http://www.bilgi.edu.tr/"&gt;bilgi universitesi&lt;/a&gt;nde bir seminer vereceğiz &lt;a href="http://bdgn.net/"&gt;bekir&lt;/a&gt; ile, ne anlatsak ne anlatsak derken sonunda &lt;a href="http://en.wikipedia.org/wiki/Semantic_Web"&gt;semantic web&lt;/a&gt;'e karar kıldık. aslında bizim niyetimiz &lt;a href="http://microformats.org/"&gt;mikroformatlar&lt;/a&gt; bahanesiyle biraz javascriptin nelere kadir olduğundan ve semantic web'ten bahsetmekti, ama &lt;a href="http://www.canb.net/"&gt;can burak&lt;/a&gt;'la da konuştuktan sonra daha önce &lt;a href="http://www.parkyeri.com/"&gt;şirket&lt;/a&gt;te semantic web üzerine bir sunum yapmış olan &lt;a href="http://7konu.wordpress.com/2007/03/23/iphoto-freak/"&gt;ahme&lt;/a&gt;t'i de aramıza alıp seminer konusunu "&lt;a href="http://en.wikipedia.org/wiki/Web_3"&gt;web-3.0&lt;/a&gt;" olarak belirlemeye karar verdik.&lt;br /&gt;&lt;br /&gt;webe sürüm biçme çabası biraz enteresan aslında, özellikle "web-2.0" için baya bir tanım bulmak mümkün internet üzerinde. bu tanımlardan biri de yaşanan blog çılgınlığı ve herkesin bir anda 90'larda dalga geçtiğimiz internet mahir karakterine dönüşme yarışına girişmesi.&lt;br /&gt;&lt;br /&gt;şu an internet üzerinden ulaşılabilen verinin boyutları inanılmaz rakamlara oluştu, hal böyle olunca da veri madenciliğinin yükselen bir değer olması kaçınılmaz. www'in babası Tim Berners Lee'nin hayalinin gerçek olmasına çok uzun bir zaman kalmamış gibi görünüyor:&lt;br /&gt;&lt;blockquote&gt;Web için bir hayalim var, öyle ki bilgisayarlar web üzerindeki bütün veriyi,  içerikler, linkler ve insanlarla bilgisayarlar arasındaki bütün işlemler gibi, analiz etmeye muktedir olacaklar. Henüz ortaya çıkmamış olsa da, Semantic Web ortaya çıktığı zaman ticaretin günlük mekanizmaları, bürokrasi ve günlük yaşamlarımız birbiri ile konuşan makinalar tarafından yürütülecek. İnsanlığın asırlardır konuşup durduğu "akıllı ajanlar" nihayet gerçekleşecek.&lt;/blockquote&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;yakın zamanda internet sitelerindeki veriler hem insanlar hem de makineler tarafından anlaşılabilir hale gelecek, birbirinle konuşabilen internet sayfalarından söz ediyoruz. eposta hesabınız google'da dururken kişi listeniz facebook'ta durabilecek, ve bunun için facebook ile google arasında milyon dolarlık anlaşmalar olması gerekmeyecek sadece herkesin belli standartlara uyması yeterli olacak.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;senaryo çok bilim kurgu olunca hemen bir sürüm numarası vermek şart oluyor, zayıf bir yapay zekası olan bu ağı web-3.0 olarak tanımlıyor pek çok insan.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;semantic web denilince akla ilk gelen anahtar sözcükler rdf (resource definition framework) ve owl (web ontology language). &lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;bir de tantek çelik'in mikroformat mücadelesi var tabi. tantek çelik, bekir'in deyimiyle "arkadaşım bu kadar kasmaya gerek yok, yeni diller filan yaratmaya, xhtml ve css gayet yeterli pek çok şey için".  &lt;a href="http://meyerweb.com/eric/tools/s5/"&gt;s5&lt;/a&gt; için de aynı yaklaşımı görmek mümkün (gerçi s5'te orjinal fikir &lt;a href="http://www.opera.com/support/tutorials/operashow/"&gt;opera&lt;/a&gt;'ya ait)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;gerçekten css sınıflarını tag gibi kullanıp xpath sorgularıyla ilerleyerek gayet hoş ve basit bir çözüm üretmiş oluyoruz semantic web adına. şu an kişi listesi barındıran uygulamanızda mikroformatlara uydugunuz takdirde, kişi bilgilerini &lt;a href="http://en.wikipedia.org/wiki/VCard"&gt;vcard&lt;/a&gt;lara dönüştürmek, elde ettiğiniz vcardları da herhangi bir takvim programına veya herhangi bir cihaza (cep telefonu, pda veya dizüstünüze) aktarmak çok kolay.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;semantic girişimlerin takdir ettiğim bir diğer yönü de programcıyı koda girişmeden veri modellemek zorunda bırakması (normalde olması gerektiği gibi). bu durum, zamanla, tecrübesiz insanların bile gayet profesyonel işler çıkarmasının önünü açacaktır diye düşünüyorum.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;özetle herşey çok güzel olacak. bilgideki konuşmamıza herkesleri bekleriz.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-7166132809901266878?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/7166132809901266878/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2007/10/semantic-web-mikroformat-vs.html#comment-form' title='1 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/7166132809901266878'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/7166132809901266878'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2007/10/semantic-web-mikroformat-vs.html' title='semantic web, mikroformat vs...'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-2179716650256916081</id><published>2007-10-21T16:30:00.000+03:00</published><updated>2007-10-27T21:44:11.337+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='IT'/><category scheme='http://www.blogger.com/atom/ns#' term='bilgisayar'/><category scheme='http://www.blogger.com/atom/ns#' term='teknoloji'/><category scheme='http://www.blogger.com/atom/ns#' term='protokol'/><category scheme='http://www.blogger.com/atom/ns#' term='bilişim'/><category scheme='http://www.blogger.com/atom/ns#' term='seminer'/><title type='text'>SCTP geliyor!</title><content type='html'>&lt;div&gt;bu hafta gerek &lt;a href="http://www.bsdcontr.org/"&gt;BSD konferansı&lt;/a&gt;nda gerekse &lt;a href="http://barcampistanbul.com/"&gt;barcamp istanbul&lt;/a&gt;'da pek çok faydalı seminere katılma imkanı buldum, kendi adıma en büyük kazınımım ise &lt;a href="http://www.sctp.org/"&gt;SCTP&lt;/a&gt;'den (yani "&lt;a href="http://en.wikipedia.org/wiki/Stream_Control_Transmission_Protocol"&gt;Stream Control Transmission Protocol&lt;/a&gt;" ) haberdar olmuş olmam, &lt;a href="http://www.enderunix.org/murat/"&gt;murat balaban&lt;/a&gt;'ın başarılı sunumu sayesinde.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;TCP'nin yerini alacak gibi görünen SCTP birçok sıkıntıya çözüm getiriyor, benim etkilendiğim bir kaç tanesi:&lt;/div&gt;&lt;div&gt;&lt;ul id=""&gt;&lt;li&gt;bir "stream"den birden fazla verinin aktarılması (bir "web" sayfasında her resim için ayrı "stream" açılmasına gerek olmayacak, tüm resimler aynı "stream" üzerinden aktarılabilecek)&lt;/li&gt;&lt;li&gt;kullanıcıyı streami koparmadan başka bir sunucuya aktarmak mümkün olacak.&lt;/li&gt;&lt;li&gt;gerçek zamanlı geri beslemeli iletişime imkan tanıyacak (udp ve tcp özelliklerinin birleşimi, hem paket kaybından haberdar olma hem de paket kaybını önemsemeden devam edebilme şansı olacak, sesli ve görüntülü iletişim için oldukça gerekli.)&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;ajax uygulamalarındaki dertlerden biri aynı anda başlatılan birden fazla ajax isteğinden biri tıkanırsa tarayıcılardaki "aynı anda sadece iki istek" sınırlaması nedeniyle problem olmayan diğer isteklerin önünün tıkanmasıdır. bu durum özellikle "entegrasyon" projelerinde sıkıntı yaratır, bağlandığınız webservislerinden birinin aşağıya inmesi kullanıcıda hizmetin genelinde problem varmış hissi yaratabilir. tabi iyi bir tasarımla ve bir kaç takla ile bu tarz sıkıntıları aşmak mümkün.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;büyük yüklere maruz kalan uygulamalarda "stream"i koparmadan kullanıcıyı başka bir sunucuya aktarabilmek gerçekten önemli bir özellik, bu sunucu problemlerinin kullanıcıya hiç yansımamasını sağlayacaktır yakın bir gelecekte ki şu anda da epey ihtiyacını hissettiğimiz bir özellik.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;şu an için daha çok voip uygulamaları ile uğraşan insanların dikkatini çekmiş gibi görünüyor SCTP. artık ağ sıkıntılarında sesin ve görüntünün gecikmesi gibi kavramlar ortadan kalkacağa benziyor bu yeni protokol sayesinde. uygulamalar hem meydana gelen paket kayıplarından haberdar olacabilecek hem de gerçek zamanlı iletişime devam edebilecekler. yani tele konferanslarda cızırtı da olsa aynı anı paylaşmaya devam edebilecek taraflar. çok geniş katılımlı video destekli sohbet odaları da peydah olacaktır yakın zamanda diye düşünüyorum.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;şu an için &lt;a href="http://www.kame.net/"&gt;kame&lt;/a&gt; projesinin çatısı altında ilerliyor freebsd'deki SCTP çalışmaları, "&lt;a href="http://www.freebsd.org/snapshots/"&gt;snapshot&lt;/a&gt;"lar SCTP desteğini içeriyor.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;neyse duyunca gerçekten heyecanlandım, paylaşmak istedim, belki başkalarının da duymasına vesile olurum.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-2179716650256916081?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/2179716650256916081/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2007/10/sctp-geliyor.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/2179716650256916081'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/2179716650256916081'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2007/10/sctp-geliyor.html' title='SCTP geliyor!'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-1014667284813299390</id><published>2007-10-17T10:55:00.000+03:00</published><updated>2007-10-27T21:45:15.003+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ipucu'/><category scheme='http://www.blogger.com/atom/ns#' term='IT'/><category scheme='http://www.blogger.com/atom/ns#' term='bilgisayar'/><category scheme='http://www.blogger.com/atom/ns#' term='emacs'/><category scheme='http://www.blogger.com/atom/ns#' term='mac'/><category scheme='http://www.blogger.com/atom/ns#' term='bilişim'/><title type='text'>ssh agent - macosx tiger - emacs tramp</title><content type='html'>hayatı ssh üzerinde geçip de linux'tan mac'e geçen insanlarda ortak bir semptom farkettim geçenlerde:  "ssh agentin abuk davranışlarını algılamaya çalışma ve kulağı tersten tutan çözümler üretme mucadelesine girişme".&lt;br /&gt;&lt;br /&gt;şahsen ssh-agenti "her defasında şifre girmek zorunda kalmayım" ya da "bash_completion'ın nimetlerinden faydalanayım" gibi sebeplerle kullanmaktayım. mac'teki problem de ssh-agent'in her defasında şifre sorması idi, şöyle bir kulağını tersten tutan çözümle ilerlemiştim vakti zamanında:&lt;br /&gt;&lt;br /&gt;[] keychain yükledim önce, (&lt;a href="http://darwinports.com/"&gt;darwinports&lt;/a&gt; ve &lt;a href="http://finkproject.org/"&gt;fink&lt;/a&gt; depolarında mevcut)&lt;br /&gt;[] sonra bash_profile'a şu satırları ekledim.&lt;br /&gt;&lt;blockquote&gt;/sw/bin/keychain ~/.ssh/id_dsa&lt;br /&gt;source /Users/ekesken/.keychain/hede.local-sh &gt; /dev/null&lt;/blockquote&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;yukarıdaki hedeyi bilgisayarınızın ismi ile değiştirmek gerek.&lt;br /&gt;&lt;br /&gt;[] /Users/ekesken/.keychain/hede.local-sh betiğinin içeriği de şöyle idi:&lt;br /&gt;&lt;blockquote&gt;SSH_AUTH_SOCK=/tmp/ssh-4JiIxDIab7/agent.235; export SSH_AUTH_SOCK;&lt;br /&gt;SSH_AGENT_PID=237; export SSH_AGENT_PID;&lt;/blockquote&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;yukarıda yaptığım ssh-agentin açtığı socket dosyasını ve pidini sabitleyerek sisteme duyurusunu yapmak. bu şekilde bilgisayarınız açıldıktan sonra ilk terminal açılışında bir defaya mahsus şifre soruluyor sonra da rahat ediyorsunuz.&lt;br /&gt;&lt;br /&gt;bir de emacs'ten tramp ile uzakta çalışmanın hastası bir insan olarak yeri gelmişken belirteyim, carbon emacs'te ssh-agenti kullanabilmeniz için emacs'i çift tık ile çalıştırmak yerine ssh agent icin şifrenizi girdikten sonra terminalden aşağıdaki komut ile (sizin için farklı olma ihtimali var tabi) çalıştırmanız yeterli.&lt;br /&gt;&lt;blockquote&gt;/Applications/Emacs.app/Contents/MacOS/Emacs&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-1014667284813299390?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/1014667284813299390/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2007/10/ssh-agent-macosx-tiger-emacs-tramp.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/1014667284813299390'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/1014667284813299390'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2007/10/ssh-agent-macosx-tiger-emacs-tramp.html' title='ssh agent - macosx tiger - emacs tramp'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-970178899653424509</id><published>2007-10-08T17:48:00.000+03:00</published><updated>2007-10-27T21:46:18.598+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='güvenlik'/><category scheme='http://www.blogger.com/atom/ns#' term='IT'/><category scheme='http://www.blogger.com/atom/ns#' term='bilgisayar'/><category scheme='http://www.blogger.com/atom/ns#' term='web'/><category scheme='http://www.blogger.com/atom/ns#' term='bilişim'/><category scheme='http://www.blogger.com/atom/ns#' term='seminer'/><title type='text'>seminer vaaar, seminer var!</title><content type='html'>bu hafta içinde güvenlikle ilgili bir seminere katıldık parkyeri insanları olarak, açıkçası şu tadta birşeylerin arayışındaydık:&lt;br /&gt;&lt;br /&gt;&lt;embed flashvars="initialTime=2171" style="width:400px; height:326px;" id="VideoPlayback" type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docId=5159636580663884360"&gt;&lt;/embed&gt;&lt;br /&gt;&lt;div&gt;malasef aradığımızı bulamadık, daha çok tbd etkinlikleri tadında geçen, firmaların gövde gösterisini büyük bir sabırla izlemek durumunda kaldığımız bir etkinlik oldu. günün sonunda hiçbir kazanımım olmadı, yeni bir anahtar kelime bile çıkmadı özetle.&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;bu haftasonu da genç girişimciler kulubünün düzenlediği &lt;a href="http://emresokullu.com/"&gt;emre sokullu&lt;/a&gt;'nun konuşmacı olarak katıldığı bir söyleşi vardı, bu sefer keyif alabildiğimiz. benim gördüğüm ve &lt;a href="http://bdgn.net"&gt;bekir&lt;/a&gt;'in geçmiş tecrübelerinden anladığım genç girişimciler kulubü güzel bir ortam kurmuş ve faydalı etkinlikler düzenliyor, bilişim ile ilgili olan etkinliklerini takip etmek gerek.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;söyleşi sırasında türkiye'de bir &lt;a href="http://en.wikipedia.org/wiki/BarCamp"&gt;barcamp&lt;/a&gt; düzenleyelim heyecanı doğdu, umarım devamı gelir, bu arada youtube'de barcamp videolarını dolaşırken "tantek çelik"'e denk geldim:&lt;/div&gt;&lt;br /&gt;&lt;object width="425" height="350"&gt;&lt;param name="movie" value="http://www.youtube.com/v/zF67_nNISPM"&gt;&lt;param name="wmode" value="transparent"&gt;&lt;embed src="http://www.youtube.com/v/zF67_nNISPM" type="application/x-shockwave-flash" wmode="transparent" width="425" height="350"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;div&gt;ve kendisini daha önce duymamış olduğuma inanamadım, kendisi sun, oracle, apple ve microsoft'ta çalışmış, internet explorer'i mac'e port eden insanlardan, w3c'de soz sahibi, technocrati'yi kurmuş bir idol imiş.&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;emre sokullu'nun söyleşi sırasında dile getirdiği önemli bir gerçek var, o da ülkemizde basının bu tip insanlara sahip çıkmaması, idol haline getirmemesi.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;yine söyleşi sayesinde "kenan technologies"'in varlığından haberim olmuş oldu. şirketini 1 milyar dolara satan, MIT'e 100 milyon dolar bahış yapan bir türk varmış, öğrenmiş olduk.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;google'da, sun'da, apple'da çalışan o kadar türk olduğu söyleniyor, bir tanesini tanımamak üzücü gerçekten.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;umarim barcamp gibi etkinlikler bizim memleketimizde de olur birgün, belki bu vesileyle bu insanları tanıma, dünyada neler oluyor bitiyor birinci ağızdan öğrenme fırsatımız olur.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-970178899653424509?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/970178899653424509/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2007/10/seminer-var-seminer-var.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/970178899653424509'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/970178899653424509'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2007/10/seminer-var-seminer-var.html' title='seminer vaaar, seminer var!'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-158045895214635388</id><published>2007-07-28T18:04:00.000+03:00</published><updated>2007-07-28T18:22:47.179+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='kodlama'/><category scheme='http://www.blogger.com/atom/ns#' term='bilgisayar'/><title type='text'>cankurtaran javap</title><content type='html'>genelde masaüstünde geliştirme yapmayan ve hantal idelerden uzak durmaya çalışan bir insan olarak java geliştirmelerinde en iyi arkadaşlarım emacs ve vim.&lt;br /&gt;&lt;br /&gt;iki editorde de idelerin sağladığı otomatik tamamlama atraksiyonlarından faydalanmak mümkün, ancak bazen geliştirme yapacağım ortamda vim-7 bulamamak ya da emacs'in eklentilerini kurmaktan üşenmek gibi sıkıntılarım oluyordu.&lt;br /&gt;&lt;br /&gt;sürekli konsolda takılan bir insan olduğumu göz anında bulundurursak "javap"'ın varlığını çok geç farkettim, o yüzden blogumda da duyurayım, başkalarının farketmesine de vesile olurum belki diye düşündüm. javap şunu yapar:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;$&gt; javap java.util.Properties&lt;br /&gt;Compiled from "Properties.java"&lt;br /&gt;public class java.util.Properties extends java.util.Hashtable{&lt;br /&gt;    protected java.util.Properties defaults;&lt;br /&gt;    public java.util.Properties();&lt;br /&gt;    public java.util.Properties(java.util.Properties);&lt;br /&gt;    public synchronized java.lang.Object setProperty(java.lang.String, java.lang.String);&lt;br /&gt;    public synchronized void load(java.io.InputStream)       throws java.io.IOException;&lt;br /&gt;    public synchronized void save(java.io.OutputStream, java.lang.String);&lt;br /&gt;    public synchronized void store(java.io.OutputStream, java.lang.String)       throws java.io.IOException;&lt;br /&gt;    public synchronized void loadFromXML(java.io.InputStream)       throws java.io.IOException, java.util.InvalidPropertiesFormatException;&lt;br /&gt;    public synchronized void storeToXML(java.io.OutputStream, java.lang.String)       throws java.io.IOException;&lt;br /&gt;    public synchronized void storeToXML(java.io.OutputStream, java.lang.String, java.lang.String)       throws java.io.IOException;&lt;br /&gt;    public java.lang.String getProperty(java.lang.String);&lt;br /&gt;    public java.lang.String getProperty(java.lang.String, java.lang.String);&lt;br /&gt;    public java.util.Enumeration propertyNames();&lt;br /&gt;    public void list(java.io.PrintStream);&lt;br /&gt;    public void list(java.io.PrintWriter);&lt;br /&gt;    static {};&lt;br /&gt;}&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;classpathinizde yer alan herhangi bir sınıfın hangi methodunun hangi değişkenlerle çağrılması gerektiği, ve ne döndürdüğü, sınıfın public değişkenlerinin listesi gibi faydalı bilgileri edinebiliyorsunuz çıktısından.&lt;br /&gt;&lt;br /&gt;ayrıntılı bigi için&lt;br /&gt;&lt;blockquote&gt;$&gt; man javap&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-158045895214635388?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/158045895214635388/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2007/07/cankurtaran-javap.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/158045895214635388'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/158045895214635388'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2007/07/cankurtaran-javap.html' title='cankurtaran javap'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-8596819311830784180</id><published>2007-02-13T20:52:00.000+02:00</published><updated>2007-02-10T02:31:21.266+02:00</updated><title type='text'>istanbul için deb paketi</title><content type='html'>istanbul diye bir paket varmış dünyada:&lt;br /&gt;&lt;br /&gt;ekesken@ahir:~/Movies$ aptitude search istanbul&lt;br /&gt;p   istanbul - Desktop session recorder producing Ogg Theora video&lt;br /&gt;&lt;br /&gt;ne alaka diye bir araştırma yapınca kel alaka olduğunu anlıyorsunuz:&lt;br /&gt;&lt;br /&gt;"Why the name Istanbul?&lt;br /&gt;&lt;br /&gt;I named it Istanbul as a tribute to Liverpool's 5th European Cup triumph in Istanbul on May 25th 2005"&lt;br /&gt;(http://live.gnome.org/Istanbul)&lt;br /&gt;&lt;br /&gt;allah akıl fikir versin&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-8596819311830784180?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/8596819311830784180/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2007/02/istanbul-iin-deb-paketi.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/8596819311830784180'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/8596819311830784180'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2007/02/istanbul-iin-deb-paketi.html' title='istanbul için deb paketi'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-6276352331885622582</id><published>2007-01-25T20:34:00.000+02:00</published><updated>2007-01-26T19:08:51.857+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='hayat'/><category scheme='http://www.blogger.com/atom/ns#' term='parkyeri'/><category scheme='http://www.blogger.com/atom/ns#' term='bilgisayar'/><category scheme='http://www.blogger.com/atom/ns#' term='mac'/><title type='text'>evet yaptım kendime bir macbook aldım!</title><content type='html'>askere gitmeden biraz para tutmuştum elimde, askere gidişim gecikince, askerden sonraya attığım planları biraz öne çekerek kendime bir macbook aldım.&lt;br /&gt;&lt;br /&gt;çevrem pek yakıştıramadı macbook'u bana (beyaz ve 13" de kendisi, bende 103 kilo olmuştum en son, neyse askerde vericez inşallah kiloları)&lt;br /&gt;&lt;br /&gt;bazı bazı yorumlar oldu:&lt;br /&gt;&lt;br /&gt;- ne oldu özgür yazılım?&lt;br /&gt;- steve jobs'un köpeği olmuşsun diyorlar.&lt;br /&gt;- top bilgisayarı oğlum bu!&lt;br /&gt;&lt;br /&gt;günah çıkarmam gerekirse neden macbook diye sorarsanız:&lt;br /&gt;&lt;br /&gt;1 - merak&lt;br /&gt;2 - rahat etmek&lt;br /&gt;3 - "donanımın yazılımla birlikte satılması" hareketine "özgür yazılım" kadar sıcak bakıyorum ve her zaman propogandasını yapabirim.&lt;br /&gt;&lt;br /&gt;açıkcası açık kaynaklı masaüstü ortamlarının esin kaynağı olan bir sistemi görmek ve kullanmak istedim, birçok sağlam geliştiricinin kişisel bilgisayar seçimini mac'tan yana kullanması da biraz aklımı çeldi.&lt;br /&gt;&lt;br /&gt;ikincisi artık biraz rahat etmek istiyordum, gününün yaklaşık 12 saatini bilgisayar başında geçiren bir insanım, ve açıkcası artık kendi söküğümü dikmek istemiyorum, internette fellik fellik sürücü aramak, bu monitorun en uygun horizsynci nedir acaba diye 2 saatimi harcamak, internetlerde chipset aratmak istemiyorum.&lt;br /&gt;&lt;br /&gt;üçüncüsü apple'in işletim sistemini ayrı satmama ve işletim sistemini sabit bir donanım için geliştirme prensiplerini  gerçekten çok takdir ediyorum, umarım ileride beni hayal kırıklığına uğratmazlar. açıkcası bence yazılım ve donanım birbirinden hiçbir zaman ayrılmamalıydı, bir asansör bilgisayarına program yükleme ihtiyacımız ile kişisel bilgisayarımıza program yükleme ihtiyacımız aynı olmalıydı. "ofis uygulaması mı istiyorsun arkadaşım, al sana ofis tak usb'ne calışsın", "al şurda da veritabanı kartı var bir tane" modeli bana daha sağlıklı geliyor.&lt;br /&gt;&lt;br /&gt;sonuç olarak tüm birikmiş paramı sıfırlamasına rağmen macbook'u aldığıma hiç pişman değilim, hatta her geçen gün daha da memnun oluyorum, daha önce hiç mac kullanmamış bir insan olarak diyebilirim ki beklentilerimin çok üzerinde bir kullanıcı tecrübesi yaşatıyor.&lt;br /&gt;&lt;br /&gt;ve en güzeli şu ana kadar ihtiyaç duyup da bulamadığım bir açık kaynaklı yazılım olmadı, hatta apt-get bile kurdum.&lt;br /&gt;&lt;br /&gt;görsel herhangi bir konuda gerçekten üstün performans sergiliyor, video gösterimlerinde çift monitorle bilgisayara 8 takla attırsanız da video akışında en ufak bir tekleme olmuyor ve iki işlemci de %10'u bile görmüyor. çift monitor çalışma konusunda çok başarılı, taktığınız ekranı anında tanıyor ve yaptığınız ayarları her ekran için ayrı ayrı hatırlıyor.&lt;br /&gt;&lt;br /&gt;ancak büyük bir uygulama derliyorsanız macbook'unuzun tüm ihtişamı bir anda son buluyor çünkü 5400 rpmlik diskiniz darboğaz oluşturuyor, derleme sırasında işlemcilerden biri sürekli %100'e vuruyor.&lt;br /&gt;&lt;br /&gt;özetle işlemci-bellek dışına çıkmayan bir iş yapıyorsanız ve yaptığınız iş görüntü ile ilgiliyse macten daha iyi bir performans alabileceğiniz bir sistem olduğunu sanmıyorum.&lt;br /&gt;&lt;br /&gt;tek dert bellek, 512 Mb kesinlikle yeterli değil, normal kullanımda 1 saat içinde boş bellek miktarı 4-5 MB'e iniyor, ancak bellek yönetimi biraz farklı olsa gerek çünkü sizi bezdirecek bir yavaşık yaratmıyor bu durum, birkaç uygulama kapatıp belleği hafifletip sistemin toparlanmasını sağlayabiliyorsunuz.&lt;br /&gt;&lt;br /&gt;en buyuk bellek katilleri tabi ki java uygulamaları, jmeter ve itunes'u aynı anda çalıştırıyorsanız sizin için üzgünüm. java arayüz uygulamalarında tepki hızları kullandığım linux sistemlere göre oldukça iyi, ama bellek dolmuşsa yavaşlamalar başlıyor.&lt;br /&gt;&lt;br /&gt;özetle "evet, steve jobs'un köpeği oldum", ama elinize bir mac alıp 1-2 hafta kullanmadan beni yargılamamanızı öneririm.&lt;br /&gt;&lt;br /&gt;umarım birgün kodunu açarlar ve şu patent saçmalıklarına bir son verirler.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-6276352331885622582?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/6276352331885622582/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2007/01/evet-yaptm-kendime-bir-macbook-aldm.html#comment-form' title='2 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/6276352331885622582'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/6276352331885622582'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2007/01/evet-yaptm-kendime-bir-macbook-aldm.html' title='evet yaptım kendime bir macbook aldım!'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-116275695537063487</id><published>2006-11-05T21:49:00.001+02:00</published><updated>2009-02-03T21:08:26.557+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='parkyeri'/><category scheme='http://www.blogger.com/atom/ns#' term='kodlama'/><title type='text'>java ve synchronized kavramı</title><content type='html'>&lt;span style="font-size:85%;"&gt;&lt;span style="font-family: verdana;"&gt;geçenlerde bir java uygulamasının yük testleri sırasında threadlerin birbiriyle yarış durumunda olmasına bağlı veritabanı hataları alınıyordu, problemi veritabanı tarafında transaction kullanarak ya da kod trafında synchronized blokları kullanarak aşmak mümkündü, (sonradan veritabanında çözmeye karar verdik, çünkü synchronized sadece tek bir kurulum için çözüm üretiyordu, aynı uygulamanın birden fazla makineye kurulması durumunda hata durumu oluşabilirdi)&lt;br /&gt;&lt;br /&gt;bu vesileyle javanın synchronized kavramını da anlama fırsatı buldum.&lt;br /&gt;&lt;br /&gt;synchronized bloklar "instance" bazlı şeylermiş. yani bir metodu ya da değişkeni synchronized yapmanızın pek bir anlamı olmuyor eger bu değişken ya da metodlar static değilse, herbir thread kendi instance'ini yarattığı için synchronizedlığı kendine oluyor, uygulama genelinde değil.&lt;br /&gt;&lt;br /&gt;static değişken ve metod "instance"ları bir defa yaratıldığından ve içinde bulundukları sınıfın tüm instanceları tarafından paylaşıldıklarından uygulama genelinde tek bir synchronized blok elde etmiş oluyorsunuz.&lt;br /&gt;&lt;br /&gt;yalnız bizim için tüm metodu static hale getirmek mümkün değildi, bu nedenle bir static değişken ekledik sınıfa "lock" adıyla, ve kodta gerekli yerleri synchronized blokları içine aldık...&lt;br /&gt;&lt;br /&gt;private static Object lock = new Object();&lt;br /&gt;...&lt;br /&gt;&lt;br /&gt;synchronized (lock) {&lt;br /&gt;...&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;şeklinde. bu şekilde lock nesnesi tüm uygulama için geçerli bir kilit olarak kullanılmış oldu.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-116275695537063487?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/116275695537063487/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2006/11/java-ve-synchronized-kavram.html#comment-form' title='3 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/116275695537063487'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/116275695537063487'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2006/11/java-ve-synchronized-kavram.html' title='java ve synchronized kavramı'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-116271692612025834</id><published>2006-11-05T10:24:00.000+02:00</published><updated>2006-11-05T10:55:26.473+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='parkyeri'/><category scheme='http://www.blogger.com/atom/ns#' term='kodlama'/><title type='text'>java, mysql, transaction, connection pool ve acı</title><content type='html'>&lt;span style="font-size:85%;"&gt;&lt;span style="font-family: verdana;"&gt;yaklaşık 1 yıldır daha önce pek alakamın olmadığı web-veritabanı programcılığı ile uğraşmaktayım ve yoğun acılı bir yıl oldu epey bir deneyim kazandığım.&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;geçenlerde bu acılı günlerden birini daha yaşadım bilgi eksikliğinden kaynaklanan, insanlıkla paylaşayım aynı sıkıntıyı yaşayıp da yolu bu blogdan gecenlere ilaç olsun dedim.&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;herşeyden önce mysql'un öntanımlı tablo yapısı olan myisam transaction desteklemiyormuş, bu gerçeği farketmem 1 günümü aldı, ve o gün boyunca transaction üzerine koda attırdığım sonuçsuz kalan 8 farklı taklaya mal oldu, neden sonuçsuz kaldığını bir türlü anlayamadığım acı gerçeğin farkından önce.&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;(bu arada ek bilgi: sıra bazında okuma yazma kilidi koymak gibi bir amacınız varsa select işleminden sonra ilacınız: "google" ve "SELECT FOR UPDATE")&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;geçenlerde de bir uygulamada yük altında veritabani bağlantıları ile ilgili sıkıntı yaşadık, java uygulama sunucusu (jboss) üzerinde koşan bir java uygulaması idi, "connection pool" yaratmak çözüm olabilir dedim belki sunucu tarafında. bir de kodta singleton olarak değiştirdim veritabanı bağlantı açılmasını. büyük hata yapmışım, durum daha da kötüleşti.&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;singleton ile "connection pool" aynı koltuğa sığmaz imiş, çünkü "connection pool" demek uygulama sunucusu tarafında birsürü açık bağlantının olması demek ve bu açık bağlantılardan birisinin isteyen uygulamaya verilmesi demek, uygulama işini bitirince bağlantıyı havuza geri bırakıyor, böyle bir sistemde singleton yapmak abes oluyor haliyle, olması gereken sık sık bağlantı açıp kapamak, bir bağlantı alıp uygulama yaşam süresi boyunca aynı bağlantıyı kullanmak değil.&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;uygulamada singletonu kaldırıp her veritabanı metodunun başına sonuna bağlantı açma kapama kodunu ekledikten sonra bütün problemler halloldu.&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;aslında veritabanı bağlantısı konusunda singletona hiç girmemek lazım, onu anladım. daha önce veritabanı bağlantısının bir otobüs gibi olduğunu sanıyordum, birden fazla uygulamanın aynı anda aynı bağlantıyı kullanabildiği yanılgısı içindeydim, anladım ki özel araba gibiymiş, sadece tek bir uygulama tarafından kullanılabiliyormuş, uygulamalar sıraya giriyormuş bağlantının başında, dolayısıyla "too many connections" hataları engellenmiş oluyor ama ciddi bir başarım sıkıntısı peydahlanıyor bu sefer.&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-116271692612025834?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/116271692612025834/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2006/11/java-mysql-transaction-connection-pool.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/116271692612025834'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/116271692612025834'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2006/11/java-mysql-transaction-connection-pool.html' title='java, mysql, transaction, connection pool ve acı'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-115982070730575817</id><published>2006-10-02T23:05:00.000+03:00</published><updated>2007-01-26T18:18:29.254+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='hayat'/><title type='text'>şöför bey</title><content type='html'>&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt;yeğen benden önce alacak sanırım ehliyeti.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/3354/987/1600/soforbey.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: left; cursor: pointer;" src="http://photos1.blogger.com/blogger/3354/987/320/soforbey.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-115982070730575817?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/115982070730575817/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2006/10/fr-bey.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/115982070730575817'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/115982070730575817'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2006/10/fr-bey.html' title='şöför bey'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-115909678381369513</id><published>2006-09-24T14:06:00.000+03:00</published><updated>2006-09-24T14:19:44.116+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='parkyeri'/><category scheme='http://www.blogger.com/atom/ns#' term='bilgisayar'/><title type='text'>freenx ile uzaktan x erisimi</title><content type='html'>&lt;span style="font-size:85%;"&gt;&lt;span style="font-family: verdana;"&gt;uzun zamandir blogumla ilgilenemiyorum, bari parkyeri'nde sundugum onerileri buraya kopyala pastalaya devam edeyim de insanlik neler bildigimi rahatca takip edebilsin :)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: verdana;"&gt;oneri epostam:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: verdana;"&gt;---------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: verdana;"&gt;bu hafta sonu evdeki debian-sarge sunucumu bir x sunucusu haline getirme niyetli arastirmalarim freenx adli nomachine diye bir firmanin gpl lisansi ile sundugu bir  uygulama ile sonuclandi.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: verdana;"&gt;arastirmalarim sirasinda freenx icin genelde "en hizlisidir", seklinde yorumlara rastladim, xdmcp baglantilarinin sunucuyu cok yordugunu soyluyor insanlar.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: verdana;"&gt;freenx'te baglanti hizina gore "cache"'leme mekanizmasi mevcut, dolayisiyla dusuk baglanti hizlarinda problemsiz calisabildiklerini iddia eden insanlar var.&lt;br /&gt;&lt;br /&gt;tum trafigi ssl'den gecirmek mumkun, guvenligi arttirmak icin.&lt;br /&gt;&lt;br /&gt;calismasini su sekilde anladim, nx kullanicisi ile uzaktaki makineye ssh baglantisi aciliyor public key kullanarak, bu nx 5001 ve 7001 portlarini aciyor uzakta, iletisim icin, onsecili ayarlarla. ayrica bir de ssh kullanici girisi yapiliyor baglandigimiz kullanici ismi ile, tam olarak anlayamadim ama, neden hem 2 port acilip hem ssh baglantisi yapildigini, belki acilan portlarda basit bir ssh sunucusu kosuyor olabilir, sagda solda gordugum "ssh x forwarding" kullanildigi X erisimi icin.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: verdana;"&gt;linux, windows, macos icin istemci ve sunucu yazilimlar mevcut. istenildiginde profesyonel destek alinabilecek bir firma da var arkasinda.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: verdana;"&gt;ben debian-sarge'ta kurdugum sunucuya linux ve windows istemcilerle baglanarak test etme sansi buldum, gercekten hiz etkileyici. &lt;/span&gt;&lt;span style="font-family: verdana;"&gt;sunucu'da dogrudan calismam ile freenx ile actigim oturumda calismam arasinda bir hiz farki sezmedim, freenx ile oturum actigim makine yavas bir makine olmasina ragmen sunucu hizinda calisabildim, yani terminal makine bir darbogaz yaratmadi.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: verdana;"&gt;ozetle ben etkilendim bu freenx'ten, acaba diyorum bu sekil bir x sunucusu mu kursak (ag6b kapsaminda belki), ortak bir ug ortami icin, maltepe, sisli, cesme, ukrayna, maslak ve evlerimizden baglanabilecegimiz rahatca ve huzurla? &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-115909678381369513?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/115909678381369513/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2006/09/freenx-ile-uzaktan-x-erisimi.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/115909678381369513'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/115909678381369513'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2006/09/freenx-ile-uzaktan-x-erisimi.html' title='freenx ile uzaktan x erisimi'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-114566928525747160</id><published>2006-04-22T04:15:00.000+03:00</published><updated>2006-04-22T04:34:24.843+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='bilgisayar'/><title type='text'>uzaktaki programı yerelindeki X'de çalıştırma</title><content type='html'>&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt;parkyeri'ne gonderdigim bir e-postayi halka arz edesim geldi ...&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;...&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;gecenlerde gecirdigim cinnet sonrasi isletim sistemimi ucurmam uzere&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;aklim basima geldi, and ictim bundan sonra ne gelistirme yapiyorsam&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;sunucu tarafinda yapicam diye (insanin evde sunucusu olmaya gorsun)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;yalniz bitirme odevim malum biraz X gerektiyordu, sunucuya da X&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;kurulmaz simdi diyip biraz arastirma yaptim, sonra farkettim ki&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;kardesinizden cok muhim bir bilgi sakliyormussunuz:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;---------------------------------------------------------------------------------------------&lt;br /&gt;&lt;span style="font-family: verdana;"&gt;192.168.1.17 (X olmayan sunucu, gelistirme ortamim)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: verdana;"&gt;192.168.1.19 (X kurulu istemci, terminal)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: verdana;"&gt;(bu arada once gdm ayarlarindan uzaktan erisime acmak lazim X'i)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;$: xhost + 192.168.1.17 (sunucumdur kendisi)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;192.168.126.17 being added to access control list&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;$: ssh -X 192.168.1.17 DISPLAY=192.168.1.19:0.0 uxterm -bg black -fg white&lt;/span&gt;&lt;br /&gt;---------------------------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;cotenk diye bir uxterm geldi karsima, sonra dedim acaba yer mi,  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;uxterm$ emacs&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;dedim, yedi! konsoldaki mapus hayatinin sona erdigini farkettim bunun&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;uzerine&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;sonra internette ssh -X 192.168.1.17 DISPLAY=192.168.1.19:0.0 firefox&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;benzeri komutlara rastlayinca durumun ciddiyetini anladim.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;simdi yasadigim bu aydinlanma silsilesinden sonra soyle bir soru&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;takildi kafama, eger bu sekilde eclipse ve netbeans calistirmak da&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;mumkun ise, niye faydalanmiyoruz ssh'in nimetlerinden.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;alabildigine guvensiz bir X sunucusu olsun bir yerde, hatta tek&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;kullanicili falan olsun misafir diye, yoldan gecen girebilsin, bu X&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;sunucusundan ssh acalim gelistirme ortamlarina, eclipse ve netbeans&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;muftelalari da ortamlarindan uzak kalmamis olsun. ug ortami tekligi de&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;saglanmis olsun.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;...&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;gerisi o kadar public degil ne yazik ki, bu arada debian'imdan oldum gecenlerde xgl sevdam yuzunden, gurkanin gaziyla stable'dan experimental'e ne varsa koymustum sources.list'i me, 4 kocali gurbuz cok yasamadi, bir muddet X'i acamayinca cok zamansiz bir anda, cinnet gecirdim ve formati bastim, baktim ofiste herkesde ubuntu var, bir de ben kurayim dedim, askere kadar idare eder artik beni, ya da mac alincaya kadar, "aptitude upgrade"'ten sonra restart edeyim mi seklinde sorulari haric de bir yanlisini gormedim ubuntunun henuz, evdeki suncu debian tabi bu arada.  ubuntu dokumanlarini okurken farkettim ki ekran kartim sabikali ekran kartlari arasinda, "aman" dedim, "erhan uzak dur simdi basina is cikarma". gun gelicek benim de xgl'im olacak.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;neyse oyle iste, ben bitirmeme kasmaya devam edeyim, kalin sagicakla.&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-114566928525747160?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/114566928525747160/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2006/04/uzaktaki-program-yerelindeki-xde.html#comment-form' title='1 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/114566928525747160'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/114566928525747160'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2006/04/uzaktaki-program-yerelindeki-xde.html' title='uzaktaki programı yerelindeki X&apos;de çalıştırma'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-114427358205686130</id><published>2006-04-06T00:24:00.000+03:00</published><updated>2006-04-06T00:48:58.566+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='hayat'/><category scheme='http://www.blogger.com/atom/ns#' term='parkyeri'/><title type='text'>parkyerinde çalışmaya başladım</title><content type='html'>&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt;hayatımda önemli bir gelişme oldu, parkyerinde çalışmaya başladım, buradaki son girdi tarihim parkyeri'nde çalışmaya başladığım tarihin bir gün öncesi&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;diyebilirim ki 3 aydır nefes almaya zaman bulamadım, ama durumdan şikayetçi değilim, bu 3 ayda çok şey öğrendim parkyerinde, internet yönüm biraz zayıf kalmış onu farkettim, çok kaptırmışım kendimi C'ye, C++'a. parkyeri saolsun bilmeden yazabildigim diller arasina JavaScript'i ve Java'yı da eklemis bulundum,&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;bu arada parkyerinden kaptığım bazı anahtar kelimeler şu 3 ayda:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;emacs - tramp&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;emacs - macro kullanımı&lt;/span&gt;&lt;br /&gt;&lt;span class="q"  style="font-family:verdana;"&gt;emacs - dec-terminal&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;bash   - &lt;/span&gt;&lt;span class="q"  style="font-family:verdana;"&gt; /etc/bash_completion&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;ssh - L &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;scp -C -o CompressionLevel=9&lt;/span&gt;&lt;br /&gt;&lt;span class="q"  style="font-family:verdana;"&gt;&lt;/span&gt;&lt;span style="font-family:verdana;"&gt;etherape&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;ntop&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;...&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;şeklinde uzuyor liste, parkyeri için tam aradığım şirket diyebilirim, ben kursaydım böyle kurardım, ben bu kadar hayallerimle örtüşücek bir şirket bulabileceğimi sanmıyordum açıkcası, "keske baska bir sey isteseymisim allahtan" bile demiycem, çünkü gerçekleşen dileğimden gayet memnunum.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;yalnız bitirmeyi napıcam bilmiyorum, bu dönem de bitiremezsem bunalıma giricem artık, oturup parkyerinden elemanlarla 2 günde bitirsek mi acaba diye cinlikler dolaşıyor aslında kafamda,&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;bu arada çeşme'de ofis açtık parkyeri'ne gecen hafta, bu yaz gerekli ayarlamaları yapabilirsem çeşme'de olucam, aslında gönül ister ömrün geri kalanında da orda olmak ama kismet bakalim...&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-114427358205686130?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/114427358205686130/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2006/04/parkyerinde-almaya-baladm.html#comment-form' title='2 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/114427358205686130'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/114427358205686130'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2006/04/parkyerinde-almaya-baladm.html' title='parkyerinde çalışmaya başladım'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-113614365531694593</id><published>2006-01-01T20:54:00.000+02:00</published><updated>2006-01-01T21:29:57.793+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='bilgisayar'/><title type='text'>postfix ve fetchmail ayar dosyaları</title><content type='html'>&lt;span style="font-size:85%;"&gt;&lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;(önemli dosyalarımı yedekleme ve ulaşılabilir kılma çabalarımdan biridir, bu posta sürekli güncellenecektir, umarım arada birileri de nasiplenir:)&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;aşağıdaki ayar dosyaları ile ilgili detaylı açıklamaları &lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;a href="http://souptonuts.sourceforge.net/postfix_tutorial.html"&gt;şu&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt; adreste bulabilirsiniz.&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;  &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;-- /etc/postfix/main.cf ----------------------------------------------------&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;queue_directory = /var/spool/postfix&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;command_directory = /usr/sbin&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;daemon_directory = /usr/lib/postfix&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;mail_owner = postfix&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;myhostname = pcerhan.kesken.org&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;unknown_local_recipient_reject_code = 550&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;debug_peer_level = 2&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;debugger_command = xxgdb $daemon_directory/$process_name $process_id &amp; sleep 5 &lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;sendmail_path = /usr/sbin/sendmail&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;newaliases_path = /usr/bin/newaliases&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;mailq_path = /usr/bin/mailq&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;setgid_group = postdrop&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;html_directory = no&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;manpage_directory = /usr/local/man&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;sample_directory = /etc/postfix&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;readme_directory = no&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;smtp_tls_loglevel = 1&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;smtp_tls_per_site = hash:/etc/postfix/tls_per_site&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;smtp_tls_CAfile = /etc/postfix/cacert.pem&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;smtp_tls_cert_file = /etc/postfix/ekesken-cert.pem&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;smtp_tls_key_file = /etc/postfix/ekesken-key.pem&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;smtp_tls_session_cache_database = btree:/var/run/smtp_tls_session_cache&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;smtp_use_tls = yes&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;smtpd_tls_CAfile = /etc/postfix/cacert.pem&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;smtpd_tls_cert_file = /etc/postfix/ekesken-cert.pem&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;smtpd_tls_key_file = /etc/postfix/ekesken-key.pem&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;smtpd_tls_received_header = yes&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;smtpd_tls_session_cache_database = btree:/var/run/smtpd_tls_session_cache&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;smtpd_use_tls = yes&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;tls_random_source = dev:/dev/urandom&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;smtpd_sasl_auth_enable = no&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;smtp_sasl_auth_enable = yes&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;smtpd_sasl_local_domain = $myhostname&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;smtp_sasl_security_options = noanonymous&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;smtp_sasl_tls_security_options = noanonymous&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;smtpd_sasl_application_name = smtpd&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;relayhost = [smtp.gmail.com]&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;disable_dns_lookups = yes&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;smtp_generic_maps = hash:/etc/postfix/generic&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;transport_maps = hash:/etc/postfix/transport&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;-- eof /etc/postfix/main.cf ------------------------------------------------&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;  &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;-- /etc/postfix/master.cf --------------------------------------------------&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;smtp      inet  n       -       -       -       -       smtpd&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;pickup    fifo  n       -       -       60      1       pickup&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;cleanup   unix  n       -       -       -       0       cleanup&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;qmgr      fifo  n       -       -       300     1       qmgr&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;tlsmgr    unix  -       -       -       1000?   1       tlsmgr&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;rewrite   unix  -       -       -       -       -       trivial-rewrite&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;bounce    unix  -       -       -       -       0       bounce&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;defer     unix  -       -       -       -       0       bounce&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;trace     unix  -       -       -       -       0       bounce&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;verify    unix  -       -       -       -       1       verify&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;flush     unix  n       -       -       1000?   0       flush&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;proxymap  unix  -       -       n       -       -       proxymap&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;smtp      unix  -       -       n       -       -       smtp&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;relay     unix  -       -       n       -       -       smtp&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;    -o fallback_relay=&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;showq     unix  n       -       -       -       -       showq&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;error     unix  -       -       -       -       -       error&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;discard   unix  -       -       -       -       -       discard&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;local     unix  -       n       n       -       -       local&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;virtual   unix  -       n       n       -       -       virtual&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;lmtp      unix  -       -       -       -       -       lmtp&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;anvil     unix  -       -       -       -       1       anvil&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;scache      unix    -    -    -    -    1    scache&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;    -o smtp_generic_maps=&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;maildrop  unix  -       n       n       -       -       pipe&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;  flags=DRhu user=vmail argv=/usr/local/bin/maildrop -d ${recipient}&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;uucp      unix  -       n       n       -       -       pipe&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;  flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient)&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;ifmail    unix  -       n       n       -       -       pipe&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;  flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient)&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;bsmtp     unix  -       n       n       -       -       pipe&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;  flags=Fq. user=bsmtp argv=/usr/lib/bsmtp/bsmtp -t$nexthop -f$sender $recipient&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;scalemail-backend unix    -    n    n    -    2    pipe&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;  flags=R user=scalemail argv=/usr/lib/scalemail/bin/scalemail-store ${nexthop} ${user} ${extension}&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;mailman   unix  -       -       n       -       -       pipe&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;  flags=FR user=list argv=/usr/lib/mailman/bin/postfix-to-mailman.py&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;  ${nexthop} ${user}&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;-- eof /etc/postfix/master.cf ----------------------------------------------&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;  &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;-- /etc/postfix/generic ----------------------------------------------------&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;erhan[at]pcerhan.kesken.org         erhankesken[at]gmail.com&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;-- eof /etc/postfix/generic ------------------------------------------------&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;  &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;-- /etc/postfix/sasl_passwd ----------------------------------------------&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;[smtp.gmail.com]              erhankesken@gmail.com:*******&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;-- eof /etc/postfix/sasl_passwd ------------------------------------------&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;  &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;-- /etc/postfix/tls_per_site ---------------------------------------------&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;smtp.gmail.com             MUST&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;pcilhan.kesken.org        MUST&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;pcgurhan.kesken.org    MUST&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;pcesra.kesken.org         MAY&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;-- eof /etc/postfix/tls_per_site ------------------------------------------&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;  &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;-- /etc/postfix/transport ------------------------------------------------&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;gmail.com               smtp:[smtp.gmail.com]&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;pcilhan.kesken.org        relay:[pcilhan.kesken.org]&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;pcesra.kesken.org         relay:[pcesra.kesken.org]&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;-- eof /etc/postfix/transport ---------------------------------------------&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;  &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;-- ~/.fetchmailrc ---------------------------------------------------------&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;set daemon 300&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;set syslog&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;set postmaster chirico&lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;poll pop.gmail.com with proto POP3 and options no dns &lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;user 'erhankesken[at]gmail.com' with pass "*******"  is 'erhan' here options ssl sslcertck  sslcertpath '/home/erhan/.certs' &lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;smtphost localhost    &lt;/span&gt;&lt;span style="font-family: verdana;font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;-- eof ~/.fetchmailtrc ----------------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-113614365531694593?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/113614365531694593/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2006/01/postfix-ve-fetchmail-ayar-dosyalar.html#comment-form' title='2 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/113614365531694593'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/113614365531694593'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2006/01/postfix-ve-fetchmail-ayar-dosyalar.html' title='postfix ve fetchmail ayar dosyaları'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-113614126431351177</id><published>2006-01-01T20:43:00.000+02:00</published><updated>2006-01-01T20:49:56.746+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='bilgisayar'/><title type='text'>.bashrc || .profile icerikleri</title><content type='html'>&lt;span style="font-family: verdana;font-family:verdana;font-size:85%;"  &gt;(önemli dosyalarımı yedekleme ve ulaşılabilir kılma çabalarımdan biridir, bu posta sürekli güncellenecektir, umarım arada birileri de nasiplenir:)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt; &lt;br /&gt; &lt;/span&gt;  &lt;span style="font-family: verdana;font-family:verdana;font-size:85%;"  &gt;-- .bashrc || .profile ----------------------------------------&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt; &lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:85%;"  &gt;export PS1="\[\e]2;\u@\H \w\a\e[32;1m\]&gt;\[\e[0m\] "&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt; &lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:85%;"  &gt;#export PS1="\[\e[33;1m\]\u@\[\e[31;1m\]\H: \[\e[36;1m\]\w&gt;\[\e[0m\] "&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt; &lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:85%;"  &gt;export JAVA_HOME=/usr/lib/sun-j2se5.0-jre/&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt; &lt;br /&gt; &lt;/span&gt;  &lt;span style="font-family: verdana;font-family:verdana;font-size:85%;"  &gt;alias ll='ls -l'&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt; &lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:85%;"  &gt;alias ls='ls --color'&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt; &lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:85%;"  &gt;alias ..='cd ..'&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt; &lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:85%;"  &gt;alias mc='PAGER=less EDITOR=qc mc'&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt; &lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:85%;"  &gt;-- eof .bashrc || .profile ------------------------------------&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-113614126431351177?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/113614126431351177/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2006/01/bashrc-profile-icerikleri.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/113614126431351177'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/113614126431351177'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2006/01/bashrc-profile-icerikleri.html' title='.bashrc || .profile icerikleri'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-113614031685787235</id><published>2006-01-01T20:20:00.000+02:00</published><updated>2006-01-01T20:36:39.390+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='bilgisayar'/><category scheme='http://www.blogger.com/atom/ns#' term='emacs'/><title type='text'>emacs, xemacs, gnus ayar dosyaları</title><content type='html'>&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt;&lt;span style=";font-family:verdana;font-size:100%;"  &gt;(önemli dosyalarımı yedekleme ve ulaşılabilir kılma çabalarımdan biridir, bu posta sürekli güncellenecektir, umarım arada birileri de nasiplenir:)&lt;br /&gt;&lt;br /&gt;-- .emacs --------------------------------------------------------&lt;br /&gt;;;start server for emacsclient&lt;br /&gt;(server-start)&lt;br /&gt;&lt;br /&gt;;;for common settings valid for both emacs and xemacs&lt;br /&gt;(when (file-exists-p "~/.elisp/confcommon.el")&lt;br /&gt;(load-file "~/.elisp/confcommon.el"))&lt;br /&gt;-- eof .emacs -----------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;-- .xemacs/init.el -------------------------------------------------&lt;br /&gt;;;start server for gnuclient&lt;br /&gt;(gnuserv-start)&lt;br /&gt;&lt;br /&gt;;; load settings valid for both emacs and xemacs&lt;br /&gt;(when (file-exists-p "~/.elisp/confcommon.el")&lt;br /&gt;(load-file "~/.elisp/confcommon.el"))&lt;br /&gt;-- eof .xemacs/init.el ---------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;-- .elisp/confcommon.el ------------------------------------------&lt;br /&gt;;;emacs variables&lt;br /&gt;(custom-set-variables&lt;br /&gt;'(browse-url-netscape-program "firefox")&lt;br /&gt;'(browse-url-mozilla-program "firefox")&lt;br /&gt;'(current-language-environment "Turkish")&lt;br /&gt;'(default-input-method "turkish-postfix")&lt;br /&gt;'(global-font-lock-mode t nil (font-lock))&lt;br /&gt;'(load-home-init-file t t)&lt;br /&gt;'(mail-user-agent 'gnus-user-agent)&lt;br /&gt;'(mm-text-html-renderer 'w3m)&lt;br /&gt;'(read-mail-command 'gnus)&lt;br /&gt;'(sendmail-program "/usr/sbin/sendmail" t)&lt;br /&gt;'(gnus-fetch-old-headers t)&lt;br /&gt;'(gnus-auto-expirable-newsgroups ".*")&lt;br /&gt;'(show-paren-mode t)&lt;br /&gt;'(transient-mark-mode t))&lt;br /&gt;(custom-set-faces)&lt;br /&gt;&lt;br /&gt;;;for Turkish language support&lt;br /&gt;(let ((encoding 'utf-8))&lt;br /&gt;; (set-language-environment 'Turkish)&lt;br /&gt;(set-buffer-file-coding-system encoding)&lt;br /&gt;(setq default-buffer-file-coding-system encoding)&lt;br /&gt;(setq default-process-coding-system (cons encoding encoding)))&lt;br /&gt;&lt;br /&gt;;;for our configuration files&lt;br /&gt;(when (file-directory-p "~/.elisp/")&lt;br /&gt;(add-to-list 'load-path "~/.elisp/"))&lt;br /&gt;&lt;br /&gt;;for GNUS&lt;br /&gt;(when (file-exists-p "~/.elisp/confgnus.el")&lt;br /&gt;(load-file "~/.elisp/confgnus.el"))&lt;br /&gt;&lt;br /&gt;;;for fhrist&lt;br /&gt;(require 'bbdb)&lt;br /&gt;(bbdb-initialize 'gnus 'message 'w3)&lt;br /&gt;&lt;br /&gt;;;for better buffer list coming with emacs-cvs&lt;br /&gt;(autoload 'ibuffer "ibuffer" "List buffers." t)&lt;br /&gt;&lt;br /&gt;;;global key bindings&lt;br /&gt;(global-set-key (kbd "C-x C-b") 'ibuffer)&lt;br /&gt;(global-set-key (kbd "C-c C-c") 'comment-region)&lt;br /&gt;&lt;br /&gt;;;for AUCTex&lt;br /&gt;(when (locate-library "tex-site")&lt;br /&gt;(require 'tex-site)&lt;br /&gt;(setq-default&lt;br /&gt; TeX-auto-save  t&lt;br /&gt; TeX-parse-self t)&lt;br /&gt;(setq-default&lt;br /&gt; preview-default-option-list  '("displaymath"&lt;br /&gt;                                "graphics"&lt;br /&gt;                                "textmath"&lt;br /&gt;                                "sections"&lt;br /&gt;                                "footnotes")))&lt;br /&gt;-- eof .elisp/confcommon.el --------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;-- .elisp/confgnus.el ----------------------------------------------&lt;br /&gt;;; for GNUS&lt;br /&gt;(require 'gnus)&lt;br /&gt;(gnus-demon-add-handler 'gnus-group-get-new-news 10 2)&lt;br /&gt;(gnus-demon-init)&lt;br /&gt;&lt;br /&gt;;;my variables&lt;br /&gt;(setq my-gnus-header-list    '("^Organization:"&lt;br /&gt;                             "^Summary:"&lt;br /&gt;                             "^Keywords:"&lt;br /&gt;                             "^Newsgroups:"&lt;br /&gt;                             "^\\(Followup\\|Reply\\)-To:"&lt;br /&gt;                             "^Comments:.*To:"&lt;br /&gt;                             "^\\(X-\\|Apparently-\\)?To:"&lt;br /&gt;                             "^\\(X-\\)?[BFG]?Cc:"&lt;br /&gt;                             "^Date:"&lt;br /&gt;                             "^\\(Resent-\\)?From:"&lt;br /&gt;                             "^Subject:"))&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;;;emacs variables&lt;br /&gt;(custom-set-variables&lt;br /&gt;'(mail-user-agent 'gnus-user-agent)&lt;br /&gt;'(mm-text-html-renderer 'w3m)&lt;br /&gt;'(read-mail-command 'gnus)&lt;br /&gt;'(sendmail-program "/usr/sbin/sendmail" t)&lt;br /&gt;'(message-default-charset 'iso-8859-9)&lt;br /&gt;;;  '(gnus-fetch-old-headers t)&lt;br /&gt;'(gnus-select-method '(nntp "news.individual.net"))&lt;br /&gt;'(gnus-secondary-select-methods '((nntp "news.gmane.org")))&lt;br /&gt;'(gnus-visible-headers        my-gnus-header-list)&lt;br /&gt;'(gnus-sorted-header-list     my-gnus-header-list)&lt;br /&gt;'(gnus-ignored-headers        nil) ; only used if -visible-headers is nil&lt;br /&gt;'(gnus-extra-headers          '(To Newsgroup cc))&lt;br /&gt;'(nnfolder-extra-headers        '(To Newsgroup cc))&lt;br /&gt;'(gnus-treat-display-smileys   nil)&lt;br /&gt;'(gnus-treat-date-local        'head)               ; Date in the local timezone&lt;br /&gt;'(gnus-treat-display-picons    't)                  ; Little piccies&lt;br /&gt;'(gnus-treat-display-face      'head)               ; A sort of customized picon&lt;br /&gt;'(gnus-treat-display-xface     'head)              ; A sort of customized picon&lt;br /&gt;'(mm-text-html-renderer 'w3m-standalone)&lt;br /&gt;'(news-reply-header-hook nil)        ;for supercite&lt;br /&gt;'(nnmail-split-methods            ;mail filters&lt;br /&gt; '(("debian" "^To:.*lists.debian.org.*\\|Cc:.*lists.debian.org.*")&lt;br /&gt;   ("linux_sohbet" "^To:.*linux-sohbet.*\\|^Cc:.*linux-sohbet.*")&lt;br /&gt;   ("itu_linux" "^To:.*itu_linux.*\\|^Cc:.*itu_linux.*")&lt;br /&gt;   ("itu_mail" "^To:.*itu.edu.tr.*\\|^Cc:.*itu.edu.tr.*")&lt;br /&gt;   ("lkd-uye" "^To:.*lkd-uye.*\\|^Cc:.*lkd-uye.*")&lt;br /&gt;   ("newlc" "^From:.*newlc.*")&lt;br /&gt;   ("gliwice" "^To:.*gliwice.*\\|^Cc:.*gliwice*\\")&lt;br /&gt;   ("cslisp" "^To:.*cs-lisp.*\\|Cc:.*cs-lisp.*")&lt;br /&gt;   ("iaeste" "^To:.*iaeste.*\\|^To:.*gtg-istanbul.*\\|^Cc:.*iaeste.*\\|^Cc:.*gtg-istanbul.*")&lt;br /&gt;   ("secretcv" "^From:.*secretcv.*\\|^Reply-To:.*secretcv.*")&lt;br /&gt;   ("kariyer" "^From:.*kariyer.*")&lt;br /&gt;   ("sourceforge" "^From:.*sourceforge.*")&lt;br /&gt;   ("gnupoc" "^To:.*gnupoc.*\\|^Cc:.*gnupoc.*")&lt;br /&gt;   ("amazon" "^From:.*amazon.*")&lt;br /&gt;   ("yemeksepeti" "^From:.*yemeksepeti.*")&lt;br /&gt;   ("system" "^From:.*@pcerhan.*")&lt;br /&gt;   ("other" "")))&lt;br /&gt;'(gnus-auto-expirable-newsgroups ".*"))&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;(add-to-list 'gnus-secondary-select-methods '(nnfolder ""))&lt;br /&gt;(eval-after-load "mail-source"&lt;br /&gt;'(add-to-list 'mail-sources '(file :path&lt;br /&gt;                   "/var/spool/mail/erhan")))&lt;br /&gt;(eval-after-load "mail-source" '(require 'pop3))&lt;br /&gt;&lt;br /&gt;;; Supercite functionality for mail and news quoting&lt;br /&gt;;; I use it especially for GNUS&lt;br /&gt;(autoload 'sc-cite-original     "supercite" "Supercite 3.1" t)&lt;br /&gt;(autoload 'sc-submit-bug-report "supercite" "Supercite 3.1" t)&lt;br /&gt;(add-hook 'mail-citation-hook 'sc-cite-original)&lt;br /&gt;&lt;br /&gt;;;enable topic mode&lt;br /&gt;(add-hook 'gnus-group-mode-hook 'gnus-topic-mode)&lt;br /&gt;-- eof .elisp/confgnus.el ------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-113614031685787235?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/113614031685787235/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2006/01/emacs-xemacs-gnus-ayar-dosyalar.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/113614031685787235'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/113614031685787235'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2006/01/emacs-xemacs-gnus-ayar-dosyalar.html' title='emacs, xemacs, gnus ayar dosyaları'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-113613959526679117</id><published>2006-01-01T20:06:00.000+02:00</published><updated>2006-01-01T20:40:05.316+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='bilgisayar'/><title type='text'>fglrx xorg.conf 1280x800</title><content type='html'>&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt;&lt;span style="font-family: verdana;font-family:verdana;font-size:100%;"  &gt;(önemli dosyalarımı yedekleme ve ulaşılabilir kılma çabalarımdan biridir, bu posta sürekli güncellenecektir, umarım arada birileri de nasiplenir:)&lt;br /&gt;&lt;br /&gt;-- xorg.conf ----------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;Section "dri"&lt;br /&gt;  Mode 0666&lt;br /&gt;EndSection&lt;br /&gt;&lt;br /&gt;Section "Module"&lt;br /&gt;  Load        "dbe"      # Double buffer extension&lt;br /&gt;  SubSection  "extmod"&lt;br /&gt;      Option    "omit xfree86-dga"   # don't initialise the DGA extension&lt;br /&gt;  EndSubSection&lt;br /&gt;  Load        "type1"&lt;br /&gt;  Load        "freetype"&lt;br /&gt;  Load        "glx"   # libglx.a&lt;br /&gt;  Load        "dri"   # libdri.a&lt;br /&gt;EndSection&lt;br /&gt;&lt;br /&gt;Section "Files"&lt;br /&gt;  RgbPath    "/usr/X11R6/lib/X11/rgb"&lt;br /&gt;  FontPath   "/usr/X11R6/lib/X11/fonts/misc/"&lt;br /&gt;  FontPath   "/usr/X11R6/lib/X11/fonts/75dpi/:unscaled"&lt;br /&gt;  FontPath   "/usr/X11R6/lib/X11/fonts/100dpi/:unscaled"&lt;br /&gt;  FontPath   "/usr/X11R6/lib/X11/fonts/Type1/"&lt;br /&gt;  FontPath   "/usr/X11R6/lib/X11/fonts/75dpi/"&lt;br /&gt;  FontPath   "/usr/X11R6/lib/X11/fonts/100dpi/"&lt;br /&gt;EndSection&lt;br /&gt;&lt;br /&gt;Section "ServerFlags"&lt;br /&gt;EndSection&lt;br /&gt;&lt;br /&gt;Section "InputDevice"&lt;br /&gt;  Identifier    "Keyboard1"&lt;br /&gt;  Driver    "kbd"&lt;br /&gt;  Option "AutoRepeat" "500 30"&lt;br /&gt;  Option "XkbRules"    "xfree86"&lt;br /&gt;  Option "XkbModel"    "pc101"&lt;br /&gt;  Option "XkbLayout"    "us"&lt;br /&gt;EndSection&lt;br /&gt;&lt;br /&gt;Section "InputDevice"&lt;br /&gt;  Identifier  "Mouse0"&lt;br /&gt;  Driver      "synaptics"&lt;br /&gt;  Option        "Device" "/dev/input/mice"&lt;br /&gt;  Option        "Protocol" "IMPS/2"&lt;br /&gt;  Option        "LeftEdge" "1700"&lt;br /&gt;  Option        "RightEdge" "5300"&lt;br /&gt;  Option        "TopEdge" "1700"&lt;br /&gt;  Option        "BottomEdge" "4200"&lt;br /&gt;  Option        "FingerLow" "25"&lt;br /&gt;  Option        "FingerHigh" "30"&lt;br /&gt;  Option        "MaxTapTime" "180"&lt;br /&gt;  Option        "MaxTapMove" "220"&lt;br /&gt;  Option        "VertScrollDelta" "100"&lt;br /&gt;  Option        "MinSpeed" "0.06"&lt;br /&gt;  Option        "MaxSpeed" "0.12"&lt;br /&gt;  Option        "AccelFactor" "0.0010"&lt;br /&gt;  Option        "SHMConfig" "on"&lt;br /&gt;  Option        "Emulate3Buttons" "yes"&lt;br /&gt;  Option        "RTCornerButton"  "0"&lt;br /&gt;  Option        "RBCornerButton"  "0"&lt;br /&gt;  Option        "LTCornerButton"  "0"&lt;br /&gt;  Option        "LBCornerButton"  "0"&lt;br /&gt;  Option        "ZAxisMapping" "4 5"&lt;br /&gt;EndSection&lt;br /&gt;&lt;br /&gt;Section "InputDevice"&lt;br /&gt;  Identifier  "Mouse1"&lt;br /&gt;  Driver      "mouse"&lt;br /&gt;  Option        "Protocol" "IMPS/2"&lt;br /&gt;  Option        "Device" "/dev/input/mice"&lt;br /&gt;  Option        "ZAxisMapping" "4 5"&lt;br /&gt;EndSection&lt;br /&gt;&lt;br /&gt;Section "Monitor"&lt;br /&gt;  Identifier  "Monitor0"&lt;br /&gt;EndSection&lt;br /&gt;&lt;br /&gt;Section "Device"&lt;br /&gt;  Identifier  "Standard VGA"&lt;br /&gt;  VendorName  "Unknown"&lt;br /&gt;  BoardName   "Unknown"&lt;br /&gt;  Driver      "vga"&lt;br /&gt;EndSection&lt;br /&gt;&lt;br /&gt;Section "Device"&lt;br /&gt;  Identifier                          "ATI Graphics Adapter"&lt;br /&gt;  Driver                              "fglrx"&lt;br /&gt;  Option "no_accel"                   "no"&lt;br /&gt;  Option "no_dri"                     "no"&lt;br /&gt;  Option "mtrr"                       "off"&lt;br /&gt;  Option "DesktopSetup"               "(null)"&lt;br /&gt;  Option "ScreenOverlap"              "0"&lt;br /&gt;  Option "GammaCorrectionI"           "0x00000000"&lt;br /&gt;  Option "GammaCorrectionII"          "0x00000000"&lt;br /&gt;  Option "Capabilities"               "0x00000000"&lt;br /&gt;  Option "CapabilitiesEx"             "0x00000000"&lt;br /&gt;  Option "VideoOverlay"               "on"&lt;br /&gt;  Option "OpenGLOverlay"              "off"&lt;br /&gt;  Option "CenterMode"                 "off"&lt;br /&gt;  Option "PseudoColorVisuals"         "off"&lt;br /&gt;  Option "Stereo"                     "off"&lt;br /&gt;  Option "StereoSyncEnable"           "1"&lt;br /&gt;  Option "FSAAEnable"                 "no"&lt;br /&gt;  Option "FSAAScale"                  "1"&lt;br /&gt;  Option "FSAADisableGamma"           "no"&lt;br /&gt;  Option "FSAACustomizeMSPos"         "no"&lt;br /&gt;  Option "FSAAMSPosX0"                "0.000000"&lt;br /&gt;  Option "FSAAMSPosY0"                "0.000000"&lt;br /&gt;  Option "FSAAMSPosX1"                "0.000000"&lt;br /&gt;  Option "FSAAMSPosY1"                "0.000000"&lt;br /&gt;  Option "FSAAMSPosX2"                "0.000000"&lt;br /&gt;  Option "FSAAMSPosY2"                "0.000000"&lt;br /&gt;  Option "FSAAMSPosX3"                "0.000000"&lt;br /&gt;  Option "FSAAMSPosY3"                "0.000000"&lt;br /&gt;  Option "FSAAMSPosX4"                "0.000000"&lt;br /&gt;  Option "FSAAMSPosY4"                "0.000000"&lt;br /&gt;  Option "FSAAMSPosX5"                "0.000000"&lt;br /&gt;  Option "FSAAMSPosY5"                "0.000000"&lt;br /&gt;  Option "UseFastTLS"                 "0"&lt;br /&gt;  Option "BlockSignalsOnLock"         "on"&lt;br /&gt;  Option "UseInternalAGPGART"         "yes"&lt;br /&gt;  Option "ForceGenericCPU"            "no"&lt;br /&gt;  BusID "PCI:1:0:0"    # vendor=1002, device=4c66&lt;br /&gt;  Screen 0&lt;br /&gt;EndSection&lt;br /&gt;&lt;br /&gt;Section "Screen"&lt;br /&gt;  Identifier  "Screen0"&lt;br /&gt;  Device      "ATI Graphics Adapter"&lt;br /&gt;  Monitor     "Monitor0"&lt;br /&gt;  DefaultDepth 24&lt;br /&gt;  Subsection "Display"&lt;br /&gt;      Depth       24&lt;br /&gt;      Modes       "1280x800" "1024x768" "800x600" "640x480"&lt;br /&gt;      ViewPort    0 0  # initial origin if mode is smaller than desktop&lt;br /&gt;  EndSubsection&lt;br /&gt;EndSection&lt;br /&gt;&lt;br /&gt;Section "ServerLayout"&lt;br /&gt;  Screen "Screen0"&lt;br /&gt;  InputDevice "Mouse0" "CorePointer"&lt;br /&gt;  InputDevice "Mouse1" "CorePointer"&lt;br /&gt;  InputDevice "Keyboard1" "CoreKeyboard"&lt;br /&gt;EndSection&lt;br /&gt;&lt;br /&gt;-- eof xorg.conf ----------------------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-113613959526679117?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/113613959526679117/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2006/01/fglrx-xorgconf-1280x800.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/113613959526679117'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/113613959526679117'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2006/01/fglrx-xorgconf-1280x800.html' title='fglrx xorg.conf 1280x800'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-113612960317055116</id><published>2006-01-01T17:32:00.000+02:00</published><updated>2006-01-01T20:06:26.170+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='bilgisayar'/><category scheme='http://www.blogger.com/atom/ns#' term='emacs'/><title type='text'>gnuclient ve emacsclient için bash betikleri</title><content type='html'>&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt;(önemli dosyalarımı yedekleme ve ulaşılabilir kılma çabalarımdan biridir, bu posta sürekli güncellenecektir, umarım arada birileri de nasiplenir:)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;bu betik ile gnuserv çalışır durumda değilse yeni bir xemacs açılacaktır, açıksa açık olan xemacs'te dosya açılır, " alias mc='EDITOR=qc mc' " kısaltması ile mc çok daha anlamlı olacaktır xemacs kullanıcıları için.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;-- qc ------------------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;File Edit Options Buffers Tools Insert Help                                     &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;#!/bin/bash                                                                     &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;cmd=""&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;for file in $@ ; do&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;    if [[ ${file:0:1} != "/" ]]; then file="$PWD/$file"; fi&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;    cmd="$cmd (find-file \"$file\")";&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;done&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;if [[ -z "$cmd" ]]; then&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;    cmd="(new-frame)"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;fi&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;gnuclient -batch -eval "$cmd"  &gt; /dev/null 2&gt; /dev/null&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;if (( $? )); then&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;     xemacs $* &amp;amp;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;fi-- eof qc --------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;-- ec ------------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;#!/bin/bash&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;emacsclient -a emacs "$@"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;-- eof ec --------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-113612960317055116?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/113612960317055116/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2006/01/gnuclient-ve-emacsclient-iin-bash.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/113612960317055116'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/113612960317055116'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2006/01/gnuclient-ve-emacsclient-iin-bash.html' title='gnuclient ve emacsclient için bash betikleri'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-113531561540725054</id><published>2005-12-23T07:06:00.000+02:00</published><updated>2006-01-01T17:01:19.310+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='bilgisayar'/><category scheme='http://www.blogger.com/atom/ns#' term='emacs'/><title type='text'>xemacs, latex, utf-8 türkçe</title><content type='html'>&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt;xemacs 21.4, tetex paketleri için de 2.x.x sürümündeyseniz ve benim gibi sizinde türkçe karakter probleminiz varsa, şahsen xemacs'inizi 21.5 sürümüne, tetex paketlerinizi de 3.x.x sürümüne yükseltmenizi tavsiye ederim, benim acılarım bu şekilde sona erdi.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;işin garibi, özellikle xemacs için türkçe karakter basılınca saçma karakterlerin çıkması problemi için internette çok arandım ancak kimse konuyla ilgili ağlamamıştı listelerde, sanırım bu benim kişisel problemimdi, dediğim gibi mule destekli 21.5 derleyince problem çözüldü.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;utf-8 desteği de tetex'in 3.0.1 sürümünden itibaren geliyor sanırım, yani şu an debian testing depolarında bulunan xemacs ve tetex sürümleri türkçe desteği içermiyor, unstable depolarından uygun sürümleri temin edebilirsiniz.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;yine latexi ilk elime aldığımda çok arandığım bir bilgi olduğu için yazayım&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;latex'te utf-8 ile türkçe yazabilmeniz için latex kodunun başında '\usepackage' ile gerekli paketleri şu şekilde belirtmelisiniz.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;\documentclass{article}&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;...&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;\usepackage[utf8]{inputenc}&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;\usepackage[turkish]{babel}&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;...&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;\begin{document}&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;...&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;Bu arada değinmeden edemeyeceğim, latex'le çalışmak gerçekten haz veriyor insana, emacs bağımlılığım başladıktan sonra en büyük sıkıntım bir belge filan hazırlama gerektiğinde, openoffice kullanmaya çalışırken, emacs kısayolları alışkanlıklarımın bana zor anlar yaşatmasıydı. Çözüm olarak önce emacs ile düz bir metin yazıyordum, daha sonra metni openoffice'e kopyalayarak şekil şemal veriyordum.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;latex tam anlamıyla derdime derman oldu, auctex ile birlikte artık belge yazarken de emacs'imden ayrılmıyorum. hem de openoffice'ten çok daha hızlı, ve dertsiz bir şekilde yazıyorum yazıcağımı. herkeslere tavsiye ederim, büyük rahatlık.&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-113531561540725054?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/113531561540725054/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2005/12/xemacs-latex-utf-8-trke.html#comment-form' title='5 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/113531561540725054'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/113531561540725054'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2005/12/xemacs-latex-utf-8-trke.html' title='xemacs, latex, utf-8 türkçe'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-113531080888481228</id><published>2005-12-23T05:53:00.001+02:00</published><updated>2009-07-03T10:37:42.146+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='bilgisayar'/><title type='text'>klavyede dil değiştirmenin en kolay yolu</title><content type='html'>&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt;setxkbmap tr&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;setxkbmap us&lt;br /&gt;&lt;br /&gt;xwindow kullanan her sistem için geçerlidir.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;bunu yazayım dedim buraya, google'da dolaşan linux'a yeni arkadaşlara faydası olur diye, çünkü ben çok acı çektim bu komudun varlığınin farkina varıncaya kadar, &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;önceleri ingilizce klavyemi türkçe olarak kullanmaya çalışıyordum, pipe '|' gibi olmazsa olmaz bir karakterin yoksunluğu yüzünden iki de bir ingilizce klavyeye geçmek zorunda kalıyordum ki hatırlarım Suse kullanırken bunun için Yast falan açardım, neyse daha sonra o problemi xmodmap ile aştım.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;ancak ingilizce klavyenin program yazarken, ve bash üzerinde kolaylık sağladığına kanaat getirerek ingilizce klavye kullanma kararı aldım, bu sefer her türkçe karakter kullanmam gerektiğinde meşakatli yollarla klavye düzenini değiştiriyordum.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;daha sonra 'setxkbmap' komudunun farkına vardım, bir de &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;shift+control+t  =&gt; setxkbmap tr&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;shift+control+us  =&gt; setxkbmap us&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;kısayollarını tanımlayınca masaüstü ortamında klavye değişimi problem olmaktan çıktı.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-113531080888481228?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/113531080888481228/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2005/12/klavyede-dil-deitirmenin-en-kolay-yolu.html#comment-form' title='2 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/113531080888481228'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/113531080888481228'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2005/12/klavyede-dil-deitirmenin-en-kolay-yolu.html' title='klavyede dil değiştirmenin en kolay yolu'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-113530985744621822</id><published>2005-12-23T05:50:00.000+02:00</published><updated>2005-12-25T05:47:34.303+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='debian'/><category scheme='http://www.blogger.com/atom/ns#' term='bilgisayar'/><title type='text'>ilk gözağrımın hazin sonu</title><content type='html'>&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt;aklımda "bilgisayarı değiştirince sistemi nasıl klonlucam?" gibi sorular dolanırken, 2 gün önce yaptığım büyük bir salaklık sonucu (e2fck'i mount edilmiş disk(hem de /) üzerinde çalıştırmak gibi ) sistemimi kaybettim. ömrüm boyunca bir debianim olucak sistemden sisteme benimle gelecek gibi bir hayalim vardi, boş çıktı.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;neyse önemli veriler zaten '/data' diye ayrı bir bölümdeydi, asıl can yakan kaybettiğim ayar dosyaları şu anda, özellikle emacs ile ilgili olanlar, ama dersimi aldım, ev dizinimi de '/data' 'ya aldım artık, ve bundan sonra ne kadar ayar dosyam varsa svn'de tutucam, ve cd'ye yedekleme şart onu farkettim, çünkü gerçekten çok zamansız kaybedebiliyor insan sistemini.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;bitirmemi yetiştirmeye çalışıyorum şu sıralar, onda da tatmin edici bir sonuç alamadım henüz, o canımı sıkıyor zaten, neyse raporu tamamlayım, hocayla konuşup önümüzdeki döneme uzatmaya çalışıcam, böyle vermek hiç içime sinmiyor, &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;genel bir boktanlık ve tatminsizlik hissiyatı içerisindeyim şu sıralar, doğru düzgün bir iş bulsam iyi olucak sanırım, biraz kendime gelicem, birşey başarasım var çok fena,&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;bu arada sistemi kurarken gerekli olan tüm ayar dosyalarını buraya da yapıştırsam fena olmayacak sanırım, önceden yapıştırdıklarım çok faydalı oldu, yapıştırmadıklarıma çok hayıflandım, &lt;/span&gt;&lt;span style="font-family:verdana;"&gt;kime ne kadar yarari oluyor burada yazdiklarim bilmiyorum ama en azından bana faydasi oldu bu talihsiz durumda :)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-113530985744621822?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/113530985744621822/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2005/12/ilk-gzarmn-hazin-sonu.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/113530985744621822'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/113530985744621822'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2005/12/ilk-gzarmn-hazin-sonu.html' title='ilk gözağrımın hazin sonu'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-113141677138834984</id><published>2005-11-08T04:25:00.000+02:00</published><updated>2005-11-08T04:47:26.310+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='bilgisayar'/><title type='text'>mtrace</title><content type='html'>&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt;az önce çok hayati bir bilgi edindim. &lt;/span&gt;&lt;br /&gt;&lt;a style="font-family: verdana;" href="http://www.gnu.org/software/libc/manual/html_node/Allocation-Debugging.html#Allocation-Debugging"&gt;mtrace&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;mtrace ile bellek yönetiminiz üzerinde hata ayıklama yapabiliyorsunuz. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;çok ama çok faydalı, hemen denedim yazdığım program üzerinde ne kadar geri verilmeyen belleğim var diye, baya utanç verici bir tablo çıktı.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;kısaca mtrace kullanımına değinmem gerekirse&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;$# export MALLOC=~/mtrace_log&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;$# emacs deneme.c&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;-----deneme.c-------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;#include &lt;stdlib.h&gt;&lt;mcheck.h&gt;&lt;/mcheck.h&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;#include &lt;mcheck.h&gt;&lt;stdlib.h&gt;&lt;/stdlib.h&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;int&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;main()&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;    mtrace();&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;    char *a=malloc(256);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;    //free(a);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;    return 0;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;----------------------------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;$# gcc deneme.c -o deneme&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;$# ./deneme&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;$# mtrace deneme mtrace_log&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;bu kadar.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;c'da kod yazıyorum diyorsanız emacs+gdb+mtrace üçlüsü şiddetle tavsiye olunur.&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-113141677138834984?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/113141677138834984/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2005/11/mtrace.html#comment-form' title='1 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/113141677138834984'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/113141677138834984'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2005/11/mtrace.html' title='mtrace'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-113136073592414209</id><published>2005-11-07T12:48:00.000+02:00</published><updated>2005-11-07T12:52:15.940+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='bilgisayar'/><category scheme='http://www.blogger.com/atom/ns#' term='emacs'/><title type='text'>GNUS - nntp ölümcül yavaş</title><content type='html'>&lt;span style="font-size:85%;"&gt;&lt;span style="font-family: verdana;"&gt;GNUS'tan nntp ile haber gruplarını takip ederken, group bufferindan&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;summary bufferine geçme aşamasında ölümcül bir bekleme süresi ile karşılaşıyordum. muhtemelen problemin sebebi headerlerin her defasında baştan çekilmeye çalışılıyor olmasıydı. Problemi Gnus Agent yardımıyla aştım.&lt;/span&gt;&lt;br /&gt;&lt;/span&gt; &lt;pre style="font-family: verdana;"&gt;&lt;span style="font-size:85%;"&gt;oncelikle elinizi&lt;br /&gt;'M-x gnus' tus kombinasyonundan 'M-x gnus-unplugged' a alistirmaniz gerekiyor.&lt;br /&gt;(tercih meselesi tabi)&lt;br /&gt;&lt;br /&gt;daha sonra group bufferindayken ^ diyip server bufferina geciyorsunuz&lt;br /&gt;burada agent cache'a atmak istediginiz sunucularun uzerine gelip&lt;br /&gt;'J a' diyorsunuz&lt;br /&gt;&lt;br /&gt;daha sonra group bufferine geri donup, eger 'unplugged' modda iseniz&lt;br /&gt;'J j' diyerek plugged oluyorsunuz. daha sonra 'J s' diyerek agent'a attiginiz&lt;br /&gt;sunucularda takip ettiginiz ne kadar grup var ise headerleri agent cache'e cekmesini&lt;br /&gt;istiyorsunuz.&lt;br /&gt;&lt;br /&gt;comp.lang.c, comp.lang.lisp, comp.unix.programmer, gmane.lisp.region.turkey, gmane.linux.debian.user.turkish&lt;br /&gt;gruplari icin toplam 246 M cekiyor.&lt;br /&gt;&lt;br /&gt;ama daha sonra huzura eriyorsunuz.&lt;br /&gt;&lt;br /&gt;'J j' diyip unplugged moda gecerek haberleri e-posta tadinda okuyabilirsiniz artik.&lt;br /&gt;&lt;br /&gt;daha sonra plugged moddayken 'J u' ile teker teker, 'J s' ile toptan yeni gonderileri&lt;br /&gt;cekebilirsiniz.&lt;br /&gt;&lt;br /&gt;.gnus.el'e asagidaki satirlari ekledim bi de&lt;br /&gt;--------------------------------------------------------------------------&lt;br /&gt;;;If I read an article while plugged, make them get entered into the Agent&lt;br /&gt;(add-hook 'gnus-select-article-hook 'gnus-agent-fetch-selected-article)&lt;br /&gt;--------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;sanirim bu sekilde plugged unplugged mod gecislerine gerek kalmiyor,&lt;br /&gt;kullandikca cikacak meydana.&lt;/span&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-113136073592414209?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/113136073592414209/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2005/11/gnus-nntp-lmcl-yava.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/113136073592414209'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/113136073592414209'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2005/11/gnus-nntp-lmcl-yava.html' title='GNUS - nntp ölümcül yavaş'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-113102551659536019</id><published>2005-11-03T15:06:00.000+02:00</published><updated>2005-11-03T22:12:22.550+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='bilgisayar'/><title type='text'>USENET kültürü</title><content type='html'>&lt;span style=";font-family:verdana;font-size:85%;"  &gt;&lt;a href="http://ileriseviye.org/blog/wp-trackback.php?p=194"&gt;FZ&lt;/a&gt;'nin bloğunda yer alan &lt;/span&gt;&lt;span style=";font-family:verdana;font-size:85%;"  &gt;ağır ithamlara daha fazla dayanamadım ve neymiş bu USENET dedikleri bir bakayım dedim.&lt;br /&gt;bakmaz olaydım, hayatım daha önce ne kadar anlamsızmış!&lt;br /&gt;posta kutumu ne kadar gereksiz yere doldurmuşum bunca sene, ne acılar çekmişim.&lt;br /&gt;&lt;br /&gt;o kadar gaza geldim ki, açlıktan süründüğüm bir dönemde olmama rağmen kıydım paraya (ya da kredi karti limitime deyim) news.individual.net'e bile kayıt oldum.&lt;br /&gt;eee, artık maymunun gözü açıldı, keser mi groups.google.com, 'GNUS'umdan takip etmem lazım dünyayı!&lt;br /&gt;&lt;br /&gt;özgür yazılım dünyasına kaydırdığımdan beri ayağımı, yaşadığım aydınlanma sürecini kelimelerle izah etmem mümkün değil.&lt;br /&gt;&lt;br /&gt;bak mutlu oldum ben şimdi yine :)&lt;br /&gt;neyse biraz USENET'e takılayım ben!&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-113102551659536019?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://ileriseviye.org/blog/wp-trackback.php?p=194' title='USENET kültürü'/><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/113102551659536019/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2005/11/usenet-kltr.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/113102551659536019'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/113102551659536019'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2005/11/usenet-kltr.html' title='USENET kültürü'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-112756994294762468</id><published>2005-09-24T16:47:00.000+03:00</published><updated>2006-01-01T17:46:17.750+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='bilgisayar'/><category scheme='http://www.blogger.com/atom/ns#' term='emacs'/><title type='text'>emacs'ten gnus ile e-posta gönderme-alma (gmail)</title><content type='html'>&lt;span style=";font-family:verdana;font-size:85%;"  &gt;yaklasık 6 aydır "emacs'ten okucam artık e-postalarımı" şeklinde bir antla&lt;br /&gt;geliyorum eve her akşam ama başka işlere dalıp hep arada kaynatıyorum.&lt;br /&gt;en sonunda herşeyi erteleyip giriştim emacs'e&lt;br /&gt;&lt;br /&gt;sadece e-posta okuma değil diğer işleri de hallettim hazır girişmişken:&lt;br /&gt;&lt;br /&gt;-gnus ile e-posta ve haber okuma&lt;br /&gt;-dired bufferini layığıyla kullanmaya başlama&lt;br /&gt;-ssh ve ftp ile uzak sistemlere erişim&lt;br /&gt;-w3m ile internette gezinme&lt;br /&gt;&lt;br /&gt;bu amaçlarım doğrultusunda kurduğum paketler debian depolarından:&lt;br /&gt;emacs21-bin-common emacs21-common emacs21-nox -&gt; emacs için&lt;br /&gt;gnus -&gt; e-posta istemcisi için&lt;br /&gt;fetcmail -&gt; e-postalari /var/spool/mail/kullanici dosyasına ya da baska bir dosyaya cekmek icin&lt;br /&gt;tramp -&gt; ssh baglantısı için&lt;br /&gt;w3m-el -&gt; internette dolaşma&lt;br /&gt;&lt;br /&gt;E-posta Alma &amp; Gönderme:&lt;br /&gt;bu işlem için vm, rmail ve gnus olmak üzere 3 alternatif vardi.&lt;br /&gt;yaptığım araştırmaların ardından gnus'ta karar kıldım, sanırım&lt;br /&gt;en meşhur olanı da oydu.&lt;br /&gt;&lt;br /&gt;gnus aslında bir haber okuyucusu, eger pine ve mutt gibi bir e-posta&lt;br /&gt;istemcisine alışık iseniz pek tavsiye edilmiyor. vm size daha uygun&lt;br /&gt;olacaktir, sadece e-posta okumak için özelleşmiş ve alışkanlıklarınızla&lt;br /&gt;celişmeyen bir ortam sunuyor vm.&lt;br /&gt;&lt;br /&gt;ama özellikle e-posta gruplarının takibinde, e-postalarınızı haber tadında&lt;br /&gt;okumanın büyük kolaylık olduğunu söylemeliyim.&lt;br /&gt;aynı ortamda hem rss'ten haberlerinizi, hem e-posta sunucusundan postalarınızı&lt;br /&gt;çekiyorsunuz, ve her türlü filtrelemeyi, yönlendirmeyi, gruplamayı bir iki&lt;br /&gt;satır regexp ile kolaylıkla yapabiliyorsunuz.&lt;br /&gt;&lt;br /&gt;gercekten öğrenmek için zaman ayırmaya değiceğini söyleyebilirim.&lt;br /&gt;&lt;br /&gt;bu ~/.gnus.el dosyam:&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;=.gnus.el============================================&lt;br /&gt;&lt;br /&gt;;;read mails fetched by fetchmail to file /var/spool/mail/kullanici&lt;br /&gt;(setq gnus-select-method '(nnnil ""))&lt;br /&gt;(add-to-list 'gnus-secondary-select-methods '(nnfolder ""))&lt;br /&gt;(eval-after-load "mail-source"&lt;br /&gt;'(add-to-list 'mail-sources '(file :path&lt;br /&gt;"/var/spool/mail/kullanici")))&lt;br /&gt;(eval-after-load "mail-source" '(require 'pop3))&lt;br /&gt;&lt;br /&gt;;;send mails using this program&lt;br /&gt;;;see ~/.msmtprc file for details&lt;br /&gt;(setq sendmail-program "/usr/bin/msmtp")&lt;br /&gt;&lt;br /&gt;;;default mode topic-mode&lt;br /&gt;(add-hook 'gnus-group-mode-hook 'gnus-topic-mode)&lt;br /&gt;&lt;br /&gt;;;visible groups&lt;br /&gt;(setq gnus-topic-topology '(("Gnus" visible nil nil) (("misc" visible)) (("News" visible nil nil)) (("Mail" invisible nil nil))))&lt;br /&gt;&lt;br /&gt;;;mail splitting methods, my filters&lt;br /&gt;(setq nnmail-split-methods&lt;br /&gt;'(("debian" "^To:.*debian-user-turkish@lists.debian.org.*")&lt;br /&gt;("linux_sohbet" "^To:.*linux-sohbet@liste.linux.org.tr.*")&lt;br /&gt;("itu_linux" "^To:.*itu_linux@yahoogroups.com\\|^Cc:.*itu_linux@yahoogroups.com")&lt;br /&gt;("itu_mail" "^To:.*kullanici@itu.edu.tr.*\\|^Cc:.*kullanici@itu.edu.tr.*")&lt;br /&gt;("newlc" "^From:.*forum@newlc.com.*")&lt;br /&gt;("gliwice" "^To:.*gliwice_summer_2005@yahoogroups.com.*")&lt;br /&gt;("system" "^From:.*@localhost.*")&lt;br /&gt;("other" "")))&lt;br /&gt;&lt;br /&gt;;;when a new followup arrives in a thread, I see the previous messages from that thread, too.&lt;br /&gt;(setq gnus-fetch-old-headers t)&lt;br /&gt;&lt;br /&gt;;;when and article or mail is read mark it with E(xpirable)&lt;br /&gt;;;to save disk space&lt;br /&gt;(setq gnus-auto-expirable-newsgroups ".*")&lt;br /&gt;&lt;br /&gt;;;the information on the mail template header&lt;br /&gt;(setq gnus-posting-styles&lt;br /&gt;'((".*"&lt;br /&gt;(name "Ad Soyad")&lt;br /&gt;(address "kullanici@gmail.com")&lt;br /&gt;&lt;/span&gt;    &lt;span style="font-weight: bold;"&gt; (reply-to "xxx@yyy.com"))))&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;=(endof).gnus.el=====================================&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;bu da gmail hesabimla e-posta gondermeme yarayan ~/.msmptprc dosyam:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;=.msmptrc=========================================&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;account default&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;  host smtp.gmail.com&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;  from kullanici@gmail.com&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;  port 587&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;  auth on&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;  user kullanici@gmail.com&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;  password *******&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;  tls on&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;  # use this for debugging output&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;  logfile ~/omsmtplog.txt&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;=(endof).msmptprc===================================&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:verdana;font-size:85%;"  &gt;&lt;font&gt;Not: sistemim çöktüğünde farkettim buraya fetchmail ayar dosyasını yapıştırmayı unutmuşum, zaten burada kullanılan yöntem son derece güvensizmiş, şöyle &lt;a href="http://souptonuts.sourceforge.net/postfix_tutorial.html"&gt;faydalı bir makale&lt;/a&gt; buldum, artık gmailimi ssl destekli bir biçimde postfix ile kullanıyorum.&lt;/span&gt;&lt;/span&gt;&lt;font&gt;&lt;font&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-112756994294762468?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/112756994294762468/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2005/09/emacsten-gnus-ile-e-posta-gnderme-alma.html#comment-form' title='1 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/112756994294762468'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/112756994294762468'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2005/09/emacsten-gnus-ile-e-posta-gnderme-alma.html' title='emacs&apos;ten gnus ile e-posta gönderme-alma (gmail)'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-112756962559058563</id><published>2005-09-24T16:42:00.000+03:00</published><updated>2005-09-24T16:47:05.603+03:00</updated><title type='text'>tekrar selamlar</title><content type='html'>&lt;span style="font-size:85%;"&gt;&lt;span style="font-family: verdana;"&gt;uzun bir aradan sonra bloğumu doldurmaya devam ediyorum,&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;1.5 aylık polonya maceram sırasında Adrian Witas'dan çok&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;fazla şey öğrendim. perl'in ne kadar mukaddes bir dil&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;olduğununun farkına vararak mrtg ve snmp ile sistem&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;yönetiminin derinlerine dalma fırsatını yakaladım.&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;bu arada Adrian Witas ismine dikkat, adam cok sağlam,&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;günün birinde ünlü filan olursa bu mesajımı delil olarak&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;kullanacağımdır. inanmazsınız şimdi siz  o zaman elemanı &lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;tanıdığıma.&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-112756962559058563?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/112756962559058563/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2005/09/tekrar-selamlar.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/112756962559058563'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/112756962559058563'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2005/09/tekrar-selamlar.html' title='tekrar selamlar'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-112202002966521600</id><published>2005-07-22T11:09:00.000+03:00</published><updated>2005-07-22T11:13:50.203+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='symbian'/><title type='text'>sıcak sıcak - symbian</title><content type='html'>&lt;span style="font-size:85%;"&gt;&lt;span style="font-family: verdana;"&gt;bugün önemli birşey daha öğrendim:&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;TFileName path = PathInfo::PhoneMemoryRootPath(); //Default                                                                &lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;path.Append( PathInfo::ImagesPath() );&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;daha önce düşünüyordum kara kara, nasıl yapıcaz bu path işini her telefonun farkli, varmış bu işin de çağresi symbian sağolsun.&lt;/span&gt;&lt;br /&gt; &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-112202002966521600?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/112202002966521600/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2005/07/scak-scak-symbian.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/112202002966521600'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/112202002966521600'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2005/07/scak-scak-symbian.html' title='sıcak sıcak - symbian'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-112080671174305725</id><published>2005-07-08T10:10:00.000+03:00</published><updated>2005-07-08T10:11:51.750+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='symbian'/><title type='text'>AMR (Adaptive Multi-Rate)</title><content type='html'>&lt;p style="font-family: verdana;" class="paragraph"&gt;&lt;span style="font-size:85%;"&gt;bir gun birileri amr'i anlamaya calisirsa diye yazayim dedim, biraz hizlandirmis olurum calismasini,&lt;/span&gt;&lt;/p&gt; &lt;p style="font-family: verdana;" class="paragraph"&gt;&lt;span style="font-size:85%;"&gt;amr icin 1 frame = 160 sample = 20 ms&lt;/span&gt;&lt;/p&gt; &lt;p style="font-family: verdana;" class="paragraph"&gt;&lt;span style="font-size:85%;"&gt;frame'in boyutu amr'in kaydedildigi bit-rate'e gore degisir, 4.75 icin 13 byte, 5.15 icin 14 … mesela&lt;/span&gt;&lt;/p&gt; &lt;p style="font-family: verdana;" class="paragraph"&gt;&lt;span style="font-size:85%;"&gt;frame boyutunuz kadar tampon(buffer)lar kullanarak amr dosyasini okuyorsunuz frame frame.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-family: verdana;" class="paragraph"&gt;&lt;span style="font-size:85%;"&gt;frame'i decode ediyorsunuz, pcm formatinda yeni bir frame olusuyor. bu frame'in boyutu 320 byte oluyor. pcmden amr'e cevirirken de 320 bytelik tamponlara okumak gerekiyor dosyayi.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-family: verdana;" class="paragraph"&gt;&lt;span style="font-size:85%;"&gt;320 byte = 2560 bits (1 frame-20ms icin)&lt;/span&gt;&lt;/p&gt; &lt;p style="font-family: verdana;" class="paragraph"&gt;&lt;span style="font-size:85%;"&gt;1 sn = 50 frame = 128000 bits (1 sn icin)&lt;/span&gt;&lt;/p&gt; &lt;p style="font-family: verdana;" class="paragraph"&gt;&lt;span style="font-size:85%;"&gt;sampling rate = 8000Hz -&gt; 128000/8000 = 16 bits(derinligimiz)&lt;/span&gt;&lt;/p&gt; &lt;p style="font-family: verdana;" class="paragraph"&gt;&lt;span style="font-size:85%;"&gt;ozetle her bir ornegimiz 16 bit, 1 sn icin onlardan 8000 tane var, 1 frame'miz 20 ms.&lt;/span&gt;&lt;/p&gt; &lt;span style="font-size:85%;"&gt;&lt;span style="font-family: verdana;"&gt;umarim faydasini gorursunuz&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-112080671174305725?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/112080671174305725/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2005/07/amr-adaptive-multi-rate.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/112080671174305725'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/112080671174305725'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2005/07/amr-adaptive-multi-rate.html' title='AMR (Adaptive Multi-Rate)'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-112054785904667772</id><published>2005-07-05T10:16:00.000+03:00</published><updated>2005-07-05T10:20:01.413+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='symbian'/><title type='text'>önemli kısaltmalar</title><content type='html'>&lt;span style="font-family: verdana;font-size:85%;" &gt;ACELP Algebraic Code Excited Linear Prediction&lt;br /&gt;AMR Adaptive Multi-Rate&lt;br /&gt;AMR-WB Adaptive Multi-Rate Wideband&lt;br /&gt;BFI Bad Frame Indication&lt;br /&gt;CHD Channel Decoder&lt;br /&gt;CHE Channel Encoder&lt;br /&gt;GSM Global System for Mobile communications&lt;br /&gt;ITU-T International Telecommunication Union Telecommunication standardisation sector (former CCITT)&lt;br /&gt;PCM Pulse Code Modulation&lt;br /&gt;PLMN Public Land Mobile Network&lt;br /&gt;PSTN Public Switched Telephone Network&lt;br /&gt;RX Receive&lt;br /&gt;SCR Source Controlled Rate&lt;br /&gt;SPD SPeech Decoder&lt;br /&gt;SPE SPeech Encoder&lt;br /&gt;TC Transcoder&lt;br /&gt;TX Transmit&lt;br /&gt;UE User Equipment (terminal)&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-112054785904667772?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/112054785904667772/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2005/07/nemli-ksaltmalar.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/112054785904667772'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/112054785904667772'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2005/07/nemli-ksaltmalar.html' title='önemli kısaltmalar'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-111872934899967828</id><published>2005-06-14T09:07:00.000+03:00</published><updated>2005-06-14T09:13:08.980+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='symbian'/><title type='text'>telefon ekran boyutları ve sdkları</title><content type='html'>&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt;stajyerimiz aykut akıncı'nın katkılarıyla:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;table style="font-family: verdana;" border="1" cellspacing="0" cols="3" frame="void" rules="groups"&gt;  &lt;colgroup&gt;&lt;col width="178"&gt;&lt;col width="135"&gt;&lt;col width="268"&gt;&lt;/colgroup&gt;  &lt;tbody&gt;   &lt;tr&gt;    &lt;td align="left" height="16" width="178"&gt;&lt;span style="font-size:85%;"&gt;Telefonun adı&lt;/span&gt;&lt;/td&gt;    &lt;td align="left" width="135"&gt;&lt;span style="font-size:85%;"&gt;Ekran Boyutu&lt;/span&gt;&lt;/td&gt;    &lt;td align="left" width="268"&gt;&lt;span style="font-size:85%;"&gt;SDK&lt;/span&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td align="left" height="16"&gt;&lt;span style="font-size:85%;"&gt;Nokia 6600&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;176 x 208&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;Series 60 Developer Platform 2.0&lt;/span&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td align="left" height="16"&gt;&lt;span style="font-size:85%;"&gt;Nokia 7610&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;176 x 208&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;Series 60 2nd Edition, Feature Pack 1&lt;/span&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td align="left" height="16"&gt;&lt;span style="font-size:85%;"&gt;Nokia 6630&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;176 x 208&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;Series 60 2nd Edition, Feature Pack 2&lt;/span&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td align="left" height="16"&gt;&lt;span style="font-size:85%;"&gt;Nokia 6620&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;176 x 208&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;Series 60 2nd Edition, Feature Pack 1&lt;/span&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td align="left" height="16"&gt;&lt;span style="font-size:85%;"&gt;Nokia N90&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;352 x 416,128 x 128&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;Series 60 2nd Edition, Feature Pack 3&lt;/span&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td align="left" height="16"&gt;&lt;span style="font-size:85%;"&gt;Nokia N70&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;176 x 208&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;Series 60 2nd Edition, Feature Pack 3&lt;/span&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td align="left" height="16"&gt;&lt;span style="font-size:85%;"&gt;Nokia N91&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;176 x 208&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;Series 60 3rd Edition&lt;/span&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td align="left" height="16"&gt;&lt;span style="font-size:85%;"&gt;Nokia 6680&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;176 x 208&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;Series 60 2nd Edition, Feature Pack 2&lt;/span&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td align="left" height="16"&gt;&lt;span style="font-size:85%;"&gt;Nokia 6681&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;176 x 208&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;Series 60 2nd Edition, Feature Pack 2&lt;/span&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td align="left" height="16"&gt;&lt;span style="font-size:85%;"&gt;Nokia 6682&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;176 x 208&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;Series 60 2nd Edition, Feature Pack 2&lt;/span&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td align="left" height="16"&gt;&lt;span style="font-size:85%;"&gt;Nokia 3230&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;176 x 208&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;Series 60 2nd Edition, Feature Pack 1&lt;/span&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td align="left" height="16"&gt;&lt;span style="font-size:85%;"&gt;Nokia 6670&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;176 x 208&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;Series 60 2nd Edition, Feature Pack 1&lt;/span&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td align="left" height="16"&gt;&lt;span style="font-size:85%;"&gt;Nokia 6260&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;176 x 208&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;Series 60 2nd Edition, Feature Pack 1&lt;/span&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td align="left" height="16"&gt;&lt;span style="font-size:85%;"&gt;Nokia 6620&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;176 x 208&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;Series 60 2nd Edition, Feature Pack 1&lt;/span&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td align="left" height="16"&gt;&lt;span style="font-size:85%;"&gt;Nokia 3620&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;176 x 208&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;Series 60 Developer Platform 1.0&lt;/span&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td align="left" height="16"&gt;&lt;span style="font-size:85%;"&gt;Nokia 3660&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;176 x 208&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;Series 60 Developer Platform 1.0&lt;/span&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td align="left" height="16"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;   &lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;   &lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;   &lt;/span&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td align="left" height="16"&gt;&lt;span style="font-size:85%;"&gt;Nokia 9300&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;640 x 200,128 x 128&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;Series 80 Developer Platform 2.0&lt;/span&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td align="left" height="16"&gt;&lt;span style="font-size:85%;"&gt;Nokia 9500&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;640 x 200,128 x 128&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;Series 80 Developer Platform 2.0&lt;/span&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td align="left" height="16"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;   &lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;   &lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;   &lt;/span&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td align="left" height="16"&gt;&lt;span style="font-size:85%;"&gt;Sendo X2&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;   &lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;Series 60 1.2&lt;/span&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td align="left" height="16"&gt;&lt;span style="font-size:85%;"&gt;Motorola A1010&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;208x320&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;UIQ 2.1&lt;/span&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td align="left" height="16"&gt;&lt;span style="font-size:85%;"&gt;Arima U300&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;   &lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;UIQ user interface&lt;/span&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td align="left" height="16"&gt;&lt;span style="font-size:85%;"&gt;Nokia 7710&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;640x320&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;Series 90&lt;/span&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td align="left" height="16"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;   &lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;   &lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;   &lt;/span&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td align="left" height="16"&gt;&lt;span style="font-size:85%;"&gt;Nokia N-Gage&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;176 x 208&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;Series 60 Developer Platform 1.0&lt;/span&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td align="left" height="16"&gt;&lt;span style="font-size:85%;"&gt;Nokia N-Gage QD&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;176 x 208&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;Series 60 Developer Platform 1.0&lt;/span&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td align="left" height="16"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;   &lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;   &lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;   &lt;/span&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td align="left" height="16"&gt;&lt;span style="font-size:85%;"&gt;Sony Ericsson P910&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;208 x 320&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;UIQ 2.1&lt;/span&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td align="left" height="16"&gt;&lt;span style="font-size:85%;"&gt;Sony Ericsson P900&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;208 x 320&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;UIQ 2.1&lt;/span&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td align="left" height="16"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;   &lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;   &lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;   &lt;/span&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td align="left" height="16"&gt;&lt;span style="font-size:85%;"&gt;Sony Ericsson P800/P802&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;208 x 320&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;UIQ 2.0&lt;/span&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td align="left" height="16"&gt;&lt;span style="font-size:85%;"&gt;Motorola A920&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;208 x 320&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;UIQ 2.0&lt;/span&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;    &lt;td align="left" height="16"&gt;&lt;span style="font-size:85%;"&gt;BenQ P30&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;208x320&lt;/span&gt;&lt;/td&gt;    &lt;td align="left"&gt;&lt;span style="font-size:85%;"&gt;UIQ 2.0&lt;/span&gt;&lt;/td&gt;   &lt;/tr&gt;  &lt;/tbody&gt; &lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-111872934899967828?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/111872934899967828/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2005/06/telefon-ekran-boyutlar-ve-sdklar.html#comment-form' title='3 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/111872934899967828'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/111872934899967828'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2005/06/telefon-ekran-boyutlar-ve-sdklar.html' title='telefon ekran boyutları ve sdkları'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-111872917884831051</id><published>2005-06-14T09:01:00.000+03:00</published><updated>2005-06-14T09:06:18.853+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='symbian'/><title type='text'>mbm oluşturma</title><content type='html'>&lt;span style="font-size:85%;"&gt;&lt;span style="font-family: verdana;"&gt;stajyerimiz aykut akıncı'nın katkılarıyla:&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;(wind~ icin hazirlandi)&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;bmconv indirildikten sonra açılır. Açıldığı dizinde 8 adet dosya bulunur. Bunların 4 tanesi programı test etmek içindir. test.bat dosyası 6 adet testme dosyasından mdm dosyasını oluşturur. Bu dosya 3 boyut içerir. 1., 3., ve 5. bitapler 16*16 32*32 48*48 boyutlarında görünecek resimleri belirlerken 2., 4., ve 6. bitmapler ise bunların maskeleridir. Maskelerdeki beyaz kısımlar transparan alanları belirler.&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;Kendi mbm dosyamızı hazırlamak için önce bu 6 bitmap dosyasını hazırlayıp bmconv ile aynı dizine koyarız. Bundan sonra test.bat dosyasını editleyip farklı kaydedetmemiz lazım. testme.bat'i notepad'le editlediğimizde bmconv komutundan sonra gelen ilk argüman yeni oluşacak mbm dosyasının adıdır. Daha sonraki 6 argüman ise yukarıda anlattığımız bitmap dosyalarıdır. Bunların isimlerinin önünde /4 gibi renk derinliğini belirleyen karakterler vardır. Bunları değiştirmeden sadece testme isimlerinin yerine kendi bitmaplerimizin isimlerini koyuyoruz. Bundan sonra bat dosyamızı farklı kaydedip çalıştırdığımızda aynı dizinde mbm dosyamız oluşuyor.&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-111872917884831051?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/111872917884831051/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2005/06/mbm-oluturma.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/111872917884831051'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/111872917884831051'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2005/06/mbm-oluturma.html' title='mbm oluşturma'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-111812469178926941</id><published>2005-06-07T08:51:00.000+03:00</published><updated>2005-06-07T09:11:31.796+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='kodlama'/><title type='text'>acı bir zaman kaybı</title><content type='html'>&lt;span style="font-size:85%;"&gt;&lt;span style="font-family: verdana;"&gt;projemin teslim tarihi biraz gecikti, haliyle bu  durum gerginlik yaratıyor üzerimde,&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;yetiştirmek için hafta sonu evdeyken de uğraştım biraz kodla. daha doğrusu kodun düzenlenmesiyle. cep telefonu şirkette olduğu için evden çalışmam pek mümkün olmuyor zaten. &lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;neyse amacım tek bir klasörde olan kodlari, inc src gibi alt kalsörlere ayırmaktı.&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;tabii buna göre makefile'i yeniden düzenlemem gerekti. yaptık düzenlemeleri, kodu hem wind~'ta hem linux'ta derlenebilir hale getirdim bıraktım.&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;sirkete geldim, telefona gönderdim sis'i, ve enteresan bir hata mesajı ile karşılaştım kurmaya çalışırken: "Dosya Bozuk!"&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;ne yazıkki uzun bir süre anlam veremedim ki hiç oyle bir sörem yoktu. sonra farkettim ki haftasonu değişiklik yapmadan önce yedekleme yapmamışım, &lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;iyiden iyiye sinirlenmeye başladım. çok eski çalışan bir halini buldum projenin,&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;onu teker teker yeni kodla eşleştirdim, ve bunu adım adım yaptim ki hata nerde anlayım,&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;bütün günümü alan bu işlem sonunda eski kodu güncellemiş fakat hatayı bulamamıştım, tek bir fark kalmıştı arada, klasörleri ayırmak,&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;ayırınca farkettim ki güncellenen kod da aynı hatayı verdi,&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;daha sonra sis'i oluştururken kullanılan .pkg dosyasından kaynaklandığını farkettim hatanın,&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;dosyaları klasörlere ayırınca, makefile'i group klasörüne atıyordum,&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;ve şu tarz değişiklikler yapıyordum:&lt;/span&gt;&lt;br /&gt; &lt;span style="font-size: 85%; font-family: verdana;"&gt;&lt;br /&gt;&lt;PKGFILES=$(NAME).rsc $(NAME).app $(NAME).aif&lt;br /&gt;&gt;PKGFILES=../res/$(NAME).rsc ../res/$(NAME).app ../res/$(NAME).aif&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;bu da şu şekilde bir .pkg dosyası yaratıyordu:&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;&amp;EN&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;#{"sound"},(0x10005b87),1,0,0&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;"sound.rsc"-"!:\system\apps\sound\&lt;/span&gt;&lt;span style="font-weight: bold; font-family: verdana;"&gt;../res/&lt;/span&gt;&lt;span style="font-family: verdana;"&gt;sound.rsc"&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;"sound.app"-"!:\system\apps\sound\&lt;/span&gt;&lt;span style="font-weight: bold; font-family: verdana;"&gt;../res/&lt;/span&gt;&lt;span style="font-family: verdana;"&gt;sound.app"&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;"sound.aif"-"!:\system\apps\sound\&lt;/span&gt;&lt;span style="font-weight: bold; font-family: verdana;"&gt;../res/&lt;/span&gt;&lt;span style="font-family: verdana;"&gt;sound.aif"&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;ne kadar basit bir problem değil mi? kodu wind~'ta derlenebilir hale getirirken yaptığım değişikliklere kilitlenmem bütün bir günüme ki çok değerli bir günüme mal oldu, ve bu kadar basit bir hatayı yakalayamadım.&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;çıkarılan dersler:&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;    - evde çalışma&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;    - her değişiklikten sonra mutlaka dene&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;    - düzenli yedek al, şu cvs'yi adam gibi kullanmasını öğren&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;&lt;/span&gt;&lt;br /&gt; &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-111812469178926941?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/111812469178926941/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2005/06/ac-bir-zaman-kayb.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/111812469178926941'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/111812469178926941'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2005/06/ac-bir-zaman-kayb.html' title='acı bir zaman kaybı'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-111634363921884702</id><published>2005-05-17T18:09:00.000+03:00</published><updated>2005-05-17T18:27:19.226+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='symbian'/><title type='text'>symbian helloworld makefile sdk2.1</title><content type='html'>&lt;span style="font-size:85%;"&gt;&lt;span style="font-family: verdana;"&gt;en cok sıkıntı çektiğim konu internette makefile bulmaktı, bu yüzden örneklerin&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;makefile'ini yazdıkça yayınlıyacağım:&lt;br /&gt;(daha elimde birikmiş çok örnek var, yavaş yavaş koyucam hepsini)&lt;br /&gt;&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;Helloworld örneği için Makefile:&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;!Derlemeye başlamadan önce &lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;kodu fixrsc.pl'den geçirmiş olmanız,&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;&lt;helloworld.rsg&gt; satırlarını "helloworld.rsg" olarak değiştirmeniz gerekiyor&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt; helloworld.mbm'ini dizinde oluşturmanız,&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;------------------------------------------------------------------------------------------&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;EPOC=/data/symbian/symbian_sdk_series60_21&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;PATH=$(EPOC)/bin:/local/bin:/usr/bin:/bin&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;include $(EPOC)/lib/makerules/eikon&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;INCLUDE= -I$(EPOC)/include \&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;     -I$(EPOC)/include/techview&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;LIBS=    $(EPOCTRGREL)/euser.lib \&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;    $(EPOCTRGREL)/apparc.lib \&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;    $(EPOCTRGREL)/eikcore.lib \&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;    $(EPOCTRGREL)/cone.lib \&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;NAME=helloworld&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;ARCH=series60&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;MODULES=helloworld_main helloworld_application helloworld_document helloworld_appui helloworld_appview&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;MAJOR=1&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;MINOR=0&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;SRC=$(MODULES:%=%.cpp)&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;OBJECTS=$(MODULES:%=%.o)&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;TARGET=$(NAME).app&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;PKGVERS=$(MAJOR),$(MINOR)&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;MAKEDEPEND=/usr/X11R6/bin/makedepend&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;PKGFILES=$(NAME).rsc $(NAME).app $(NAME).aif&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;U1 = 1000007a&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;U2 = 100039ce&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;U3 = 10008ACE&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;CFLAGS = -O -Wall $(INCLUDE) -DUID3=0x$(U3) -D_SERIES60&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;# Following is used for the resource file&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;CPPFLAGS += -D_SERIES60&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;all:$(PKGFILES) $(NAME).sis&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;    mv $(NAME).sis $(NAME)-$(MAJOR).$(MINOR)-$(ARCH).sis&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;$(TARGET):$(OBJECTS)&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;$(NAME).aifspec:&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;    @echo "mbmfile=$(NAME).mbm" &gt; $(NAME).aifspec&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;    @echo "ELangEnglish=$(NAME)" &gt;&gt; $(NAME).aifspec&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;sound.o: $(NAME).rsc&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;clean:&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;    rm -f $(GENERATED) $(NAME).aifspec&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;cleandir:&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;    rm -f *.o&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;    rm -f *~&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;    rm -f *.rsc&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;    rm -f *.rsg&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;    rm -f *.ex*&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;    rm -f *.aif*&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;    rm -f *.pkg&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;    rm -f *.app&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;    rm -f *.sis&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;distclean:clean&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;    rm -f *.orig *~ *.BAK *.bak makefile.new&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;    rm -f config/resource.xml config/resource.h&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;    sed -n '1,/^# DO NOT DELETE/ p' Makefile.series60 &gt; makefile.new&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;    mv makefile.new Makefile.series60&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;ccopy:$(NAME).app&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;    :&gt; /mnt/psion/C:/debug&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;    cp $(NAME).app /mnt/psion/C:/System/Apps/$(NAME)&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;depend:&lt;/span&gt;&lt;br /&gt; &lt;span style="font-family: verdana;"&gt;    $(MAKEDEPEND) -f Makefile.series60 -Y$(EPOC)/include $(CFLAGS) $(SRC)&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;# DO NOT DELETE&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;ý5:q!&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-111634363921884702?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/111634363921884702/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2005/05/symbian-helloworld-makefile-sdk21.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/111634363921884702'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/111634363921884702'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2005/05/symbian-helloworld-makefile-sdk21.html' title='symbian helloworld makefile sdk2.1'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-111634225189882520</id><published>2005-05-17T17:57:00.000+03:00</published><updated>2005-05-17T18:09:16.510+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><title type='text'>yaşasın XML!</title><content type='html'>&lt;span style=";font-family:verdana;font-size:85%;"  &gt;freemind demişken bu konuya da değinmeden geçemedim,&lt;br /&gt;dosyalarını xml olarak kaydeden programlara bayılıyorum,&lt;br /&gt;çünkü bir dosya uçtuğu zaman sizi çaresiz bırakmıyor,&lt;br /&gt;bir editör yardımıyla sorunlu xml dosyasını düzenleyip sorunsuz bir şekilde açılmasını sağlayabiliyorsunuz,&lt;br /&gt;yani artık bir kıvılcımla samanlığınız yanmıyor, hemen yangını kontrol altına alıyorsunuz,&lt;br /&gt;&lt;br /&gt;küçük bir örnek:&lt;br /&gt;freemind ile uğraşıp bir proje raporu hazırladım, resimli mesimli, oklu moklu,&lt;br /&gt;sonra güzelce kaydettim.&lt;br /&gt;dosyayı açtığımda ise resimlerim ve ilişkilendirmede kullandığım oklar yoktu.&lt;br /&gt;"nasıl yani" dedim, hemen açtım XML'i, baktım ki bir karakter problemi var, "I" yerine "İ" yazmaya çalışıyor kaydederken, ve açma sırasında düzeltemiyor.&lt;br /&gt;hemen "İ" leri "I" ile değiştirdim, tüm oklarım ve resimlerim yerine geldi.&lt;br /&gt;&lt;br /&gt;büyük bir örnek:&lt;br /&gt;&lt;a href="http://www.fazlamesai.net/modules.php?name=News&amp;file=article&amp;amp;sid=2832"&gt;http://www.fazlamesai.net/modules.php?name=News&amp;file=article&amp;amp;sid=2832&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;yaşasın XML!&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-111634225189882520?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/111634225189882520/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2005/05/yaasn-xml.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/111634225189882520'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/111634225189882520'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2005/05/yaasn-xml.html' title='yaşasın XML!'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-111634172617136036</id><published>2005-05-17T17:49:00.000+03:00</published><updated>2005-05-17T17:57:00.506+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><title type='text'>freemind</title><content type='html'>&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt;geçenlerde &lt;a href="http://freemind.sourceforge.net/"&gt;freemind&lt;/a&gt;'i keşfettim,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;uzun zamandır eksikliğini hissettiğim bir program, &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;artık proje planlarımı &lt;a href="http://freemind.sourceforge.net/"&gt;freemind&lt;/a&gt;'ta tutuyorum, kod açıklamarını&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;a href="http://freemind.sourceforge.net/"&gt;freemind&lt;/a&gt;te tutuyorum, projeyle ilgili fikirleri &lt;a href="http://freemind.sourceforge.net/"&gt;freemind&lt;/a&gt;'ta tutuyorum,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;uygulama kullanım kılavuzunu &lt;a href="http://freemind.sourceforge.net/"&gt;freemind&lt;/a&gt;'ta tutuyorum,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;yani projeme dair ne var ise gayet anlaşılır ve açık bir şekilde&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;a href="http://freemind.sourceforge.net/"&gt;freemind&lt;/a&gt;'ta tek bir dosyada tutuyorum,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;span style="font-family:verdana;"&gt;sunumlarımı bile &lt;a href="http://freemind.sourceforge.net/"&gt;freemind&lt;/a&gt;'ta hazırlamayı düşünüyorum,&lt;/span&gt;&lt;/span&gt;&lt;span class="" style="display: block;" id="formatbar_CreateLink" title="Link" onmouseover="ButtonHoverOn(this);" onmouseout="ButtonHoverOff(this);" onmousedown="CheckFormatting(event);FormatbarButton('richeditorframe', this, 8);ButtonMouseDown(this);"&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;yoksa siz hala freemind kullanmıyor musunuz?&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:verdana;"&gt;artık google'da &lt;a href="http://freemind.sourceforge.net/"&gt;freemind&lt;/a&gt; diyince ilk sayfada çıkarım herhalde.&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-111634172617136036?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/111634172617136036/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2005/05/freemind.html#comment-form' title='1 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/111634172617136036'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/111634172617136036'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2005/05/freemind.html' title='freemind'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-111495142472648269</id><published>2005-05-01T15:38:00.000+03:00</published><updated>2005-05-01T15:47:25.926+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='symbian'/><title type='text'>sıcak sıcak - symbian</title><content type='html'>&lt;span style=";font-family:verdana;font-size:85%;"  &gt;symbian'da birden fazla dil desteği vericekseniz eğer, resource (rss) dosyanızda menulerin ismini direkt yazmıyorsunuz. .loc uzantılı bir başka dosya yaratıp, burada&lt;br /&gt;&lt;br /&gt;#define qtn_appl_play        "Play"&lt;br /&gt;ya da&lt;br /&gt;#define qtn_appl_play        "Çal"&lt;br /&gt;&lt;br /&gt;.rss dosyasında da&lt;br /&gt;&lt;br /&gt;MENU_ITEM { command = EVideoCmdAppPlay; txt = "Play"; },&lt;br /&gt;yerine&lt;br /&gt;MENU_ITEM { command = EVideoCmdAppPlay; txt = qtn_appl_play; },&lt;br /&gt;&lt;br /&gt;diyorsunuz. tabi türkçe desteğini sağlamak için .loc dosyanızın başına&lt;br /&gt;&lt;br /&gt;CHARACTER_SET UTF8&lt;br /&gt;&lt;br /&gt;yazıyorsunuz.  program geliştirirken kullandığınız editorun dil kodlaması da UTF-8 olmalı muhtemelen&lt;br /&gt;unutmadan yazayım dedim!&lt;br /&gt;&lt;br /&gt;ayrıntılı bilgi için:&lt;br /&gt;http://www.newlc.com/article.php3?id_article=443&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-111495142472648269?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/111495142472648269/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2005/05/scak-scak-symbian.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/111495142472648269'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/111495142472648269'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2005/05/scak-scak-symbian.html' title='sıcak sıcak - symbian'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-111443367687320837</id><published>2005-04-25T15:49:00.000+03:00</published><updated>2005-04-25T15:54:36.873+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='symbian'/><title type='text'>sıcak sıcak - symbian</title><content type='html'>&lt;span style="font-size:85%;"&gt;&lt;span style="font-family: verdana;"&gt;unutulmadan hemen yazayım&lt;/span&gt;&lt;br /&gt; &lt;br /&gt; &lt;span style="font-family: verdana;"&gt;Eğer Dll::SetTls ve Dll::Tls ile ilgili linker hataları alıyorsanız, bu durum edllstub.lib'i makefile'niza eklemediğinizden kaynaklanmakta. ekledikten sonra da hatalar UserSvr:: hatalarına dönüşüyorsa euser.lib'i edllstub'dan önce yazmışsınız demek oluyor. sıralarını değiştirirsiniz problem çözülecektir (umarım, ben de öyle oldu en azından)&lt;/span&gt;&lt;br /&gt; &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-111443367687320837?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/111443367687320837/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2005/04/scak-scak-symbian.html#comment-form' title='1 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/111443367687320837'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/111443367687320837'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2005/04/scak-scak-symbian.html' title='sıcak sıcak - symbian'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-111358409940308383</id><published>2005-04-15T18:18:00.000+03:00</published><updated>2005-04-15T20:46:53.800+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='debian'/><title type='text'>opencv için debian paketi hazırlama</title><content type='html'>&lt;span style="font-family: verdana;font-family:verdana;font-size:85%;"  &gt;ne yazık ki opencv kodunu indirip README dosyasını okuduğumda gördüm ki, "nasıl rpm paketi oluşturulur" yazılmış, ama nasıl deb paketi oluşturulacağını yazmaya üşenilmiş, debiancı bir insan olarak bu eksiği kapatmak adına hemen yazayım:&lt;br /&gt;&lt;br /&gt;girişmeden önce şu gereksinimleri bi yüklemeniz gerekiyor tabi.&lt;br /&gt;&lt;br /&gt;+ GTK+ 2.x or higher.&lt;br /&gt;+ libpng, libjpeg and libtiff with development files.&lt;br /&gt;+ libavcodec from ffmpeg 0.4.8 + headers.&lt;br /&gt;Earlier version do not work with OpenCV because of different API.&lt;br /&gt;libavcodec is LGPL software, so to use it with non-GPL software (such as OpenCV)&lt;br /&gt;you need to build and use a _shared_ library libavcodec.so.*:&lt;br /&gt;   get ffmpeg-0.4.8 from ffmpeg.sourceforge.net&lt;br /&gt;&lt;br /&gt;ayrıca &lt;a href="http://www.sonsuzdongu.com/belgeler/debian-paketleme.html"&gt;debian paket yapımı&lt;/a&gt; için gerekli paketleri&lt;br /&gt;# apt-get install build-essential lintian debhelper dh-make devscripts fakeroot&lt;br /&gt;komudu ile yükleyelim&lt;br /&gt;&lt;br /&gt;şimdi&lt;br /&gt;&lt;a href="http://prdownloads.sourceforge.net/opencvlibrary/opencv-0.9.6.tar.gz?download"&gt;http://prdownloads.sourceforge.net/opencvlibrary/opencv-0.9.6.tar.gz?download&lt;/a&gt;&lt;br /&gt;adresinden bir ayna sunucu seçip kodunuzu indirin.&lt;br /&gt;kendinize uygun bir dizin seçin ve bu dizin içerisinde&lt;br /&gt;&lt;br /&gt;# tar xzvf opencv-0.9.6.tar.gz&lt;br /&gt;# cd opencv-0.9.6&lt;br /&gt;# ./configure&lt;br /&gt;&lt;br /&gt;deyince, sisteminizde hangi paketlerin olduğu hangilerinin olmadığı listelenilecektir.&lt;br /&gt;benimki şöyle mesela:&lt;br /&gt;&lt;br /&gt;Configuration:&lt;br /&gt;Compiler:                 g++&lt;br /&gt;CXXFLAGS:                 -g -mcpu=i686 -march=i686 -ffast-math -fomit-frame-pointer -O3 -DNDEBUG -Wall -fno-rtti -pipe&lt;br /&gt;&lt;br /&gt;Install path:             /usr/local&lt;br /&gt;&lt;br /&gt;Use gtk+ 2.x:                yes&lt;br /&gt;Use libjpeg:                  yes&lt;br /&gt;Use zlib:                       yes&lt;br /&gt;Use libpng:                  yes&lt;br /&gt;Use libtiff:                   yes&lt;br /&gt;Use ffmpeg:                yes&lt;br /&gt;Use dc1394 &amp; raw1394:     no&lt;br /&gt;Use v4l:                  yes&lt;br /&gt;&lt;br /&gt;burada eksik gördüğünüz bir paket varsa onu temin edin ve tekrar ./configure komudunu çalıştırın.&lt;br /&gt;özellikle ffmpeg'in karşısında yes yazdığından emin olun, çünkü webcam görüntüleri ve avi dosyaları&lt;br /&gt;üzerinde çalışabilmeniz için gerekli. webcam desteği bu sürüm ile linux kullanıcılarına açılmış bulunuyor.&lt;br /&gt;v4l karşısında da yes yazması lazım tabi kullanabilmeniz için. v4l="video for linux", webcam'inizi kurmuşsanız zaten aşina olmanız gereken bir terim.&lt;br /&gt;&lt;br /&gt;# make&lt;br /&gt;diyin bakalım ne olucak&lt;br /&gt;&lt;br /&gt;umarım hata yoktur. sakın hemen  "sudo  make install"  demeyin,  amacımız deb paketi yapmak aman diyim!&lt;br /&gt;make sorunsuz çalışıyorsa deb paketi yapma kısmına geçebiliriz.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: verdana;font-family:verdana;font-size:85%;"  &gt;export DEBEMAIL="erhankesken@gmail.com"&lt;br /&gt;export DEBFULLNAME="Erhan Kesken"&lt;br /&gt;&lt;br /&gt;diyerek gerekli değişkenleri (paket sağlayıcı bilgilerini) ayarlayın&lt;br /&gt;&lt;br /&gt;&lt;span style=""&gt;#dh_make&lt;br /&gt;&lt;br /&gt;komudunu çalıştırınca size "single paket mi multiple paket mi?" diye sorucak s(ingle) diyip enter enter. ve debian diye bir klasör oluşturulmuş oldu.&lt;br /&gt;&lt;br /&gt;son olarak&lt;br /&gt;&lt;br /&gt;# &lt;/span&gt;&lt;span style=""&gt;dpkg-buildpackage -rfakeroot&lt;br /&gt;&lt;/span&gt;&lt;span style=""&gt;komudu ile paketimizi elde etmiş oluyoruz.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=""&gt;# cd ..&lt;br /&gt;# dpkg -i opencv_0.9.6-1_i386.deb&lt;br /&gt;&lt;br /&gt;diyerek paketimizi güven ile yükleyebiliriz&lt;br /&gt;&lt;br /&gt;benim yarattığım pakete bir &lt;a href="http://www.students.itu.edu.tr/%7Ekesken/opencv_0.9.6-1_i386.deb"&gt;link&lt;/a&gt; koyayım ama kendi paketinizi kendiniz oluşturmanız şiddetle tavsiye edilir. adamlar binary koymuyorlarsa &lt;a href="http://sourceforge.net/projects/opencvlibrary/"&gt;sayfa&lt;/a&gt;larına bir sebebi vardır mutlaka.&lt;br /&gt;&lt;br /&gt;bu arada ne yaptık biz şimdi merak ediyorsanız bkz. "&lt;a href="http://www.sonsuzdongu.com/belgeler/debian-paketleme.html"&gt;debian paket yapımı&lt;/a&gt;"&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-111358409940308383?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/111358409940308383/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2005/04/opencv-iin-debian-paketi-hazrlama.html#comment-form' title='1 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/111358409940308383'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/111358409940308383'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2005/04/opencv-iin-debian-paketi-hazrlama.html' title='opencv için debian paketi hazırlama'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-111357329303035158</id><published>2005-04-15T14:42:00.000+03:00</published><updated>2005-04-15T17:02:34.326+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='symbian'/><title type='text'>sdk2unix kurulumu</title><content type='html'>&lt;span style=";font-family:verdana;font-size:85%;"  &gt;tamamen &lt;a href="http://www.koeniglich.de/symbian_sdk_on_unix.html"&gt;http://www.koeniglich.de/symbian_sdk_on_unix.html &lt;/a&gt;'inden çalıntıdır. gnupoc için nasıl kurulur yazdık, şimdi sdk2unix'de nasıl yapcaz anlatmazsak şişer. tabi sadece series60 2.1 ve fp2 kurulumuna burada yer vericem. gnupoc'da öyle yapmıştık. adalet sağlansın.&lt;br /&gt;bu arada diğer sdk'ları da o &lt;a href="http://www.koeniglich.de/symbian_sdk_on_unix.html"&gt;sayfa&lt;/a&gt;da denilenleri yaparak başarıyla kurdum ve çalıştırdım.&lt;br /&gt;herhangi bir problem yaşamadım.&lt;br /&gt;&lt;br /&gt;indirilmesi gereken dosyalar&lt;br /&gt;&lt;/span&gt; &lt;ul  style="font-family:verdana;"&gt;   &lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;a href="http://www.symbian.com/developer/downloads/tools.html#gccv60"&gt;gcc539&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;   &lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;a href="http://www.symbian.com/developer/sdks_s60v21.asp"&gt;Series                           60 SDK 2.1 for Symbian OS, Nokia Edition&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;   &lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;a href="http://www.symbian.com/developer/sdks_s602EcppFP2.asp"&gt;Series               60 2nd Edition SDK for Symbian OS, Supporting Feature Pack 2, For               C++&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;   &lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;a href="http://www.koeniglich.de/packages/sdk2unix-1.5a.tar.gz"&gt;sdk2unix-1.5a.tar.gz&lt;/a&gt;&lt;/span&gt;&lt;/li&gt; &lt;/ul&gt; &lt;span style=";font-family:verdana;font-size:85%;"  &gt;3 adımda işi bitiricez:&lt;br /&gt;&lt;/span&gt; &lt;ul  style="font-family:verdana;"&gt;   &lt;li&gt;&lt;span style="font-size:85%;"&gt;yüklemede kullanıcağımız sdk2unix dosyasını açalım&lt;/span&gt;&lt;/li&gt;   &lt;ul&gt;     &lt;li&gt;&lt;span style="font-size:85%;"&gt;# gzip -dc sdk2unix-1.5a.tar.gz | tar xvf -&lt;/span&gt;&lt;/li&gt;     &lt;li&gt;&lt;span style="font-size:85%;"&gt;# cd sdk2unix-1.5&lt;/span&gt;&lt;/li&gt;   &lt;/ul&gt;   &lt;li&gt;&lt;span style="font-size:85%;"&gt;gcc'yi derleyelim&lt;/span&gt;&lt;/li&gt;   &lt;ul&gt;     &lt;li&gt;&lt;span style="font-size:85%;"&gt;# bin/install_gcc539 &lt;path-to-gcc-src.zip&gt; &lt;target-directory&gt;    &lt;br /&gt;     ör. (ayrı bir gcc dizini kullanarak):&lt;br /&gt;# bin/install_gcc539 /tmp/gcc539src.zip /local/gcc-2.9-psion-98r2    &lt;br /&gt;kısa bir sürede gcc'niz cross-compile için yapılandırılmış bir şekilde hazır olucak&lt;br /&gt;    &lt;/target-directory&gt;&lt;/path-to-gcc-src.zip&gt;&lt;/span&gt;&lt;/li&gt;   &lt;/ul&gt;   &lt;li&gt;&lt;span style="font-size:85%;"&gt;sdk'mızı yükleyelim&lt;/span&gt;&lt;/li&gt;   &lt;ul&gt;     &lt;li&gt;&lt;span style="font-size:85%;"&gt;Series 60 SDK 2.1 for Symbian OS, Nokia Edition&lt;/span&gt;&lt;/li&gt;     &lt;ul&gt;       &lt;li&gt;&lt;span style="font-size:85%;"&gt;cabextract'i yükle, kullandığınız linux dağıtımının deposunda mevcuttur.&lt;/span&gt;&lt;/li&gt;       &lt;li&gt;&lt;span style="font-size:85%;"&gt;# bin/install_series60_sdk_21 &lt;path-to-sdk.zip&gt;       &lt;target-dir&gt; [gcc-dir]&lt;br /&gt;ör. ayrı bir gcc dizini kullanarak (tek bir satır halinde yazınız):&lt;br /&gt;#bin/install_series60_sdk_21  /tmp/S60_SDK_2_1_NET.zip       /local/symbian_sdk_series60_21 /local/gcc-2.9-psion-98r2&lt;/target-dir&gt;&lt;/path-to-sdk.zip&gt;&lt;/span&gt;&lt;/li&gt;     &lt;/ul&gt;     &lt;li&gt;&lt;span style="font-size:85%;"&gt;Series 60 SDK 2nd Edition SDK for Symbian OS,      Supporting Feature pack 2, For C++&lt;/span&gt;&lt;/li&gt;     &lt;ul&gt;       &lt;li&gt;&lt;span style="font-size:85%;"&gt;# bin/install_series60_sdk_fp2 &lt;path-to-sdk.zip&gt;       &lt;target-dir&gt; [gcc-dir]  &lt;br /&gt;ör. ayrı bir gcc dizini kullanarak (tek bir satır halinde yazınız):&lt;br /&gt;# bin/install_series60_sdk_fp2 /tmp/S60_2nd_fp2_sdk_msb.zip /local/symbian_sdk_series60_fp2 /local/gcc-2.9-psion-98r2 &lt;/target-dir&gt;&lt;/path-to-sdk.zip&gt;&lt;/span&gt;&lt;/li&gt;     &lt;/ul&gt;   &lt;/ul&gt; &lt;/ul&gt; &lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt;bu kadar, şimdi hemen yaşadığınız problemleri yazıyorsunuz ben de çare bulmaya çalışıyorum derdinize&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt;&lt;br /&gt;bu arada "&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-family: verdana;" href="http://kesken.blogspot.com/2005/04/gnupoc-kurulumu.html"&gt;gnupoc kurulumu&lt;/a&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt;" yazısında değindiğimiz &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-family: verdana;" href="http://symbianos.org/download/rcomp_7.0.1-1.tar.gz"&gt;rcomp&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family: verdana;font-size:85%;" &gt;, &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-family: verdana;" href="http://symbianos.org/download/bmconv_1.1.0-2.tar.gz"&gt;bmconv&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family: verdana;font-size:85%;" &gt;, &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-family: verdana;" href="http://symbianos.org/download/petran_1.0.0-1.tar.gz"&gt;petran&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family: verdana;font-size:85%;" &gt;, &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-family: verdana;" href="http://symbianos.org/download/makesis_2.0.0-1.tar.gz"&gt;makesis&lt;/a&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:verdana;"&gt; gibi araçların yüklenmesinde fayda var. her iki sdk ile çalışırken de kullanma ihtiyacı hissediyoruz bu araçları&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-111357329303035158?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/111357329303035158/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2005/04/sdk2unix-kurulumu.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/111357329303035158'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/111357329303035158'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2005/04/sdk2unix-kurulumu.html' title='sdk2unix kurulumu'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-111352365928761443</id><published>2005-04-15T03:06:00.000+03:00</published><updated>2005-04-15T14:40:53.176+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='symbian'/><title type='text'>gnupoc kurulumu</title><content type='html'>&lt;span style="font-family: verdana;font-family:verdana;font-size:85%;"  &gt;bu belge &lt;a href="http://gnupoc.sourceforge.net/HOWTO"&gt;gnupoc.sourceforge.net/HOWTO&lt;/a&gt;'da anlatılanların bir özetidir.&lt;br /&gt;ben yeni bir linux kullanıcısı olarak biraz zorluk çekmiştim orada yazılanları uygulamak da, şimdi bakınca gayet anlaşılır geliyor ama ben yine de yazayım,&lt;br /&gt;orada biraz kesik kesik anlatılmış, burada ise baştan sona adım adım anlatmaya çalışacağım (elimden geldiğince)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;amaç:&lt;/span&gt;&lt;br /&gt;series60sdk2.1 sdk'yı gnupoc yöntemleriyle kurmak&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;yol, yordam:&lt;/span&gt;&lt;br /&gt;kullanıcı yetkilerimizin olduğu bir dizinde sdklarımızı yerleştiriceğimiz bir dizin yaratalım. ben "/data/gnupoc" diye bir dizin yaratıyorum, ve yazıya bu dizin üzerinden anlatarak devam edicem. siz bu kısımları kendi kullandığınız dizine göre değiştirirsiniz&lt;br /&gt;&lt;br /&gt;# cd /data&lt;br /&gt;# mkdir gnupoc&lt;br /&gt;&lt;br /&gt;yaratacağınız dizinde büyük harfli dosya olmamasına dikkat ediniz. GNUPOC'da bir büyük harf takıntısı söz konusu.&lt;br /&gt;&lt;br /&gt;şimdi symbian'ın sayfasından "&lt;/span&gt;&lt;span style="font-family: verdana;font-family:verdana;font-size:85%;"  &gt;&lt;a href="http://www.symbian.com/developer/sdks_s60v12.asp"&gt;Series                 60 SDK 1.2 for Symbian OS, Nokia Edition&lt;/a&gt;&lt;/span&gt;&lt;span style="font-family: verdana;font-family:verdana;font-size:85%;"  &gt;"'ı indirelim, üye olmanız falan gerekecek şimdi, haydin halledin siz işinizi ben bekliyorum,&lt;br /&gt;&lt;br /&gt;tamam mıdır. şimdi geldik sdk'yı açmaya, bunun için 3 seçenek sunayım ben size:&lt;br /&gt;&lt;/span&gt; &lt;ul style="font-family: verdana;font-family:verdana;" &gt; &lt;li&gt;&lt;span style="font-size:85%;"&gt;bir windows üzerinde sdkları kurup gerekli dosyaları buradan çekmek&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;wine ile sdk'yı linuxta kurup, sahte windows'unuzdan gerekli dosyaları çekmek&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;cabextract kurup linuxunuza, şu &lt;a href="http://simonwoodside.com/dev/symbian/unpack/"&gt;blog&lt;/a&gt;'a bir göz atmak, yalnız 2.1 için anlatılmış orada, aman dikkat! biz 1.2 kurmaya çalışıyoruz, bu yanlış anlama bana baya bir zaman kaybına mal olmuştu.&lt;/span&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;span style="font-family: verdana;font-family:verdana;font-size:85%;"  &gt;nedir bu çekeceğimiz gerekli dosyalar, windows kurumunda "program files" altında sdk'nın kurulduğu yerde "Epoc32" diye güzide bir dosya var, içinde "&lt;/span&gt;&lt;span style="font-family: verdana;font-family:verdana;font-size:85%;"  &gt;data, include, localisation, release, tools, wins&lt;/span&gt;&lt;span style="font-family: verdana;font-family:verdana;font-size:85%;"  &gt;" gibi başka dosyalar barındıran, odur.&lt;br /&gt;&lt;br /&gt;# cd /data/gnupoc&lt;br /&gt;# mkdir s60cpp&lt;br /&gt;# cd s60cpp&lt;br /&gt;# cp -fr .../Epoc32 .&lt;br /&gt;&lt;br /&gt;bununla birlikte şu dosyaları kopyalamanızda da fayda var, örnek kodları, dükumanları vs. içeren dosyalar:&lt;br /&gt;&lt;br /&gt;# cp -fr .../Epoc32Ex .../Series60Ex .../Series60Doc .../Series60Tools .&lt;br /&gt;&lt;br /&gt;bu arada linuxu iyice bilmeyenler için "..." noktanın özel bir anlamı yok, dosyalar neredeyse artık oradan çekiceksiniz&lt;br /&gt;&lt;br /&gt;sdk'mızda dosya eksiğimiz kalmadı. şimdi geldi sıra dosyaları gnupoc'laştırmaya, bunun için "fixsrc.pl" gibi araçlara ihtiyacımız var, &lt;a href="http://gnupoc.sourceforge.net/"&gt;gnupoc.sourceforge.net&lt;/a&gt;'ten indirebileceğiniz gnupoc-utils'in içinde geliyor "fixsrc.pl". çokca kullanacağımız bir komut, özellikle örnek kodları kullanmadan önce, büyük harf hataları gibi şeyleri teker teker elle düzeltmekten kurtarıyor insanı.&lt;br /&gt;&lt;br /&gt;gnupoc-utils'e değinmişken diğer araçları da aradan çıkaralım, eğer debian dağıtımı kullanıyorsanız şanslısınız, çünkü hazır debian paketleri mevcut:&lt;br /&gt;&lt;br /&gt;/etc/apt/sources.list'inize&lt;br /&gt;&lt;/span&gt; &lt;pre style="font-family: verdana;font-family:verdana;" &gt;&lt;span style="font-size:85%;"&gt;deb http://ftp.symbianos.org/debian sid main&lt;br /&gt;deb-src http://ftp.symbianos.org/debian sid main&lt;br /&gt;&lt;br /&gt;satırlarını ekleyip&lt;br /&gt;&lt;br /&gt;# apt-get update&lt;br /&gt;# apt-get install gnupoc-utils makesis bmconv petran rcomp&lt;br /&gt;&lt;br /&gt;komutlarıyla yükleme işlemini tamamlayabilirsiniz, diğer dağıtımları&lt;br /&gt;kullanan insanlar koddan derleme yapmak durumundalar&lt;br /&gt;&lt;br /&gt;yine &lt;a href="http://gnupoc.sourceforge.net/"&gt;gnupoc.sourceforge.net&lt;/a&gt;'ten makesis, bmconv, rcomp, petran&lt;br /&gt;araçlarının kodlarını indirip kurucaz. yeni linux kullanıcıları için&lt;br /&gt;örnek olması açısından yazayım:&lt;br /&gt;&lt;br /&gt;# wget http://symbianos.org/download/makesis_2.0.0-1.tar.gz&lt;br /&gt;# tar xzvf makesis_2.0.0-1.tar.gz&lt;br /&gt;# cd makesis-2.0.0/&lt;br /&gt;# make&lt;br /&gt;# sudo make install&lt;br /&gt;&lt;br /&gt;(niye mi böyle ayrıntı yazmaya çalışıyorum, birileri ayrıntı yazmadığı için&lt;br /&gt;çok acılar çektim zamanında da, adam PATH'inize şunları ekleyin diyor bitiriyor,&lt;br /&gt;ulan PATH ne? neyse çok şükür geride kaldı bu zamanlar)&lt;br /&gt;&lt;br /&gt;diğer paketleri de aynı yolla kurmaya çalışacaksınız ki muhtemelen problemlerle&lt;br /&gt;karşılaşıcaksınız, çünkü "makefile"lar debian'a göre hazırlanmış, ben suse'de&lt;br /&gt;problem yaşamıştım, bir kısmı da problem çıkarmadan kurulmuştu, o zamanlar&lt;br /&gt;linux bilgim çok sefil olduğu için, fazla bir yorum yapamamıştım hatalar&lt;br /&gt;konusunda, muhtemelen kolaylıkla aşılabilecek problemlerdi, karşılaştığınız&lt;br /&gt;problemleri yazarsanız bana, elimden geldiğince yardımcı olmaya çalışırım.&lt;br /&gt;&lt;br /&gt;bu arada debian kullanmayan arkadaşlar, gnupoc-utils paketini indirip içinden&lt;br /&gt;"fixsrc.pl"'yi alıp, /usr/local/bin altına "sudo cp" yaparlarsa daha rahat ederler.&lt;br /&gt;bu şekilde "fixsr.pl"'yi bir shell komudu gibi kullanabiliriz.&lt;br /&gt;&lt;br /&gt;yine yeni başlayanlar için genel kültür bilgisi, "echo $PATH" komudu ile PATH&lt;br /&gt;değişkeninizi görüntüleyebilirsiniz. bu değişken ":" ile ayrılmış "/usr/bin"&lt;br /&gt;"/usr/local/bin" gibi dizinler içerir. dilerseniz PATH'inize kendiniz de dizin&lt;br /&gt;ekleyebilirsiniz. bu dizinlerdeki çalıştırılabilir dosyaları artık bir komut gibi&lt;br /&gt;çağırabilirsiniz.&lt;br /&gt;&lt;br /&gt;kurduk mu araçlarımızı, elde ettik mi fixsrc.pl'yi, geldik son rutuşlara:&lt;br /&gt;&lt;br /&gt;# cd /data/gnupoc/s60cpp&lt;br /&gt;# fixsrc.pl Epoc32 epoc32_clean&lt;br /&gt;# rm -Rf Epoc32&lt;br /&gt;# mv epoc32_clean epoc32&lt;br /&gt;&lt;br /&gt;kodumuzu gnupoc standartlarına göre nizama soktuk. şimdi yamamızı uyguluyalım:&lt;br /&gt;&lt;br /&gt;# cd epoc32&lt;br /&gt;# wget http://gnupoc.sourceforge.net/pub/gnupoc-uiqcpp-patch-0.1.2.tar.gz&lt;br /&gt;# tar xzvf gnupoc-uiqcpp-patch-0.1.2.tar.gz&lt;br /&gt;# make apply&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;  &lt;span style="font-family: verdana;font-family:verdana;font-size:85%;"  &gt;yamayı uyguladık, son olarak sistem değişkenlerini ayarlayalım.&lt;br /&gt;&lt;br /&gt;# export EPOCROOT = /data/gnupoc/s60cpp/&lt;br /&gt;# export PATH = $PATH:$EPOCROOT/epoc32/tools&lt;br /&gt;&lt;br /&gt;tabi her bilgisayarı açıp kapadığınızda bu işlemleri tekrarlamak istemiyorsanız, kullanıcı&lt;br /&gt;dizininizde ".bashrc" dosyasının sonuna yukarıdaki komutları kopyalayın. yine bir genel&lt;br /&gt;kültür bilgisi: ~=ev dizininiz=/home/kesken(benim için), yani "vi ~/.bashrc" ile dosyayı&lt;br /&gt;açabilirsiniz.&lt;br /&gt;&lt;br /&gt;sdk kurulumu tamam, sıra geldi "&lt;/span&gt;&lt;span style="font-family: verdana;font-family:verdana;font-size:85%;"  &gt;gcc cross compiler&lt;/span&gt;&lt;span style="font-family: verdana;font-family:verdana;font-size:85%;"  &gt;" işine. bu sdk ile birlikte gelen zip&lt;br /&gt;klasörü içerisindeki gcc539.zip içersindeki derleyici. linuxlaştırılmış halini gnupoc'un&lt;br /&gt;sayfasından indirmeniz mümkün, ister binary ister source olarak. tavsiye edilen source'dan&lt;br /&gt;kendinizin derlemesidir tabi ki.&lt;br /&gt;&lt;br /&gt;eğer hazır binary kullanıcaksanız:&lt;br /&gt;&lt;br /&gt;uygun bir yerde&lt;br /&gt;# wget http://symbianos.org/download/gcc-arm-thumb-epoc-pe.539-2aeh.linux.i386.tar.bz2&lt;br /&gt;# sudo  tar  xzvf   &lt;/span&gt;&lt;span style="font-family: verdana;font-family:verdana;font-size:85%;"  &gt;gcc-arm-thumb-epoc-pe.539-2aeh.linux.i386.tar.bz2&lt;/span&gt;&lt;span style="font-family: verdana;font-family:verdana;font-size:85%;"  &gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-family: verdana;font-family:verdana;font-size:85%;"  &gt;(sudo dedik, çünkü /usr/local/er6/ diye bir dosya yaratmaya çalışacak muhtemelen,eğer öyle&lt;br /&gt;birşey yapmaz ise siz kendiniz bu dizini oluşturun, ve sıkıştırılmış dosyadan usr/local/er6&lt;br /&gt;altındaki dosyaları buraya kopyalayın sudo ile)&lt;br /&gt;&lt;br /&gt;eğer source'dan derlicem diyorsanız:&lt;br /&gt;&lt;br /&gt;klasik olarak indirip açtığınız source klasorunin içine girip&lt;br /&gt;# ./configure&lt;br /&gt;# make&lt;br /&gt;# sudo make install&lt;br /&gt;&lt;br /&gt;şansınız yaver gitmişse ve bir problem yoksa sdk'nız artık kullanıma hazır.&lt;br /&gt;şimdi çalışıyor mu bir deneyelim.&lt;br /&gt;&lt;br /&gt;series60Ex dosyasından bir helloworld programı dosyası çekin ve fixsrc.pl ile bu dosyanın&lt;br /&gt;temiz halini oluşturun, oluşturulan temiz dosyaya girip, aşağıdaki komutları çalıştırın&lt;br /&gt;&lt;/span&gt; &lt;pre style="font-family: verdana;font-family:verdana;" &gt;&lt;span style="font-size:85%;"&gt;# bldmake bldfiles&lt;br /&gt;# abld makefile armi&lt;br /&gt;# abld target armi urel&lt;/span&gt;&lt;/pre&gt;  &lt;span style="font-family: verdana;font-family:verdana;font-size:85%;"  &gt;umarım bir problem yaşamadınız ve herşey yolunda gitti, ben kendi yaşadığım problemlere&lt;br /&gt;bu yazıda değinmedim, kişisel problemlerimle insanları sıkmanın bir anlamı yok diye düşündüm.&lt;br /&gt;yaşadığınız sorunları yorum yazarak bana iletebilirseniz yardımcı olmaya çalışırım, ve diğer&lt;br /&gt;insanlara da ışık tutabilirsek bu şekilde ne mutlu bize,&lt;br /&gt;lütfen çalışmayan linkler için vs. beni uyarmaktan çekinmeyin, yazıların güncelliğini&lt;br /&gt;yitirmesini istemem.&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: verdana;font-family:verdana;font-size:85%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-111352365928761443?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/111352365928761443/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2005/04/gnupoc-kurulumu.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/111352365928761443'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/111352365928761443'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2005/04/gnupoc-kurulumu.html' title='gnupoc kurulumu'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-111307665416227677</id><published>2005-04-09T22:11:00.000+03:00</published><updated>2005-04-10T00:17:18.236+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><title type='text'>neden makefile</title><content type='html'>&lt;ul style="font-family: verdana;"&gt;   &lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;a href="http://murat.debian-tr.org/doc/build/"&gt;makefile, autoconf, automake kullanımı&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;   &lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;a href="http://www.be.itu.edu.tr/%7Eberk/advC/make.pdf"&gt;make kullanımı&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;   &lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;a href="http://www.linuxfocus.org/Turkce/May2001/article181.shtml"&gt;işinizi make ile yapın!&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt; &lt;/ul&gt;&lt;span style="font-family: verdana;font-size:85%;" &gt;yıllarca visual studio ortamlarına sıkı sıkı sarılmış bir insan olarak şimdi çok pişmanım, keşke daha önce geçseymişim dedim linux'a hep. neyse zararın neresinden dönerseniz kardır.&lt;br /&gt;&lt;br /&gt;"visual studio"'da büyük sayılabilir &lt;/span&gt;&lt;span style="font-family: verdana;font-size:85%;" &gt;(en azından iyi para kazandıran) &lt;/span&gt;&lt;span style="font-family: verdana;font-size:85%;" &gt;projeler yaptım, o yüzden bir vefa borcum vardır kendisine, ne yazık ki çok gözü dışarda bir eş "visual studio", bir anlık ilgisizliği bile affetmiyor. kafanızı çevirmişsiniz bir saniye, bir dönmüşsünüz geriye karşınızda bambaşka biri, siz yaşlanıyorsunuz o sürekli bir gençlik iddiasında.&lt;br /&gt;siz de başlıyorsunuz demogojiye "çok zor takip etmek bu teknolojileri çook!"&lt;br /&gt;ben de dedim madem yapamıcaz bu işi bi dükkan açalım falan, ticarete atılalım, uğraşılmaz!&lt;br /&gt;&lt;br /&gt;bu sırada tanıştım "make" ile, ilk başta dedim bu ne!, elle mi yazcaz herşeyi, nasıl yani? koysana şuraya bir buton tıklayım ne güzel, sonra mecbur kaldık başladık yazmaya...&lt;br /&gt;&lt;br /&gt;ben neden mi makefile kullanıyorum?&lt;br /&gt;&lt;/span&gt; &lt;ul style="font-family: verdana;"&gt;   &lt;li&gt;&lt;span style="font-size:85%;"&gt;istediğim ortamda çalışma özgürlüğü sağlıyor!&lt;/span&gt;&lt;/li&gt;   &lt;ul&gt;     &lt;li&gt;&lt;span style="font-size:85%;"&gt;istersem en basit text editöründe, istersem bilgisayarımın donanımını sonuna kadar zorlayan geliştirme ortamlarında çalışabiliyorum, e&lt;/span&gt;&lt;span style="font-size:85%;"&gt;ski alışkanlıklarımdan ve sevdiğim editörlerimden hiçbir zaman koparmaya çalışmıyor beni, ve ikide bir yeni sürüm çıkarıp, bir dünya dolusu değişiklikle oyalamıyor beni&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;   &lt;/ul&gt; &lt;/ul&gt; &lt;span style="font-family: verdana;font-size:85%;" &gt;&lt;/span&gt; &lt;ul style="font-family: verdana;"&gt;   &lt;li&gt;&lt;span style="font-size:85%;"&gt;platform bağımsız!&lt;/span&gt;&lt;/li&gt;   &lt;ul&gt;     &lt;li&gt;&lt;span style="font-size:85%;"&gt;herhangi bir işletim sisteminde makefile ile kod yazabiliyorum, bir işletim sistemi üzerinde kod geliştirmem için işletim sistemini bilmem gerekmiyor, o işletim sistemine özel araçları da kullanmam gerekmiyor, alışkın olduğum araçlarla yoluma devam edebiliyorum&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;   &lt;/ul&gt; &lt;/ul&gt; &lt;span style="font-family: verdana;font-size:85%;" &gt;&lt;/span&gt; &lt;ul style="font-family: verdana;"&gt;   &lt;li&gt;&lt;span style="font-size:85%;"&gt;sadık ve dürüst!&lt;/span&gt;&lt;/li&gt;   &lt;ul&gt;     &lt;li&gt;&lt;span style="font-size:85%;"&gt;asla sizden birşey saklamıyor, sizin dışınızda kesinlikle bir şey yapmıyor, programınıza tam anlamıyla hakim olmanızı sağlıyor, size aptal muamelesi yapmıyor. arkanızı döndüğünüzde sizi terketmiyor&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;   &lt;/ul&gt; &lt;/ul&gt;  &lt;ul style="font-family: verdana;"&gt;   &lt;li&gt;&lt;span style="font-size:85%;"&gt;geniş bir çalışma yelpazesi sunuyor!&lt;/span&gt;&lt;/li&gt; &lt;/ul&gt; &lt;ul style="margin-left: 40px; font-family: verdana;"&gt;   &lt;li&gt;&lt;span style="font-size:85%;"&gt;istediğiniz programlama dilini kullanabilir, isterseniz programlama dili bile kullanmayabilirsiniz (bkz. &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;a href="http://www.linuxfocus.org/Turkce/May2001/article181.shtml"&gt;işinizi make ile yapın!&lt;/a&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;), istediğim sdk'yı yine aynı yöntemler ile kullanmama olanak veriyor,&lt;/span&gt;&lt;/li&gt; &lt;/ul&gt; &lt;span style="font-family: verdana;font-size:85%;" &gt;peki alışkın olduğunuz butonları her zaman yerinde bulabilir misiniz?&lt;br /&gt;&lt;br /&gt;bundan 10 yıl önce de işletim sistemleri C ile yazılıyordu, şimdi de öyle, windows da C ile yazıldı, bugün hayranlık duyulan geliştirme ortamları da, "managed" diller de C,C++ tabanlı, demek ki aslında o kadar hızlı da değişmiyor herşey,&lt;br /&gt;denizin üstünün dalgalı olmasına şaşırmamak lazım, birçok insan dalmaktansa dalgalarla boğuşmayı yeğliyor.&lt;br /&gt;halbuki denizde değişen birşey yok,&lt;br /&gt;su aynı su!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-111307665416227677?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/111307665416227677/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2005/04/neden-makefile.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/111307665416227677'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/111307665416227677'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2005/04/neden-makefile.html' title='neden makefile'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-111307389869058138</id><published>2005-04-09T21:56:00.000+03:00</published><updated>2005-04-10T00:06:46.736+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='symbian'/><title type='text'>linuxta symbian sdk kurmaya başlamadan önce</title><content type='html'>&lt;span style="font-size:85%;"&gt;böyle bir işe giriştiyseniz eğer yakın zamanda "makefile"larla epey bir kafaları kıracaksınız. o yüzden eğer yeni bir linux kullanıcısı iseniz ve makefile size çok yabancı bir kavram ise, kuruluma başlamadan önce &lt;a href="http://kesken.blogspot.com/2005/04/neden-makefile.html"&gt;şu&lt;/a&gt; yazıya bir gözatmanızı tavsiye ederim. oraya sizi fikir sahibi kılıcak bazı faydalı bağlantılar da koydum.&lt;br /&gt;&lt;br /&gt;daha sonra &lt;a href="http://kesken.blogspot.com/2005/04/linux-iin-symbian-balantlar.html"&gt;şu&lt;/a&gt; bağlantılara bir gözatarsanız, iyi olur.&lt;br /&gt;&lt;br /&gt;çünkü burada yeni birşey ortaya konmadı. bir türlü çeviri yaptım diyelim, ek olarak benim takıldığım noktaları ve nasıl aştığım bilgilerini içeren bir içdökümü,&lt;br /&gt;&lt;br /&gt;atladığım noktalar olabilir, lütfen takıldığınız problemleri sormakta tereddüt etmeyin,&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-111307389869058138?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/111307389869058138/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2005/04/linuxta-symbian-sdk-kurmaya-balamadan.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/111307389869058138'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/111307389869058138'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2005/04/linuxta-symbian-sdk-kurmaya-balamadan.html' title='linuxta symbian sdk kurmaya başlamadan önce'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-111283354629533876</id><published>2005-04-07T02:01:00.000+03:00</published><updated>2005-04-10T00:18:50.943+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='symbian'/><title type='text'>linuxta symbian sdk seçimi</title><content type='html'>&lt;span style="font-family: verdana;font-size:85%;" &gt;ne yazık ki symbian firması linuxcuları fazla düşünmemiş, bu durumda da linuxcular kendi başının çaresine bakmak durumunda kalmışlar,&lt;br /&gt;windows için hazırlanan sdkların linuxa uyarlanmasında yaygın olarak kullanılan 2 yöntem var:&lt;/span&gt;&lt;br /&gt;&lt;ul style="font-family: verdana;"&gt;   &lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;a href="http://gnupoc.sourceforge.net/"&gt;gnupoc&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;&lt;a href="http://www.koeniglich.de/symbian_sdk_on_unix.html"&gt;sdk2unix&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt; &lt;/ul&gt;&lt;span style="font-family: verdana;font-size:85%;" &gt;çok derinlemesine inceleme şansım olmasa da genel hatlar şöyle:&lt;br /&gt;&lt;br /&gt;win32 sistemleri için yapılandırılan Symbian OS SDK, 2 komut takımından ibaret:&lt;br /&gt;&lt;/span&gt; &lt;ul style="font-family: verdana;"&gt;   &lt;li&gt;&lt;span style="font-size:85%;"&gt;emulator üzerinde çalışabilmek için microsoft'un, borland'ın veya metroworks'un derleyecilerini kullanan araçlar (emulator icin ayrı derleyicilerin kullanılması bunların emulator degil simulator olduklarını, dolayısıyla yalan olduklarını gösterir, "windowsta çalışıyor ama cepte çalışmıyor" durumununla sık sık karşılaşılacağının işareti . antiparantez - .net ile mobil program geliştirme diye de sıkça reklamlara maruz kalırız. aslında symbian için .net'in geliştirme ortamından başka sağladığı birşey yok. "managed" dil kullanarak ancak "smartphone"lar ve "pocketpc"ler için (&lt;/span&gt;&lt;span style="font-size:85%;"&gt;bir de "windows mobile" çıktı, symbian'a rakip, motorolanın yeni ürünlerinde, "windows ce"'nin "light"'i),&lt;/span&gt;&lt;span style="font-size:85%;"&gt; program geliştirebiliyorsunuz ki türkiye'de pek bir kitlesi yok bu cihazların. illa .net illa managed diller diyorsanız ve linuxunuzu seviyorsanız &lt;a href="http://www.mono-project.com/"&gt;mono&lt;/a&gt; derim ben)&lt;/span&gt;&lt;/li&gt;   &lt;li&gt;&lt;span style="font-size:85%;"&gt;ikincisi ve linuxta olanı :) gcc kullanarak 4 önemli aracın (petran, bmconv, makesis, rcomp) kullanılmasını sağlayan, araya emulator sokmadan c++ programları geliştirmeye olanak veren komut zinciri, bu şekilde makmake gibi komutlara gerek kalmadam kendi makefile'inizi doğrudan oluşturabiliyorsunuz. (örnek makefile bulmak biraz kasıyor. elimden geldiğince örnekleri yerleştiricem)&lt;br /&gt;&lt;/span&gt;&lt;/li&gt; &lt;/ul&gt; &lt;span style="font-family: verdana;font-size:85%;" &gt;yok illa ben makmake kullanmak istiyorum diyorsanız, gnupoc'la devam ediceksiniz yolunuza, gnupoc patchleri sdklardaki ".pl" dosyalarında (perl scriptler), her exe'nin önüne "&lt;a href="http://www.winehq.org/"&gt;wine&lt;/a&gt;" ekleyerek linuxta çalıştırılabilir kılıyor. böylece aynen symbian yolunu izleyerek linux altında çalışabiliyor ve emulatorlerden faydalanabiliyorsunuz. tabi her güzel seyin bi götürüsü var. desteklenen en son sdk s60 1.2!&lt;br /&gt;&lt;br /&gt;ben yaklaşık 1-1.5 hafta gnupoc kurmaya çalışıp, başarılı bir kurulum yapmayı başardıktan sonra bu gerçeği farkettim. çok acı oldu. gnupoc ile yarattığım "helloworld" programları telefonda(Nokia 6600) çalışmayınca, sdk2unix'de de ilk denemede çalışınca sdk2unix'e doğru kaydım ve gnupoc'tan tamamen koptum. daha sonra gnupoc'la da "helloworld"'u çalıştırdım ama artık aramızda birşey kalmamıştı, sdk2unix'in sdklarının daha güncel olması gnupoctan kopuşumu hazırladı.&lt;br /&gt;&lt;br /&gt;linuxta çalıştırılablir sdk'larda son durum şöyle:&lt;br /&gt;&lt;/span&gt; &lt;ul style="font-family: verdana;"&gt;   &lt;li&gt;&lt;span style="font-size:85%;"&gt;Gnupoc&lt;/span&gt;&lt;/li&gt;   &lt;ul&gt;     &lt;li&gt;&lt;span style="font-size:85%;"&gt;UIQ 1.2&lt;/span&gt;&lt;/li&gt;     &lt;li&gt;&lt;span style="font-size:85%;"&gt;p800 1.1&lt;/span&gt;&lt;/li&gt;     &lt;li&gt;&lt;span style="font-size:85%;"&gt;s60 1.2&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;     &lt;li&gt;&lt;span style="font-size:85%;"&gt;n9210 1.2&lt;/span&gt;&lt;/li&gt;     &lt;li&gt;&lt;span style="font-size:85%;"&gt;quartz 6.0&lt;/span&gt;&lt;/li&gt;     &lt;li&gt;&lt;span style="font-size:85%;"&gt;Er5 (genel bilgi Er6=symbian, epoc diye bir firma varmış, symbian alınca adı değişiyor sistemin, psionlarda falan da symbian var(er5)&lt;span style="font-size:85%;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;   &lt;/ul&gt;   &lt;li&gt;&lt;span style="font-size:85%;"&gt;sdk2unix&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;            &lt;ul&gt;     &lt;li&gt;&lt;span style="font-size:85%;"&gt;s60 2.1&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;s60 FP2(7650,6600,6630,Siemens SX1)&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;s80 2.0 (9500,9300,ataları 9210)&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:85%;"&gt;UIQ 2.1 (P800,P900/910)&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;    &lt;/ul&gt; &lt;/ul&gt; &lt;span style="font-family: verdana;font-size:85%;" &gt;umarım hangi sdk'yı seçiçeğiniz konusunda bir fikriniz oluşmuştur.&lt;br /&gt;&lt;br /&gt;belgelendirmeye sdkların kurulum açıklamalarıyla devam edeceğim...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-111283354629533876?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/111283354629533876/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2005/04/linuxta-symbian-sdk-seimi.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/111283354629533876'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/111283354629533876'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2005/04/linuxta-symbian-sdk-seimi.html' title='linuxta symbian sdk seçimi'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-111270158632214771</id><published>2005-04-05T14:43:00.000+03:00</published><updated>2005-04-19T00:22:49.063+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='symbian'/><title type='text'>linux için symbian bağlantıları</title><content type='html'>&lt;span style=";font-family:verdana;font-size:85%;"  &gt;linux üzerinde "symbian sdk"larını çalıştırıcam diye hırs mı yaptınız,&lt;br /&gt;o zaman önce şu linklere bir gözatın derim:&lt;br /&gt;&lt;a href="http://www.koeniglich.de/symbian_sdk_on_unix.html"&gt;sdk2unix&lt;/a&gt; - sdk kurulumu&lt;br /&gt;&lt;a href="http://gnupoc.sourceforge.net/"&gt;gnupoc&lt;/a&gt; - sdk kurulumu&lt;br /&gt;&lt;a href="http://http//simonwoodside.com/weblog/2004/03/07"&gt;simonwoodside&lt;/a&gt; - bu adamın blogunu takip etmenizi tavsiye ederim, faydalı bir insan&lt;br /&gt;&lt;a href="http://www.symbianos.org/"&gt;www.symbianos.org&lt;/a&gt; - açık kaynak projeleri toplayan bir site&lt;br /&gt;&lt;a href="http://www.sciabarra.com"&gt;www.sciabarra.com&lt;/a&gt; - symbian tutorial blog&lt;br /&gt;&lt;br /&gt;zamanla arttırıcağımdır...&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-111270158632214771?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/111270158632214771/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2005/04/linux-iin-symbian-balantlar.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/111270158632214771'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/111270158632214771'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2005/04/linux-iin-symbian-balantlar.html' title='linux için symbian bağlantıları'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-111270001256869803</id><published>2005-04-05T14:15:00.000+03:00</published><updated>2005-04-06T00:13:09.620+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='symbian'/><title type='text'>linux üzerinde symbian</title><content type='html'>&lt;span style=";font-family:verdana;font-size:85%;"  &gt;gelelim ciddi meselelere...&lt;br /&gt;&lt;br /&gt;ilk yayınlarım symbian üzerine olucak&lt;br /&gt;niye mi böyle bir belgeleme yapmaya çalışıyorum.&lt;br /&gt;öncelikle patronum öyle istedi, benden sonraki arkadaşlar aynı problemleri yaşamasınlar diye...&lt;br /&gt;2 hafta uğraştım da kurmak için sdkları&lt;br /&gt;&lt;br /&gt;benim yaşadığım problemler genelde linux bilmemezlikten kaynaklanıyordu gerçi,&lt;br /&gt;Eger "PATH'inize burayı ekleyin" tavsiyesine "PATH de ne?" diye bir cevap veriyorsanız, yakın zamanda&lt;br /&gt;biraz acı çekiceksiniz, ve benim hedef kitlemsiniz&lt;br /&gt;bir diğer sebep de sağda solda forumlarda hep türklerin mesajlarına rastladım&lt;br /&gt;araştırmalarım esnasında,&lt;br /&gt;&lt;br /&gt;belki bir vesile olur bu blog, toplanmamiz icin,&lt;br /&gt;umarım olur,&lt;br /&gt;&lt;br /&gt;bu arada ben bu konuda bir guru değilim, lütfen hatalarımı düzeltin&lt;br /&gt;yegane amacımız bilgi paylaşımı!&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-111270001256869803?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/111270001256869803/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2005/04/linux-zerinde-symbian.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/111270001256869803'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/111270001256869803'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2005/04/linux-zerinde-symbian.html' title='linux üzerinde symbian'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-11927926.post-111265435783358285</id><published>2005-04-05T01:27:00.000+03:00</published><updated>2005-04-05T01:42:36.536+03:00</updated><title type='text'>vay be!</title><content type='html'>&lt;span style=";font-family:verdana;font-size:85%;"  &gt;gözlerim yaşardı hakketten,&lt;br /&gt;diyordum ne zaman başlıcak devletler doğan çocuklara bir web alanı tahsis etmeye, bloglar yetişmiş yardımımıza, yeniden doğmadan halletmis olduk meseleyi&lt;br /&gt;ne zamandır istiyordum bir web sitesi yapayım kendime, tembelliğin sonu yok tabi, ne mutlu ki dünyada çalışkan insanlar da var,&lt;br /&gt;haydi bakalım başlıyoruz hayırlısıylan,&lt;br /&gt;çok enteresan planlarım var bu blog için çok&lt;br /&gt;çook güzel oldu çooooooook&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11927926-111265435783358285?l=erhan.kesken.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://erhan.kesken.org/feeds/111265435783358285/comments/default' title='Kayıt Yorumları'/><link rel='replies' type='text/html' href='http://erhan.kesken.org/2005/04/vay-be.html#comment-form' title='0 Yorum'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/111265435783358285'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/11927926/posts/default/111265435783358285'/><link rel='alternate' type='text/html' href='http://erhan.kesken.org/2005/04/vay-be.html' title='vay be!'/><author><name>Erhan Kesken</name><uri>http://www.blogger.com/profile/11372248561474443274</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://www.kesken.org-a.googlepages.com/Photo11.jpg'/></author><thr:total>0</thr:total></entry></feed>
