http://esiyo.net - uordek.essiyoo.each { |yazi| esiyo.net << yazi }

Archives Posts

MapCache.rb - 1

February 27th, 2007 by Tankut ŞENTÜRK

Merhaba arkadaşlar,

Bugün sizlerle eskişehirde yaptığımız seminerde yapmayı planladığım fakat seminer saatlerinin değişmesi neticesinde tamamlayamadığım sunumun konularından birisi olan MapCache adlı küçük uygulamayı sizlerle paylaşacağım.

- MapCache nedir ?
- MapCache, Hüseyin Gömleksizoğlu‘nun “Nasıl yapsamda cep telefonumda varolan GPS uygulamasını internete (GPRS’e) bir dünya para vermeden (ücretsiz) kullansam ?” sorusu üzerine doğmuştur. MapCache uygulamasının ilk versiyonu bu şekilde Hüseyin arkadaşımız tarafından yazıldı (Kendisinin söylediğine göre kaynak olarak esiyo.net’i kullanmış :) ). Daha sonra, Hüseyin arkadaşımız uygulamayı bana ulaştırdı ve iyi olup olmadığı sordu, ben de birkaç değişiklik yapıp çok güzel olduğunu belirttim ve kendisinden seminerde kullanmak için izin istedim. Sağolsun izni verdi ve bu konuyu sizlerle paylaşma fırsatı buldum.

MapCache uygulaması Ruby ile uygulama yazımını çok güzel ve mantıklı biçimde işlediği için anlatımı oldukça basit fakat sizlerin daha rahat anlamabilmesi ve benim belli konulara daha çok ağırlık verebilmem için uygulamayı adım adım oluşturacağız.
Yazının devamı için »

Bağlı olduğu kategoriler; Bilgisayar, Ruby (Ruby on Rails) 1 Yorum » yapılmış.

Archives Posts

Ruby Eskişehir Semineri

February 26th, 2007 by Tankut ŞENTÜRK

Merhabalar,

Uzun süredir yazı yazmadım. Bu kadar sessiz kalmamın nedeni inanın tembellik değil. Tembel bir adam değilim (Bunu kendime uzun süredir söylüyorum, sanırım iyileşme göstermeye başladım.:) ). Tam aksine çok çalışkan bir ruh hali içerisindeyim. Hatta ve hatta arada sırada çalışacağım diye kendimi paraladığımı bile düşünüyorum ama hemen bu düşünce aklımdan uzaklaşıyor.. az bile çalışıyorum… (Bunu da kendime uzun süredir söylüyorum :) )

Şimdi koltukta yer alan karpuzları sıralayalım;
- Taşındım.. Artık beylikdüzünde oturuyorum.
- Evlilik hazırlıkları içerisindeyim, inşallah 5 mayısta evleneceğim.
- Geçen hafta sonu Eskişehir’de gerçekleşen bu etkinlikte Ruby hakkında bir konuşma yaptım.

Ehh tüm bunlar bu ay içerisinde başladı, bazıları bitti, bazıları devam ediyor. Durum böyle olunca pek yazı yazamadım. Sizlerden özür dilerim ama arayı kapatmaya gayret edeceğim, bilginize..

Eskişehir hakkında birşeyler yazacak olursam, gerçekleşen seminer oldukça güzeldi. Hüseyin ile beraber gerçekleştirdiğimiz bu seminerde organizasyonu yapan arkadaşlar önceden bizlere her birimizin 1,5 saatlik süresi olduğunu hatta ve hatta istersek uzatabileceğimizi belirtikten sonra, her ikimizinde 1,5 saat içerisinde bitirmesini istemek gibi gaddarca bir tutuma sahip olsa da seminer düzenleyicileri, bizler mutlu ayrıldık. Umarım seminerleri izlemeye gelen arkadaşlar da mutlu ayrılmıştır.

Fakat yiğidi öldürelim hakkını verelim. Çok çok iyi insanlarla tanışma fırsatı bulduğum için organizasyonu yapan arkadaşlara teşekkür etmem gerekir, iyi ki bu şekilde bir organizasyon yapmışlar.

Yaptığım konuşmanın tam metni yok, fakat dökümanları ve kullandığım küçük kod parçalarını ilerleyen günlerde yavaş yavaş yayınlamak istiyorum. Şimdilik sizlere Eskişehir notları başlığı altında örnekleri ve vakit darlığından sunamadığım sunumu vermek istiyorum.

İlerleyen günlerde bu döküman içerisinde yer alan bilgileri ve konuları daha direnlemesine inceleyeceğim.

Kolay gelsin :)

Bağlı olduğu kategoriler; Bilgisayar, Ruby (Ruby on Rails) 4 Yorum » yapılmış.

Archives Posts

Ruby ile Reflection - 2

