Sefer Algan'ın Günlüğü

Günlüğüme hoşgeldiniz...

March 2005 - Posts

Stack Over Flow (Stack Taşması)
Bir ögrencimden gelen soru ve cevabini sizlerle paylasiyorum

 -> Soru : Sonsuz bir döngü içerisinde bir metot çagrimi yapiyorum. CPU kullanimi %100 olmasina ragmen baska bir hata almiyourm. O zaman neden sonsuza kadar kendini çagiran(recursive) bir metot çagrimi yaptigimda belli bir süre sonra "Stack Over Flow" hatasi aliyorum.

-> Cevap : Bir fonksiyon çagrimi yapilmadan önce islemci bir önceki islem ile ilgili bilgileri stack dedigimiz bellek bölgesinde saklar. Böylece metodun icra edilmesi sonlandiginda islemci kaldigi yerden komutlari çalistirmaya devam eder. Sorudaki ilk senaryoda bir metodun çagrilmasi bittikten sonra ayni metot yeniden çagriliyor, dolayisiyla istedigimiz kadar metodu çagiralim bir önceki islemleri tutmak için ayrilan bellek bölgesi her zaman "bir fonksiyon çagrimlik" ekstra bilgiyi tutacaktir. Oysa ikinci senaryoda daha fonksiyonun çalismasi bitmeden siz yeni bir çagrim yapiyorsunuz ve bu durumda mevcut islem daha sonra devam edilmek üzere stack bölgesine atiliyor. Bu boyle sonsuza kadar gittiginde belli bir süre sonra stack dolacak ve bu geri dönülmek üzere saklanan veriler için yer kalmayacaktir. Iste bu tür durumlarda isletim sistemleri "stack over flow" hatasi üretirler.
C#nedir?com'dan yeni bir program : .NET Akademi
7. Dönem C# Akademi eğitimi tamamlandı..
Bir C# Akademi egitimi daha sona erdi. 7. Dönem C# Akademi egitimi ile birlikte bir yilida doldurmus olduk. 8. C# Akademi 16 Nisan'da Ankara'da baslayacaktir. Bir yili geride biraktigimizda ilk C# Akademi egitimlerine katilanlarin C# ve .NET ile çok güzel ve basarili projelere imza attigini duyuyor olmak bizi ayrica mutlu etmekte ve dogru yolda oldugumuzu göstermekte.

7.Dönem C# Akademi katilimcilari ve egitmenlerden Sefer Algan
Gelibolu (Gallipoli) Belgeseli

C.tesi günü bir türk yonetmen tarafindan büyük emeklerle yapildigi soylenen sözüm ona Çanakkale  zaferimizi anlatan Gelibolu belgeselini izlemeye gittim. Gittigime bin pisman olmakla beraber tarihimizdeki bu sanli zaferin ne kadar farkli bir tarzda ele alindigina sahit oldum. Üstelik belgeselin yönetmeni bir türk. Müttefik anzak askerlerinden bahsederken , "onlar vatanlari için sehit oldu" diyor seslendirmede. Acaba vatani için sehit olan Türk askerimi yoksa anzaklarmi? Çanakkale bogazini asip istanbul'u kusatmaya ve isgal etmeye gelen bir ordunun ölen askerleri vatanlari için sehit olmus diyor sevgili yonetmenimiz. Evet demekki bu vatan bizim degil onlarin, burdan baska anlam çikaramiyorum ben. Dahasi ben sanli bir türk ordusuna yönelik methiyeler beklerken nedense belgeseli çeken yonetmenimiz Türk ordusunun ne kadar büyük bir ordu oldugundan hiç bahsetmiyor ve hep yabanci tarihçilerle yapilan soylesilerde Türk ordusunun "düsman asker" olarak betimlemesi yapiliyor her an. Üstelik türk ordusunun zaferi, ordunun yetenek ve marifitlerine degilde nedense  doga sartlarina ve düsmanin zaafiyetine baglaniyor..

Belgeseli gidip görünüz ama lütfen bu elestirilerim isiginda seyredin ve ne kadar hakli oldugumu göreceksiniz.

