Monthly: August, 2010


27
Aug 10

Sosyal Platform API’ları Nasıl Olmalı?

Çarşamba günü Turkcell Teknoloji’de Incubation takımı bilgi paylaşımı oturumu için hazırladığım yüzeysel bir sunumu paylaşayım dedim. Özetle sosyal platformlarda neden ve nasıl API sunmalıyız konusuna değiniyor. Maksat, hazırlanan şey ziyan olmasın. En ufak bir bilginin bile değeri olabiliyor :) Sunuma şuradan ulaşabilirsiniz: http://slidesha.re/bWPOfW

İçeride neler var?

  • API nedir, Nasıl Kullanılır?
  • Neden API sunmalıyız? Kullanım Alanları
  • Bazı Sosyal Platformların API’ları: Twitter, Facebook, FriendFeed
  • API’lar için Kullanıcı Yetkilendirme Sistemleri: OAuth
  • API Nasıl Tasarlanır? Tasarım, Dokümantasyon, Destek
  • 3. Parti uygulamalar ve Mashup Pazarı

27
Aug 10

Turkcell Teknoloji’de Staj: 8.Hafta

Staj sekiz hafta sanıyordum; dokuz hafta olduğunu geçen hafta fark ettim aslında :) Önceden dediğim gibi Türkiye’deki en iyi IT AR-GE şirketinde sekizinci haftayı devirdim, haklı olarak bunla gurur duyuyorum. An itibariyle sadece 4 iş günüm kaldı. Biraz da ayrılmanın getirdiği hüzün var. Değerli arkadaşım Sarp‘ın da bugün TTECH’te son günüydü, kendisi şirketten ayrılıyor ve diğer Sarp ile kendi işlerini geliştirmeye başlıyorlar. Onlara buradan başarılar diliyorum. Ses getiren projelere imza atacaklarına hiç şüphem yok.

Durmadan bahsettiğim şu proje, şirket içi beta yayınında ve testlerde başarılı bir performans sergiliyor. Biraz da Amazon EC2‘nin sayesinde ciddi yük testlerinden rahatlıkla geçti. Umarım ben buradan ayrılmadan bir ürün haline getirip piyasaya sunabiliriz. :) Kısmet olmazsa da benden sonra duyurulduğunda emeklerimin ürüne geçtiğini görmekten mutluluk duyuyor olacağım. Ben ayrıldıktan sonra da proje ilerletilip faz-2 ye geçirilirse daha eğlenceli hale gelebilir. :) Continue reading →


24
Aug 10

Yazılımcının Easter Egg Kültürü

Galiba hiçbirimiz gömleğini kravatını giyip yazılım geliştiren insanlardan değiliz.

Olay aslında gömlek kravatta değil. Okuldaki derslerden ve kitaplardan yazılım geliştirme öğrenen insanlar bir yana dursun, yıllarını internette harcamış, computer nerd-geek kültürüyle yetişenlerde bambaşka bir karakter görürsünüz. İkisinin yaptığı ürün arasında belki de dağlar kadar fark olur.

Bende de küçüklüğümden beri yaptığım her şeyin içine easter egg (sürpriz yumurta) saklama alışkanlığı var. Easter egg, aslında bir programın kullanıcı tarafından görülecek kısımlarına veya kaynak kodunun içine yerleştirilen süpriz, yani gördüğünüz anda yüzünüze gülümseme yayan ek özellikler oluyor.

Eskiden daha geek tayfanın çalıştığı Microsoft‘ta ürünlere bir çok easter egg koyulurmuş. Hatta bu Wikipedia makalesinde yazılmamış FrontPage Easter Egg‘ini ben hatırlıyorum. Bugünlerde eskisi gibi işlemiyor galiba işler. :)

Google… Zaten yüzlerce espriyle her an karşınıza çı-ka-bi-li-yor. Klasik Google fanboy’luğumu yine ortaya çıkarmak istemiyorum ama Street View kamerası Googleplex’in önünden geçerken el sallayan Google yüzlerce Google çalışanı ne kadar geek olduklarını kendileri gösteriyorlar :)

Bir şirketin çalışanlarının birbirleriyle iyi iş birliği yapabilmesi için herkesin ortak bir kültüre; en azından şirket ve meslek kültürüne sahip olması oldukça önemli. Birbirlerinin esprilerini anlayıp gülen Google çalışanları belki de mutluluğun resmini çiziyorlardır. :P Bu kadar saçmalık yeter.