February 13th, 2007 by Tankut ŞENTÜRK

Merhabalar,

Bir önceki Ruby ile Reflection adlı yazımda anlatmaya başladığım Reflection konusunu, bu yazı ile bitiriyoruz. Önceki yazımda Reflection'ın tanımı yapmış, yazılımcıların neden kullanmak istediklerini felsefik anlamda incelemiştik. Hatta tüm bunlar yetmemiş bir de kapsamlı bir örnek yapmıştım.

Bu yazıda biraz daha güncel hayat örnekleri ile beraber özellikle Rails'de bu işler nasıl yapılmış ona değineceğim. Daha doğrusu değinmeye çalışacağım.

İlk olarak Ruby on Rails üzerinde Model kavramı ile çalışmaya başladığınızda ilk veya ikinci örnekte aşağıda yer alan kod satırını görürsünüz. (Örnek; Agile Web Development With Rails'den alınmıştır.)

class Product <ActiveRecord::Base
    validates_presence_of :title, :description, :image_url
end

Bu örnekte validates_presence_of methodu ile title, description ve image_url bilgilerinin boş olamayacağını belirtmiş oluyoruz. Kodun yazım şekli biraz garip olabilir, ilk zamanlar (Ruby ile Reflection'ı öğrenmeden önce) bana garip gelmişti :)

Şimdi bu yazım şekli de nereden çıktı diyeceksiniz, aslında çok basit; Ruby'de ":" işareti bir methodu veya değişkeni ifade etmek için kullanılır. Bu işaretle biz aslında o methodu veya değişkeni kullanmak istemediğimizi sadece ifade etmek istediğimizi belirtiyoruz. Eski dilde, tabir-i caiz ise adresini kullanıyoruz. Yani ":title" aslında "title" değişkenini ifade eder.
Yazının devamı için »

Bağlı olduğu kategoriler; Bilgisayar, Ruby (Ruby on Rails) 2 Yorum » yapılmış.

Archives Posts

Ruby ile Reflection

February 12th, 2007 by Tankut ŞENTÜRK

Merhabalar,

Bu yazımızda Ruby üzerinde, daha önce yazmış olduğum Ruby ile Çalışma Zamanı ve nesneler aynı mı ? yazılarında az da olsa değindiğim fakat genel anlamı ile hiç ele almadığım Ruby ile Reflection konusunda yazmaya karar verdim.

Reflection tanım olarak, çalışma zamanında programda tanımlanmış nesnelere veya methodlara dinamik erişimi tarif eder.
Aşağı yukarı günümüzde tüm modern (hatta bazı klasik) programlama dilleri bu olguyu destekler. Ruby, çalışma ve tasarım zamanlarının birbirlerinden farklı olmaması nedeni ile Reflection olgusunu tüm yönleri ile destekler.

Günümüzde Reflection özelliği üzerine kurulu Reflective Programming adlı yeni bir yazılım geliştirme felsefesi de bulunmaktadır.

En temel anlamda düşünürsek, bir yazılımcı olarak yazdığınız program üzerinde %100 kontrol sahibi olmak isteriz. Tasarım zamanında (yani programı yazarken) elimizde olan bu gücü, çalışma zamanında da kendi yazdığımız diğer yazılımlar sayesinde (veya aracılığı ile) korumak isteyebiliriz. Reflection, tam bu esnada kullanmamız gereken teknolojinin adıdır.
Yazının devamı için »

Bağlı olduğu kategoriler; Bilgisayar, Ruby (Ruby on Rails) Yorum yok » yapılmış.

Archives Posts

Küresel Isınma Gerçeği

February 8th, 2007 by Tankut ŞENTÜRK

Merhabalar arkadaşlar,

Bu seferki yazımız bilgisayar ile ilgili değil, daha önemli bir şey ile ilgili, küresel ısınma gerçeği ile ilgili. Aranızdan bazıları çıkabilir, "yok yahu öyle birşey, bizlerin küresel ısınmaya hiçbir katkısı olmuyor.. hatta küresel ısınma diye birşey yok" derse.... yakınımda demesin, uzakta desin.. bu sözleri sarfeden insana yaklaşana kadar sinirim geçebilir, kendime gelebilirim.

Arkadaşlar durumu kabul edelim. Küresel ısınma var ve eğer önlem almazsak çok kötü sonuçları beraberinde getirecek. Bunlardan bazıları sonuçunda Dünya nüfüsunun %40'ı direkt olarak etkilecek. Biraz daha gerçekçi bir örnek vermek gerekir ise Türkiye'de yaşayan 70 milyon insanın %40'ının (aşağı yukarı 28 milyon ediyor.) bu durumdan direkt ve şiddetli bir biçimde etkilenebilir, etkilenecektir.

En son üç güzide bakanımızın yaptığı açıklamada dünyayı bu hale getiren zihniyetin (Ben bu zihniyete Bush zihniyeti diyorum. Çok sevdiğim müzisyenlerden biri olan Moby'nin değimi ile 'Aptal' zihniyeti.) Türkiye'de de etkili olduğunun göstermektedir. Bu açıklama nedeni ile bizi yöneten insanlardan, özellikle çevre bakanının karadenizli olmasından (ki ben de karadenizliyim..) çok büyük bir utanç duydum. Tüm Türkiye'nin doğayı sevdiğini ve doğaya zarar vermek istemediğini biliyorum ama karadenizlilerin daha hassas olduklarını düşünürdüm, yanılmışım, hepsi değilmiş. Bu ülkenin insanları uzun süre boyunca topraktan kazançlarını elde ettiler. Toprağa baktıkları zaman topraktan verim alacaklarını bilirler. Ama bu üç bakanımız bunları unutmuş gibi.

İyi haber ile başlayalım Türkiye karbondioksit salınımı konusunda Dünya'daki toplam salınımın %1'ini bile yapmıyor. Hemen gevşemeye başlamayın, kötü habere gelince Türkiye'de yapılan karbondioksit salınımı geçen yıla göre %70 artmış.

Öncelikle şunu görmemiz gerekir. Türkiye'deki bu artış gelecek yıllarda devam etmez diyecek kişinin anlını karışlayacak birçok çıkacaktır, bu nedenle böyle bir durumu aklınızdan bile geçirmeyin. Özellikle enerji kaynaklarının özelleştirilmesinden sonra fosil yakıtlara olan ihtiyaç oldukça artmış ve son bir (evet sadece bir yıl) içerisinde Türkiye'de daha önceden varlığı bile tartışılan bir sektör ortaya çıkmıştır. Bu sektörün büyüklüğü tahmini bir değerle (karbondioksit salınımına paralel olarak) %70 artmıştır. İçerisinde bulunduğumuz 2007 senesinde %70 artması ki bu bir hayal değil, Türkiye'nin Dünya'yı kirleten ülkeler arasına girmesi demek ve biz bunu istemiyoruz.

İşin özü, Dünya üzerinde 200'den fazla ülke mevcut, tam sayıyı bende bilmiyorum. Dünya üzerinde yer alan tüm ülkeler bizim kadar karbondioksit salınımı yapar ise, Dünya'nın sonu zaten gelmişti. Bunu hiç aklımızdan çıkarmayalım; Her ne durumda olursa olsun şu anki karbondioksit salınımı bile Türkiye için çoktur. Bunun artmaması için çalışmalı, diğer Dünya ülkelerine örnek olmalıyız.

Sonuç olarak; Türkiye Cumhuriyeti Hükümeti, kendisine yakışanı yapmalı, doğal enerji kaynaklarını teşvik etmeli, fosil yakıtları kullanmayı bırakmalıyız. Türkiye içerisinde petrolün kısıtlı miktarda bulunması nedeni ile ortaya çıkan dışa bağımlılığı azaltabilir ve doğaya olan borçumuzu rahatlıkla ödeyebiliriz.

Eğer bunları yapmaksak;"Eğer bir kişi, bir konuyu anlamamak için para alıyorsa o kişiye gerçeği göstermek çok zordur." sözünü söylemek gerekiyor. Bush'un petrol firmalarından para yediğini tüm dünya biliyor (Salak A.B.D'liler hariç, salak olmayan biliyor :) ). Ama bunu yapmazlarsa, demek ki bizimkiler de para yiyor.
- Umarım şereflerini yüksek miktarlara satarlar.
- Umarım çocuklarının geleceklerini yüksek miktarlara satarlar.
- Umarım bu satışın sonunda paralarını harçıyacak bir dünya bulabilirler.

(Üstteki paragraf ile ilgili olarak; bu yazının yazıldığı tarihten 2,5 ay sonra NTV-MS-NBC'de yayınlanan 'Küresel ısınma öngörülerine sansür' haberi ile örtüşmektedir.)

Kolay gelsin...

*Not: http://www.iklimkrizi.net/ veya http://www.climatecrisis.net adreslerinden gerekli bilgileri alabilir ve bireysel olarak yapabileceklerinizi öğrenebilirsiniz. Ve elbetteki bununla beraber... "uygunsuz gerçek" filmini izyelebilirsiniz. Daha doğrusu lütfen izleyin.

Bağlı olduğu kategoriler; Yaşam 14 Yorum » yapılmış.

Archives Posts

Ruby ile GUI Toolkits (Tk)

February 7th, 2007 by Tankut ŞENTÜRK

Merhabalar,

Bugünkü yazımız 'tk' ile ilgili olacak. Aslında bu yazı ile beraber GUI Toolkits adlı yazı dizisinin sonuna gelmiş oluyoruz. Bu yazımda Tk'dan daha fazla, tüm kullanıcı grafik arabirimleri arasında karşılaştırmalar yapmak istiyorum. Öncelikle 'Tk' konusunda bazı bilgileri sizlerle paylaşalım. Tüm Ruby dağıtımlarında, varsayılan olarak Ruby/Tk bağlayıcısı mevcuttur. Ama sadece bağlayıcı(bindings) yetmez, Windows kullanıcıları için Tk'nın binary kütüphanesi varsayılan olarak gelmez. Bu nedenle ActiveState'e bağlı standart ActiveTcl ürünü ile bu kütüphaneyi ücretsiz elde edebilirsiniz. 'Tk' Windows, Linux ve Mac üzerinde sorunsuz çalışan bir kütüphanedir. Kendi görüntü teması mevcuttur GNOME, Fox ve wxWidgets gibi sistemlerin görüntü temaları Tk'dan daha güzel ve çeşitli olabilir. Ruby One-Click Installer ile beraber gelen Programming Ruby(The Pragmatic Programmer's Guide) adlı kitapta pek çok güzel örneklerle açıklanmış ve anlatılmıştır. İş bu nedenle (Ha..ha sanki resmi yazışma gibi oldu.. :p) herhangi bir örnek vermeyeceğim. Aslına bakarsanız pek tavsiye ettiğim bir kütüphane değil kendileri, Tk yerine FxRuby, WxRuby veya Gtk'nın kullanılması çok daha verimli ve kolay olur görüşündeyim. Özellikle Windows işletim sistemi için yapılacak basit uygulamalarda VisualuRuby(VRuby)'nin kullanılmasını şiddetle tavsiye ederim.

Bu yazı dizisinin sonuçunu merak ediyorsanız, 'diğer kütüphanelerle uğraşmak istemiyorum' ve 'bana adam gibi bir kütphane tavsiye et, iyisi ile kötüsü ile kullanmak istiyorum' diyorsanız. Önceki yazılarımda bahsettiğim gibi WxRuby'den başlayabilirsiniz ;)

Kolay gelsin...

Bağlı olduğu kategoriler; Bilgisayar, Ruby (Ruby on Rails) 5 Yorum » yapılmış.

Archives Posts

Ruby ile GUI Toolkits (Gtk)

February 2nd, 2007 by Tankut ŞENTÜRK

Merhabalar,

Bu yazımızda konumuz GTK ile görüntü arabirimleri oluşturmak. Öncelikle belirtmem gerekir ki, bu konu ile yazacağım yazıdan çok daha iyisi Pinguar tarafından seminer olarak verildi. Pdf'i buradan bilgisayarınıza yükleyebilir ve güzel güzel okuyabilirsiniz.
Aklınızdan şöyle bir soru geçebilir; "be adam, Pinguar konu ile ilgili güzel bir yazı yazmış diyorsun, ee peki sen neden bu yazıyı yazıyorsun...?".. geçti değil mi ? Benim de geçti. Bu sorunun cevabı ise aslında çok basit, Pinguar çok güzel bir seminer vermiş (öyle duydum..) Ama pdf'in uzunluğu 28 sayfa kadar, eee durum böyle olunca, sizlere Gtk ile ilgili ön bilgiler vermek ve küçük de olsa bir giriş yapmak bana kaldı. Üstelik Gtk'nın anlatılmadığı "Ruby ile GUI Toolkits" yazı dizisi düşünemiyorum doğrusu.

Hemen küçük ön bilgiler ile konumuza bir giriş yapmaya çalışalım. Yazının yazıldığı sıralarda Ruby-Gtk2'nin '0.16.0' sürümü duyrulmuştu. Bu proje isminden de anlaşılacağı gibi Ruby'nin yeni nesil GNOME 2.0 bağlayıcısıdır. Proje içerisinde iki farklı paket bulunmaktadır;

  • Bunlardan ilki 'ruby-gtk2' paketi. Bu paket içerisinde sadece standart grafik arabirim işlemleri destekleyici sınıflar içeren bileşenler bulunur.
  • Diğer ise 'ruby-gnome2-all' paketidir. Bu paket, standart olarak kullanılan 'ruby-gtk2' paketi üzerine çok yönlü ve birçok durumu destekleyen büyük bir mimari içerir.

Kurulum konusuna gelirsek, Gtk+, sadece Linux, FreeBSD ve Microsoft Windows işletim sistemleri üzerinde çalışır. Linux ve FreeBSD kurulumları oldukça basittir. Bu adreste yer alan bilgilerden faydalanılarak rahatlıkla kurulumu gerçekleştirilebilir.
Yazının devamı için »

Bağlı olduğu kategoriler; Bilgisayar, Ruby (Ruby on Rails) 2 Yorum » yapılmış.