Önce Metal Firtina sonra da bu belgesel.. acaba bunlar psikolojik yipratmanin birer parçasi mi bilmiyorum..

Tür dönüşümü ile ilgili 11 Soru?
Asagida C# dilinde yazilmis 11 ifade var. x int türünden bir degisken olmak üzere bu 11 ifadeninin üretecegi deger ne olur (true, false) ... Bakalim 11 soruyada dogru cevap veren olabilecekmi?

  1. x == x
  2. (object) x == (object) x
  3. (System.Object) x == (System.Object) x
  4. (int) (object) x == (int) (object) x
  5. (float) x == (float) x
  6. (int) x == (int) x
  7. (int) x == (float) x
  8. (float) (int) x == (int) (float) x
  9. (System.Int32) x == (System.Int32) x
  10. x.ToString() == x.ToString()
  11. (object) x.ToString() == (object) x.ToString()

    Not : Bu örnegi aldigim yeri simdilik soylemiyorum : çünkü cevaplari da var orda :)
Google Logoları - Google Logos

Google iyi bir arama motoru olmasinin yaninda ayni zaman da ara sira degistirdigi güzel ve yaratici logolariyla da herkesin dikkatini çekiyor. Benim sahsen çok takdir ettigim bir çalisma bu, iyi akil edilmis. Merak edip bu artistik logolari kimin yaptigini arastirdim. Tabiki google ile yaptim bu arastirmayi :)

Google logo lari ile ilgili site bile yapilmis. Demekki benim kadar baskalarida bu çalismaya hayli ilgi göstermis. http://www.logoogle.com sitesinde google logo yarismasi düzenleniyor. Ilginç google logolari var. Hayli eglenceli bir site.

Google'nin logolarini yapan kisi 23 yasinda bir Kore'li genç. Kendisi ile yapilmis bir soylesi var burada : http://www.logoogle.com/dennishwang.htm

Eger su anada kadar Google anasayfasinda hangi logo lar kullanildi diye merak ediyorsaniz yil bazinda bu logolari görebileceginiz adres :http://www.google.com/holidaylogos.html Yine bu da eglenceli bir çalisma.

Ne diyelim, Allah google'i basimizdan eksik etmesin.

Metal Fırtına Kitabı
Bugün 18 Mart, yani Çanakkale destaninin yil dönümü. Bugünün bende en etki birakan yani ise bu anlamli günde olasi Türkiye-Amerika savasinin kurgusundan olusan "Metal Firtina" (Orkun Uçar,Burak Turna) kitabinin son sayfasina gelmis olmamdi. Evet, Metal Firtina kitabi herkesin dillendirmekten korktugu bir olasilik üzerine yazilmis. Bu kitabi okuyacak her vatandasin tüylerinin diken diken olacagindan hiç süphem yok. Hele birde her gün Amerika'nin F-bilmem kaç uçaklariyla havaya uçurulan Bogaz köprüsünden geçiyorsaniz, helikopterlerden düsen bombalarla yan yatmis Istanbul'un en büyük binasi olan Is kulelerini her gün iki defa görüyorsaniz, Amerikan askerlerin Maslaktaki kolordunun bulundugu bölgeyi kusatip kendilerine üs yaptigi yerin hemen karsisinda(itü kampüsü) isyeriniz varsa eminim sadece tüyleriniz diken diken olmakla kalmayacak ayni zamanda içinizden bir nefret de beslemeye baslayacaksiniz. Her ne kadar bu kitabin bir politik kurgudan ibaret oldugunu algilayabilecek düzeyde de olsam bir vatandas olarak kitabi bitirdigimde güzelim ülkenin kitapta anlatildigi hallerde hayal etmem bende derin yaralar birakti.
Bir düsünsenize havalimanlari yerle bir edilmis, anitkabiri havaya ucurulmus, bütün devlet daireleri bombalanmis, enerji kaynaklari kontrol altina alinmis bir ülkenin sonu ne olur...

Umarim bu kitapta kurgulanlar gerçeklesmeyecektir, ama yinede her ihtimale karsi hazirlikli olmak lazim.

