Archive for January, 2009

8 yaşında Microsoft sertifikası aldı

Tuesday, January 20th, 2009
windowssu “Daha önce 9 yaşında Microsoft sertifikası alan Hindistanlı M. Lavinshree’den sonra 8 yaşında Makedonyalı Marko Calasan da benzer bir sertifikayı almayı başardı. Microsoft IT Uzmanı sertifikası alan Calasan, bu alandaki en genç kişi unvanını da kazandı.Mozart of Computers (Bilgisayarların Mozartı) olarak anılmaya başlayan Marko Calasan, bilgisayar mühendisi olmak istediğini açıkladı.”

haber kaynağı: www.uruninceleme.com

2003-2004 yılında ben de MCSD.NET sertifikalarını almak için harekete geçmiştim. Bu sertifikasyonların nasıl alındığını bilmediğim için kursuna da gitmiştim, halbusi hiç gerek yokmuş. Kursta konular yüzeysel olarak anlatıldı, aradan aylar geçti kurs bitti. Ben kendi çabamla da, kitaplarla falan olayı güzel kavradım. Sıra sınava girmeye gelmişti.

Sınav olayı tam bir muamma idi. Sınavla ilgili bildiklerim ingilizce olduğu ve $70 bayılmamız gerektiği idi. :) Ne tip sorular çıkar, ne sorar bu adamlar, kaç soru vardır bu konularda hiç bilgim yoktu. Ben de microsoft’un resmi sınav hazırlık kitaplarını alıp ordan çalışmaya başladım.

Bu kitaplara da hatırı sayılır bir para verdiğimi söylememe gerek yok herhalde :) Herneyse, kitaplardan çalıştım fakat ortada hala sınavda ne sorulduğu ile ilgili bir bilgi yoktu. Çünkü kitaplar da kursta olduğu gibi C# dili ile, .NET frameworkü ile ilgili konulardı. Örnek test sorusu bulunmuyordu. Çünkü örnek sorular da para ile satılıyordu! :)

Napcaz netcez derken,internette Test King adı altında bir takım pdf dosyalarının dolaştığını öğrendim ve bu dosyaları indirdim. İşte nihayet beleş örnek soru buldum dedim. Sorularda biraz gariplik vardı ama neyse dedim. Bazı sorular ömrümde dahi görmediğim (ve göremeyeceğim) abuk subuk şeylerle ilgili idi. Fazla sallamadım, anlamadığım soruları “demek buymuş cevabı” diyerek kafama yerleştirdim. Arada bir iki de hatalı soru vardı. Dedim free bişey bu normaldir hata olması. Örneğin bir soruda A a = new A();  olması gereken cevapta A a = new A; yazılmıştı. Bu önemli…

Sınav günü geldi çattı. 70 dolarımı verdim (olayın her aşaması paralı yawhu) sınav bilgisayarının başına oturdum. Sınav başladı. Ben soruları çözüyorum, derken sorular tanıdık çıkmaya başladı. Lan bu soru test king’den, aaa bu soru da test king den. Ne güzel dedim yawhu, derken bizim hatalı sorunun aynısı hatalı hatalı karşıma çıkmasın mı!?!?

O an “kandırılıyorum” psikolojisine girdim. Öyle ya, koskoca microsoft sertifika sınavında test king’deki hatalı soru aynen hatası ile birlikte çıkar mıydı? Olsa olsa sınav merkezi beni kandırıyor olmalıydı. Sınav gerçek olamazdı!

Bu psikoloji ile sınavı bitirdim, 5-10 dk sonra sınav sonucu geldi, artık Microsoft Certified Professional olmuştum. Ne saçma bir title, mikrosoft sertifikalı profesyonel. Ama neyin profesyoneli? Bu tamamen ilk sınava girdikten (70 doları verdikten) sonra gaza gel, tüm sertifikaları topla diye düşünülmüş bir amerikan tezgahı idi.

Artık profesyonel de olmuştum, Bill amcamın imzalı kartı gelmişti bana taa amerikalardan, artık ikinci sınava Web Services sınavına girmek için hazırlanabilirdim, hemen tabiki test king’ini indirdim. Birkaç soru çözeyim dediğimde apışıp kaldım. Neredeyse hiçbir soruyu doğru cevaplayamadığımı, tüm soruları geçtiğimi gördüm. Nasıl olabilirdi böyle bir durum? Oysa kendimce gayet iyi C# biliyordum, her türlü işimi de yapabiliyordum çünkü ben bir profesyoneldim. Alla alla abuk subuk konular, absürd microsoft kitaplarını referans gösteren sorular vs vs bunlar neydi böyle? O zaman dedim ki neyse ezberleyeyim bari, çünkü sınavda aynı sorular çıkıyordu, sorun yoktu :)

