HELLO, I’M SERHAT AND THIS IS MY FANCY TITLE.

Ruby günlüğü - gün 4


Ruby'de herşeyin nesne olduğunu önceki günlerden biliyoruz. Peki 2 nesne ve 2 method (fonksiyon) içeren tek satırlık bir kod yazılabilir mi? Cevabı hemen verebiliriz:

puts 2 + 5

Sonucun 7 olduğu aşikar. Peki 2 nesne ve 1 method nerede? Daha önce Ruby'de herşeyin bir nesne olduğunu söylemiştik, Ruby'nin pure-object-oriented bir dil olduğunu da. Burada 2 rakamı bir nesnedir. 5 rakamı da. Evet yanlış duymadınız bunlar birer nesne. + operatörü ise bir method, yani fonksiyon.

Continue reading

Ruby günlüğü - gün 3


Öncelikle Ruby pure-object-oriented bir dil olduğu için, nesne tabanlı programlama hakkında bir kaç noktaya değinmek gerekir, aksi halde ilerleyen konularda nesne, sınıf, fonksiyon gibi kavramlar karışacaktır. Ben daha önce çok derinlemesine olmasa bile bir Python tecrübem olduğu için ve bu sorunları Python çalışırken yaşamış olduğum için, bi kez tekrarlamakta fayda görüyorum. OOP kullanmak zorunlu değildir, ama bilinmesi gerekir ve kullanılsa iyi olur. Neden mi? Yazının devamında bunu da açıklamaya çalışacağım.

Continue reading

Ruby günlüğü - gün 2


'Neden Ruby?' sorusunun cevabını IBM'den almak daha ikna edici olabilir;

Kendi çapında bir Java programcısı neden Ruby'yi önemsemelidir? Ruby, 10 yıl önce Japonya'da geliştirilen genel amaçlı bir programlama dilidir. Tamamen object-oriented olması sebebi ile popülerlik kazanmıştır. Java'da olduğu gibi skalerler içermez, bu yüzden integer (rakamsal ifadeler) dahil herşey birer first-class nesnedir (bu tabire Python geliştiricilerinin hiç yabancı olmaması gerekiyor). Ruby syntax'ı yani söz dizimi Smalltalk, Python ve Ada ile oldukça benzerlik gösterir. Ruby bütün bilinen işletim sistemlerinde rahatlıkla çalışabilen, tamamen taşınabilir bir dildir. İşletim sistemine göre bağımlılık içermez. Ruby'nin kullanımı her geçen gün artmakta, buna sebep olarak Ruby'nin esnekliği ve uygulama geliştirmede gösterdiği pratikliği gösterebiliriz. Java'da uygulama geliştirme süreci çok daha meşakkatlidir.

Bu yazıda Ruby geliştirme ortamı ve Ruby konsepti gibi konulardan bahsedeceğim.

Continue reading

Ruby günlüğü - gün 1


Ruby öğrenme sürecimde, edindiğim tecrübeler, yaşadığım zorluklar, bulduğum çözüm yolları gibi durumları, bu yazı dizisinden günlük şeklinde aktaracağım. Daha sonra geriye dönüp baktığımda, nerelerde yanlış yapmışım, nelerde kendimi boşa yormuşum, neleri yanlış anlamışım, bunları değerlendirebilmek için bu günlüğü tutuyorum.

Ruby'ye başlangıç için Beginning Ruby: From Novice to Professional - Second Edition kitabını kullanmaktayım. Bu kitabı hızlıca tüketip, The Ruby Programming Language, O'Reilly kitabına geçmek ilk etapta düşüncem. Kitapların .pdf halini bir kaç Google araması ile kolayca bulabilirsiniz.

İşletim sistemi olarak Ubuntu 10.04 kullanmaktayım, tabi ki siz farklı bir işletim sistemide kullanabilirsiniz.

Continue reading

Detecting browser and browser capabilities with PHP


Detecting browsers and collecting data about browser capabilites can be done with Javascript or Activex, but there is still a long way away from being 100% accurate. There are thounsands of browser types to detect. In every update of IE/Firefox or etc. versions of the browsers are changing. At the time of this writing, there are more than 120.000 known browser UserAgents. From this perspective it can be said that collecting all the data about browsers for testing and detecting purposes is a quite challenging issue. Browscap browser database solves this problem.

Continue reading