Bu yüzden dünya barisi için bana düsen görev neyse üstlenmeye hazirim.
C# Akademi Ankara'da
Ankara'da 16 Nisan'da açilacak olan C# Akademi için bir ay boyunca haftasonlari Ankara'da olacagim. Ankara'li dostlarima duyrulur.
C# vs VB.NET
Dim As Double = 5000
Dim 
As Double

x * (10 100)
    double 5000;
    double 
0
;

    
x * (10/100);

Yukarida birbirinin neredeyse es degeri olan iki kod parçasi görüyorsunuz. ilk blok VB.NET ikincisi C# ile yazilmis. Birinci durumda y degiskenin degeri 500 oluyorken 2.sinde yani C# dilinde y degiskenin degeri 0 oluyor. Bu basit örnek bile her iki dilin temelde ne kadar farkli oldugunu gösteriyor.

İnternet != Sınırsız Özgürlük

Malumunuz intenette yayin yapan bir çok site bir çok sebepten dolayi üyelik sistemine göre çalisiyor.  Bugün çok enteresan bir hizmet veren site gördüm. Bu site  üyelik sistemi ile hizmet veren sistelere ait kullanici adi ve sifreleri dagitiyor. Peki bu bilgileri nereden topluyor? Tabiki bu siteden fayda(!) görmüs diger insanlardan. Söz gelimi siz www.codeproject.com da bir makale gördünüz ama üye degilsiniz ve okumak için üye olmaniz gerekiyor, bu gördügüm site sayesinde üye olmuyorsunuz ve gidip o siteden "bana codeproject te geçerli olan bir kullanici ve sifre ikilisi ver" diyosunuz ve size veriyor. Bir kaç ücretli siteyi denedigimde de basarili oldugumu gördüm. Once hayrete kapildim sonrada üzüldüm. Acaba internet insanlara sinirsiz özgürlük hakki mi veriyor? Bilgiyi bu sekilde paylasmak dogrumudur? gibi sorulara cevap aradim ama tam tatmin olamadim. Sizinle paylasmak istedim, görüslerinizi merak ediyorum.

Not : Simdilik bu tarz bir sistemin toplum kurallari (etik) ve telif haklari açisindan uygun görmedigim için sitenin adresini en azindan kendi günlügümde paylasmak istemedim.

Sisteme yüklü Culture değerlerini elde etmek!

Uluslararasi çapta kullanilacak bir yazilim gelistiriyorsaniz, uygulamanin hangi kültür üzerinden çalisacagini programi kullanacak kisiye seçtirmeniz lazim. Windows sistemine yüklü kültürleri .NET'te asagidaki gibi elde edebilirsiniz.

using System;
using System.Globalization;

class Kültürler
{
  
static void Main()
  
{
     
foreach(CultureInfo ci in CultureInfo.GetCultures(CultureTypes.InstalledWin32Cultures))
     
{
       
string output = String.Format("{0,40} -> {1}",ci.EnglishName ,ci.ToString());
       
Console.WriteLine(output);
     }
  }
}

EE&MEA bölgesinde en çok MVP Türkiye ve İsrail'de

Büyük resim için tiklayiniz.
Yandaki resim Prag'daki EE & MEA MVP Open Days toplantisinda bütün MVP'lerin katilimi ile gerçeklesmistir. Bu kadar(135) MVP'yi bir arada görmek ilginçti. Resimdeki insanlar Dogu Avrupa, Ortadogu ve Afrika bölgelerinin MVP'leridir. Bu 3 bölge arasinda en çok MVP'yi 19 kisi ile Türkiye ve Israil paylasmaktadir.
TCK yasası ile birlikte yeni arayışlar
1 Nisan'da yürürlüge girecek yeni Türk Ceza Yasasi ile basin hirsiza hirsiz, hortumcuya hortumcu diyemeyecek. Peki bu kisileri gazeteler okurlarina nasil anlatacaklar? Suç dünyasinin terimlerinin yeni anlamlarini okuyunca gülmekten kirilacaksiniz.. Örnegin: HIRSIZ: Kaynak arayisi içinde olan girisimci vatandas..