Ben sınava girene kadar aradan bi 6 ay falan geçti, sınava girmeden test king’in yeni versiyonuna bir göz gezdireyim dedim, bir de ne göreyim? İlk baktığımda A cevabı verdiğine şimdi B demiş?!? Neredeyse tüm cevaplar değişmiş. Yani resmi sorular ve çalışma kitapları paralı satılsın diye sorular o kadar absürd ve alakasız ki, test king de bile emin olamamışlar cevaplara. Bunu görünce oeh diyerek sertifikaların hiç bi işe yaramadığı, hepsinin bir tezgah olduğu konusuna karar kıldım.

Aradan geçen bu kadar yıldan sonra bu haberi görünce bu yazıyı yazmak istedim. Değil 8 yaşında çocuk, papağanlar bile (ezberleri kuvvetli olduğu için) bu sertifikaları alabilir. Bundan daha normal bişi yok. Sağda solda MCSD MVP MVT MXME gibi title’ları görünce gülüyorum artık :) Anlıyorum ki bu kişilerin ezberi çok kuvvetli :)

Köşesini okurken köşe olduğum yazar, Yılmaz Özdil

Monday, January 19th, 2009

iyi ki varsın Yılmaz Özdil

Süperpen Yılmaz Özdil

Çok fazla (hiç) gazete okuyan bir insan değilim, haberleri genelde internetten veya tv den takip ediyorum. Bu yaşıma kadar da düzenli olarak bir köşe yazarı okumuş değildim. Geçen sene arkadaşımın ilettiği maillerde tanıdığım Yılmaz Özdil bana bu alışkanlığı kazandırmış bence çok değerli bir gazeteci. Kendisini ayrıca Star Tv deki haber bültenine yaptığı katkılardan dolayı tebrik ediyorum. Her neyse, arkadaşım Özden’in ısrarlı iletileri ile okumaya alıştıktan sonra aralıksız hergün (pazartesileri hariç, o gün yazmıyo) köşesini internetten takip ediyorum. Yazı tarzı o kadar harika ve zeka dolu ki her sabah ofiste kahkahayı patlatıyorum arkadaşlar tip tip bana bakıyolar. Memleketimizin gidişhatını her gün gözler önüne seren yazıları ile kurumuş beyinlerimize kan pompalayan, hem güldürüp hem düşündüren, kendisinden çok şey öğrendiğim bir yazar.

Beraberinde Bekir Coşkun’u da okumaya başladım. Kendisi de inanılmaz bir gazeteci. İkisini de yürekten destekliyorum. Ama dediğim gibi Yılmaz Özdil’i nereye gitse takip edeceğim, inanılmaz bir insan kendisi. Benim alıştığım gibi ben de insanlara Yılmaz Özdil okumayı alıştırmaya çalışıyorum. Bu yazıyı da bu yüzden yazdım. Hiç okumadıysanız Yılmaz Özdil’in Hürriyet’deki yazıları linkinden bir iki yazısını okuyun, bana hak vereceksiniz.

yılın patlak dizisi : heroes

Sunday, January 18th, 2009

çakma kahramanlar

  İki sene önceydi herhalde ilk bölümlerini keyifle izlediğimde. Süper kahraman güçlerine sahip olduklarını öğrenen değişik karakterde bir grup insan dünyayı kurtarmaya çalışıyordu. Her bölüm bizimle beraber kendilerini keşfediyorlardı. Bir de karmaşık bir zaman kurgusu işi bayağı tatlandırıyordu. Özellikle Hero isimli japon karakterin bence dizinin sevilmesinde epey önemli bir yeri vardı. Birinci sezon bir türlü yenilemeyen kötü karakter Syların dayak yemesiyle son bulmuştu. Son bölümlere doğru biraz sıksa da güzeldi.

İkinci sezon başladıktan kısa bir süre sonra ölmüş olması gereken Sylar yeniden ortaya çıktı. Sanki yeni bir karakter yaratamayacak kadar kıt olan senaristler bu uyuz herifi tekrar diziye soktular. Orda dizinin saçmalamaya başladığına kanaat getirmiştim. Gerçekten de ikinci sezon tatsız ve vasat giderken bir de “senaristler grevi”ne denk gelince löpçük diye olması gerekenden erken biterek (prematüre) ağzımızın tadını iyice kaçırdı.

Aradan uzun bir zaman geçtikten sonra üçüncü sezon televizyonlarda oynamaya başladı. Gene Sylar, gene aynı teraneler, ölmüş adamların ısrarla tekrar ısıtıp ısıtıp önümüze konulması bende mide bulantısı yarattı ve üçüncü sezonun ilk bölümünün ortasında izlemeyi bıraktım. Yok o onun annesiymiş o onun dayısıymış, bilmemneymiş. Zaten kıl olduğum Sylar, ilk bölümden bizim pompon kızı yakalayıp gücünü aldı. Sonuç, hiç! Koskoca birinci sezon buna engel olmaya çalışmışlardı noldu, hiç?

çakma kötü adam sylar

çakma kötü adam sylar

Velhasıl bu yılın en patlak dizisini geçen senelerin şampiyonu CSI:NY dan alıp, Heroes’a veriyorum…

apache mod_jk ile jboss’a yönlendirme yapmak