Google’dan eksik kalmayan Facebook da zamanında eklediği Konami Code, Mark Zuckerberg’i engelleyememeniz, ve daha bir çok eski tasarımlarla tarihe karışmış yumurtalarla listede yerini alıyor. Yine V6 UNIX çekirdeğinde (kernel) yazılan “you are not expected to understand this” yorumu, beni dumur edenlerden biri olmuştur. Yine reddit.com‘un header‘larında bulunan bir SQL Injection kodu, biraz reverse engineering yapmaya çalışanları güldürmüştür :)

Bazen programlama dillerinin kendilerinde de sürpriz yumurtalar bulunabiliyor. PHP‘nin kurucularından Zeev Suraski’in köpeğini PHP ile hazırlanan tüm sitelerin sonuna bir kod ekleyerek görebilirsiniz. :) (sonradan o köpek ölüyor ama bugün milyonlarca sitede yaşıyor.) Python 3.x’daki ilginç sürpriz yumurtalardan bir tanesi de Python‘da {süslü parantezlerin} olmamasına laf edenlere geliyor. Shell’de from __future__ import braces yazdığınızda SyntaxError: not a chance hatasını alırsınız :) Yine Python’da xkcd‘nin isteği üzerine hazırlanan import antigravity oldukça eğlenceli.

Pardus 2009‘un kurulumunda da F1′den F12′ye kadar olan tuşlardan birinde açılan sürpriz tetrisle bir yandan kurulumun bitmesini beklerken bir yandan eğlenebilirsiniz. :) Yine Ubuntu‘da da güzel sürpriz yu-mur-ta-lar var.

Biz de vaktinde Hüseyin’le ffScheduler‘ı yaparken ufak bir easter egg koymuştuk. Bugüne kadar kimse bulup bize gelmedi, madem öyle biz de sürprizini kaçıralım. Sitede hmaab yazarsanız sizi artık sürpriz olmayan bir şey bekliyor. :) Dediğim gibi ben elimden geldiğince yazdığım her şeye bir tane koymaya çalışıyorum :) Bana sorarsanız işe eğlence katmakta hiçbir sakınca yok. :)

Sizin sitelerinizde veya bildiğiniz sürpriz yumurtalar var mı?


21
Aug 10

Turkcell Teknoloji’de Staj: 7.Hafta

Göz açıp kapayıncaya kadar stajımın yedi haftasını geride bıraktım. İki haftam daha kaldı. Sonra da bir hafta bayram tatilinin ardından okula başlıyor olacağım :(

Bu hafta yine Incubation olarak düzenli grup toplantımızı yaptık. Gerçekten güzel projeler gündeme geliyor ve hayata geçmeye hazırlanıyor. Aslında incubation departmanı ve kardeşi terminal uygulamaları departmanı Turkcell Teknoloji içinde kendi başına bir şirket gibi durabiliyorlar. Geliştiricileri, analistleri, grafik tasarımcıları, sözleşmecileri var. Bu sebeple de incubation kelimesinin gerektirdiği gibi hem işe odaklı hem de hızlı çalışma temposuna sahip olunabiliyor. :) Continue reading →


13
Aug 10

Turkcell Teknoloji’de Staj: 6.Hafta

Stajımın bir buçuk ayı geride kalırken yavaş yavaş blog yazıları da rutine bağlanıyor ve yazacak konu bulmakta zorlanıyorum. :) Güzel bir hafta geçirdiğimi söylemeliyim.

Bugün itibariyle 1,5 aydır devam ettiğim proje ürün haline gelmiş durumda. Hafta içinde şirket içi kapalı beta‘ya açıyor olacağız. Takip eden haftalarda da ürün olarak çıkılabileceğini düşünüyorum. Aslında geçen 1,5 ay bu projeyi gerçeklemek için oldukça uzun bir süre. Fakat platforma alışma ve kaliteli ve yenilenebilir bir sistem hazırlama süreci zaman alabiliyor. Üstelik mesaiden sonra akşamları da evde projeye devam ediyorum. Bu kapsamda staj bana ciddi bir tecrübe kazandırdı. Projenin içinde tekrar kullanılabilecek bir çok yapı oluşturdum. İleriki kişisel projelerimde de kullanmayı düşünüyorum. Ama hala Java çalıştıracak (App Engine hariç) Tomcat server’ı nereden bulacağımı bilmiyorum. Bu arada App Engine altında Quercus container’ında PHP çalıştırabiliyormuşuz, not düşeyim dedim. Continue reading →