HORTUMCU: Hortumun emis özelligini parasal alana uygulayan bulus adami
RÜSVETÇI: 'Benim memurum isini bilir' felsefesinin masum müridi
SAHTEKAR: Bir seyin aynisini yapma derdindeki yaratici insan
KALPAZAN: Merkez Bankasi fahri çalisani
TECAVÜZCÜ: Güzellikler karsisinda çaresiz kalan yigit
HOLIGAN: Döner biçakla gezen spor düskünü
KAÇAKÇI: Var olusunu sinirlar ötesinde arayan macera tutkunu gezgin..
KAPKAÇÇI: Kadinlarin çantasinda ne oldugunu çok merak eden macera tutkunu kisilik
UYUSTURUCU SATICISI: Mutluluk pesindeki insanlari hatir için madde bagimlisi yapan dost
KADIN SATICISI: Dostlarini birbiriyle tanistirip yüzdesini alan güzel huylu insan
KIRALIK KATIL: Para ile kisiligini satmayan mütevazi yaratik
YANKESICI: Cebimizdekilere ilgi ve tutkuyla yandan yaklasan muzip
DOLANDIRICI: Saf vatandaslara saka yapan komik ruhlu masum
MAFYA: Yasalarin olmadigi bir toplumda islerin daha kolay yürüdügünü ispata yönelik özel kurulus
SÖMÜRÜCÜ: isçiye is verip para vermeyen güzel mütesebbis

Kaynak : Haber Turk

Bu ve bunun gibi arayislarin nerdeyse tamami AB ye girecegiz diye oluyor.

Mart ayı VSTS Webcast'leri

21-22-23-24-25 Mart tarihlerinde MSDN'de VSTS (Visual Studio Team System) ile ilgili pespese asagidaki bes webcast yayinlanacak.

1 - Introduction to Visual Studio Team System
2 - Drill down into Visual Studio Team System: Team Architect Edition
3 - Drill down into Visual Studio Team System: Team Developer Edition
4 - Drill down into Visual Studio Team System: Team Test Edition
5 - Drill Down into Visual Studio Team System: Foundation Server/Third-Party Integration

Webcast'ler hakkinda bilgi ve kayit için : http://msdn.microsoft.com/events/webcasts/ 

VSTS'yi merak edenlerin bu 3 etkinligi kaçirmamalarini öneririm. Kaçirsaniz bile kaydedilmis hallerini izleyebilirsiniz ama online takip ederseniz sunan kisiye soru sorma sansiniz var.

Miguel De Icaza
Geçtigimiz günlerde Mono projesinin lideri olan Gnome gelistiricilerinden Miguel De Icaza bir etkinlik için Istanbulda idi. Yogun programimdan dolayi çok istememe ragmen katilamadim malesef bu etkinlige. C#nedir?com ekibi Miguel de Icaza ile çok güzel bir roportaj yapti. Çok yakin bir zamanda video formatinda www.csharpnedir.com sitesinden indirebileceksiniz. Simdiden röpörtaji düzenleyen C#nedir?com ekibinden Sadun sevingen, Oguz yagmur ve Caner sahan'a  tesekkür ederim
EMEA Architects Forum 2005
3 Mart Persembe günü Istanbul'da düzenlenen EMEA Yazilim Mimarlari Forumuna katildim. ThoughtWorks ve Microsoft mimarlari çok güzel sunumlar yaptilar. Etkinligin ana temasi Integration & Interoperability (I&I) yani Entegrasyon ve Birlikte Çalisilabilirlik idi. Bu kapsamda microsoft'un mimari açidan üzerinde çok durdugu "Enterprise Integration Patterns" ve "Enterprise Solution Architecture" gibi konulara deginildi. Günün bende en çok etki birakan sözün orjinali ise su sekilde : "Web services are expected to become default Messaging solution in the future". (Web servislerinin gelecekte varsayilan mesajlasma çözümü olacagi beklenmektedir. ) Sanirim bu cümle web servislerinin ne kadar önemli bir yatirim araci oldugunu gösteriyor.
Ulusal İşletim Sistemi : ULUDAĞ
Ulusal isletim sistemi diye lanse edilen bir yazilim hakkinda bir akademisyenin ilginç ve düsündürücü yazisi : http://www.btdunyasi.net/index.php?module=corner&corner_id=86&cat_id=22 Bazi noktalarda yazinin yazarina katilmamak elde degil. Örnegin koskoca bir isletim sisteminden bahsediyoruz ama bu isletim sisteminin teknik özelliklerini anlatan bir web sayfasi yok. Biraz amatörce bir çalisma izlenimi veriyor bu durum bencede. Biraz daha profesyonel çalisma ve destekle daha iyi isletim sistemleri üretilebilir. Ulusal bir isletim sistemi 5-10 kisilik bir ekibin gönüllü olarak yapacagi bir proje olarak çikmamalidir. Buna ragmen ekip zor bir isi yarim yamalakta olsa basarmistir, kendilerini tebrik ediyorum, umarim profesyonel destekle daha güzel ve elle tutulur bir isletim sistemi olur.