Saturday, January 17th, 2009
dedim ya, jboss cluster ile uğraşıyorum, baya bi uraştım ama henüz 2 sunucuyu birbirine göstertemedim :) hesapta “aynı networkte otomatik olarak birbirlerini görmeleri” gerekiyormuş ama beceremedim daha.

bu işler ile uğraşırken, apache mod_jk ayarı yapmayı öğrendim, apache’yi load balancer olarak kullanıp aynı zamanda statik içerikleri sunarken diğer istekleri başka bir uygulama sunucuya yönlendirmeyi sağlayan bu modülü hep merak ediyordum. meğersem ayarlaması çok basit imiş. nasılmış?

1) önce uygun mod_jk.so dosyasını apache’nin sitesinden indirip /etc/httpd/modules dizini altına atıyoruz

2) /etc/httpd/conf/httpd.conf dosyasının sonuna şu satırları ekliyoruz:
# Add this to the end of httpd.conf
LoadModule jk_module modules/mod_jk.so

<IfModule mod_jk.c>
Include conf/modjk.conf
</IfModule>

3) /etc/httpd/conf/modjk.conf dosyasını oluşturup içine:
JkLogFile logs/modjk.log
JkLogLevel info
JkWorkersFile conf/jkworkers.properties
JkMountFile conf/jkmount.properties

# JK Balancer manager
<Location /status/>
JkMount jkstatus
Order deny,allow
Allow from all
</Location>
4) /etc/httpd/conf/jkworkers.properties dosyasını oluşturup:
worker.list=jboss,jkstatus

# First Node
worker.node1.type=ajp13
worker.node1.host=node1.server
worker.node1.port=8009
worker.node1.lbfactor=1
worker.node1.disabled=false
worker.node1.socket_timeout=10
worker.node1.connect_timeout=20000

# Second Node
worker.node2.type=ajp13
worker.node2.host=node2.server
worker.node2.port=8009
worker.node2.lbfactor=1
worker.node2.disabled=false
worker.node2.socket_timeout=10
worker.node2.connect_timeout=20000

# Load balancer
worker.jboss.type=lb
worker.jboss.balance_workers=node1,node2
worker.jboss.sticky_session=true
worker.jboss.sticky_session_force=false
worker.jboss.method=R
worker.jboss.lock=P

worker.jkstatus.type=status

5) /etc/httpd/conf/jkmount.properties dosyasını oluşturup yönlendirmek istediğimiz pathleri yazıyoruz:
/hede/*=jboss
6) apache’yi restart ettikten sonra artık /hede/ yazdığımız zaman bu istek jboss’a yönlendiriliyor olacak. aynı zamanda jboss’lardan biri down olduğu zaman istek öbür jboss’a gidecek.

konunun detaylarına çok hakim değilim tabi. lazım olunca araştırıcam :D

JPA ile JBoss Cache kullanımı

Saturday, January 17th, 2009

Bu aralar jboss cluster kurmaya çalışıyorum, bunun için uğraşırken şu an için kullandığım cache yapısının da değişmesi gerektiğini farkettim. Normalde JPA ayarlarında Ehcache kullanıyor idim, ancak cluster yapısına geçtiğimde varolan Ehcache konfigürasyonum distributed olmadığı için sunucuların veritabanı cache’leri birbirinden farklı olacak ve örneğin A sunucusunda update işlemi yapıldığında B sunucusunda bu veriler cache de ise invalidate olmayacağıdan bu sunucuda ilgili istek olduğunda problem ortaya çıkacak.

Bu yüzden veritabanı cache yapısının da cluster yapısına uygun olması gerekiyor.  Bu yüzden JBoss’un cache yapısını test edeceğim. Hem Ehcache gibi dışarıdan bir kütüphaneye de ihtiyacımız kalmamış oluyor. Tabi JBoss bağımlılığımız artıyor o da ayrı bir konu.

JBoss Cache’i JPA ile kullanmak için, persistence.xml’de

<property name = “cache.provider_class” value=”org.jboss.ejb3.entity.TreeCacheProviderHook”/>
<property name = “treecache.mbean.object_name” value=”jboss.cache:service=EJB3EntityTreeCache”/>

satırlarını eklememiz gerekiyor, bundan sonra entity sınıfımızın tepesine @Cache annotation’ını eklememiz gerekiyor.

import org.hibernate.annotations.Cache;
import org.hibernate.annotations.CacheConcurrencyStrategy;

@Entity
@Table(name = “my_entity”, catalog = “db”)
@Cache(usage=CacheConcurrencyStrategy.TRANSACTIONAL)
public class MyEntity implements java.io.Serializable {

….
}

son olarak da Query nesnelerimize

query.setHint(“org.hibernate.cacheable”, true);

özelliği vermemiz gerekiyor. Şimdilik sadece select testi yaptım, bir kez select attıktan sonra bir daha aynı selecti yapmadı. Ama güncellemelerden sonra nasıl davranıyor henüz test etmedim. Sıcağı sıcağına buraya yazdım :)