6
Aug 10

Turkcell Teknoloji’de Staj: 5.Hafta

Bugün stajımın beşinci haftası sona erdi. Gün geçtikçe buraya daha yeni yeni ısındığımı fark ettim. 3 Eylül’de stajım bitmiş olacak. :)

Bahsettiğim projenin alt yapısı ve dokümantasyonu tamamen bitti. Geriye yük testleri ve arayüz giydirmesi kaldı. Bu nedenle arayüzü bekliyoruz. Çok da güzel bir servis olarak çıkacağına inanıyorum. Özellikle de bu projeden sonra PHP’yi sonsuza dek bir kenara bırakıp Spring Framework’e geçmeyi düşünüyorum. 1 ay boyunca Java ile web uygulamaları geliştirme hakkında ciddi bir know-how edindim. Bundan sonraki projelerimde de bunu kullanmayı planlıyorum.

Arayüzü beklerken ikinci bir projeye başladım. CRUD bir işten ziyade daha AR-GE sayılabilecek bir projenin birkaç parçasını üretiyor olacağım. Uzun soluklu (benim sonunu göremeyeceğim) proje olmasına rağmen ileride büyük işler yapabileceğine inandığım bir altyapıya katkıda bulunmak da güzel bir duygu. Continue reading →


6
Aug 10

Turkish Deasciifier for Java

Bir süredir ufak tefek NLP projeleriyle ilgilenmeye başlayan ben, Deniz Yüret’in hazırladığı Emacs Turkish mode‘un Emre Sevinç tarafından yapılan Python çevirisini Java için uyarlamış bulunuyorum.

Deasciifying kelimesi ilk etapta yabancı gelebilir, özetle Latin alfabesindeki harfler kullanarak yazılmış Türkçe yazıları tekrar Türkçe’ye özel harflere  kavuşturma işlemi olarak tanımlayabiliriz. Turkish deasciifier‘ın yaptığı da tam olarak bu. Türkçe klavye sahibi olmayanlar (veya sahip olup İngilizce ayarında kullanmaya alışmış olanlar), uzun yazılar yazdıklarında bunu Türkçe harflere çevirmek için bu kütüphaneyi kullanabilirler.

Örneğin:

Hadi bir masal uyduralim, icinde mutlu, doygun, telassiz durdugumuz.

yazısı, deasciifying işlemi sonrasında aşağıdaki gibi olacaktır:

Hadi bir masal uyduralım, içinde mutlu, doygun, telaşsız durduğumuz.

Kullanım alanlarına örnek verecek olursak, bir foruma yazı yazarken veye e-posta yollarken Türkçe karakterleri düzeltmek istiyorsanız kuracağınız bir Firefox veya Chrome eklentisi ile tek tuşla anında yazıyı düzeltebilirsiniz. Yahut sitenizde ziyaretçilerinizden düz yazı içeriği veya feedback topluyorsanız daha okunaklı olması açısından sitenin backend‘inde bu kütüphaneyi kullanabilirsiniz. Continue reading →


3
Aug 10

On

Unutup gidersin üç beş güne
Ama vakti gelince hatırlarsın

On yıl sonra mesela
Yalnız başına dolaşırken
Soğuk bir havada
Öyle bir ben geliveririm aklına
Yüzüm gelir gözünün önüne
Kahverengi saçlarım
On yıl önceki ben
Hatırlarsın bir çift küpeni
Bende unuttuğun

Üşürsün her esintiye
On yıl eskilerden gelen
Koruyamaz seni yine
Bahanelerin
Ardına saklandığın
On yıl önce

On olmasa da
Beş yıl sonra mesela
Hatırlarsın ilk sevgilini
Severken bırakıp gittiğin

Üzülme
Yine unutursun üç beş güne
Ama vakti gelince hatırlarsın

09.06.2010 04.00


1
Aug 10

Güneş en son batarken

Rüzgar güllerine karşı gün batımı - Devletşah Özcan

Güneş en son batarken
Bozcaada üzerinden
Bir kızın saçları kızıl
Güneşe doğru
Hafif bir rüzgâr ve
Dudaklarında kuruntu

Güneş en son batarken
Gözlerinin önüne düşen saçlar
Çok uzaklarda rüzgâr gülleri
Keman sesiyle enstrümantal
Ceplerinde kaçınılmaz vedalar
Bir otobüs kalkar çok uzaklara
Geride bıraktığı gözler ağlar.

ahmet balkan / 27.12.2009 02:10