Not : Ben henüz Pardus dedikleri dagitimi kurup incelemedim ama inceleyenlerden ögrendigim kadariyla açilisi çok ama çok yavasmis, ne kadar dogru bilemiyorum.
Prag anılarım: EE&MEA MS MVP Toplantısı

Soguktan iki büklüm olmus olarak poz vermeye çalisiyorum.
Prag anilari : Geçen hafta sonu 3 günlügüne EE & MEA Bölgesel MVP toplantisi için Prag'daydim. Toplam 20 ülkeden 135 MVP'nin katildigi etkinlikler çok eglenceli geçti. Ilk gün güzel bir sehir turu yaptik. Ilk gün fotograf makinem tutukluk yapinca biraz keyfim kaçti ama sonraki günler de az da olsa resim çekebildim. Özellikle Charles Bridge dedikleri yer çok etkileyiciydi. Müthis bir manzarasi var ama eksi bilmem kaç derece de o müthis manzaranin keyfini fazla çikaramadik. Hava tahmin edemeyeceginiz kadar çok soguktu(yandaki resimden anlasiliyor sanirim). Sanirim Prag kisin gidilebilecek en son yer. Belki yazin daha turistik bir seyehat için gidebilirim. Prag'da dikkatimi çeken seylerden birisi tarihi eser diyebilecegimiz yapilarin çok fazla olmasiydi. Etrafta gördügüm her bir bina ayri bir mimari hava saçiyordu etrafina. Yanda gördügünüz resimdeki meydan Prag'in en ünlü meydani sanirim. Bütün olaylar bu meydan ve atrafinda cereyan ediyor. Zaten prag diyince akla gelen ilk yer burasiymis, baskada gezilecek bir yeri yokmus. Tabi birde Charles Bridge ve Prag kalesi civari var.

Egitimlere gelince; Microsoft'ta çalisan çesitli kisiler tarafindan Whidbey,Yukon, VSTS,MSBuild gibi konularda seminerlere katildim. Açikcasi zaten bunlari biz Türkiye'de çoktan düzenlemis oldugumuz için bana pek birsey katmadi. Ama yinede en yetkili agizlardan bilgilerimizi pekistirmek faydali oldu.
Efendim, beni bilen bilir damak tadim son derece kuvvetlidir. Prag'da resmen aç kaldi(m)(k). Allah'tan tavuk gibi evrensel bir hayvanimiz varda tavuk yiyerek açligimizi biraz giderdik. Bir kere daha anladim ki Türk mutfagi dedigimiz sey hakikaten ayri bir yerde. Yok yok bunlar yemek yapmasini bilmiyorlar, sahi hiç yagsiz ve tuzsuz pirinç pilavi yapilirmi?
Hayatimda yiyebilecegim en kötü yemegi yiyordum. Masadaki arkadaslarimda (soldan saga: Aykut Tasdelene,Hakan Ulagan, Oguz Küçükbarak,Yeliz Korkmaz,Hasan Çolpan,Nuri Çankaya ve Ben )benle ayni fikirde