Eskiler, Kitap, Programlama, Resim

Kitaptan Öğrenme Olayı

15.02.2008

Şahsi görüşümdür ki  bu bilgisayar aleminde konu bir şeyi kitabından öğrenme olayı olunca insanlar ikiye ayrılıyor. Yapanlar veya yapamayanlar. Sanırım bilgisayar'ın temelindeki 1 ve 0 mantığı doğrudan işin bu kısmını da etkiliyor :) Şimdiye kadar kimi tanıdıysam ya bilgisayar kitaplarını okumayı seviyordu veya konunun tam bir düşmanıydı "ben internetten öğrenirim" şeklinde şiddetli bir savunmaya geçiyordu.

Ben şimdiye kadar bilgisayarda grafik ve müzik konuları dışında (ki bunlar programlama oluyor) ne öğrendiysem işin kitabından öğrendim. Aslında örneğin bir PHP konusunu kafama taktığım anda gider hemen bir PHP Kitabı alırım (ve özellikle ALFA yayınlarını tercih ederim. Dizgisine, şekline şemaline alıştım artık en büyük sevme nedenim bu. Alfa Yayınları! Sizin için en iyisi!) Öncelikle roman okur gibi hiç bir uygulama yapmadan okurum kitabı ve işte seven ile sevmeyenin en iyi ayrıldığı nokta! Ben kitabın teorik kısımlarını, PHP tarihçesini, nerede kullanıldığını falan filan her yerini okurum! İşte bir çok kişi işin bu kısmını sevmiyor ama bana göre bir şeyi öğreneceksen tam olarak öğreneceksin. Mesela PHP'nin ilk zamanlarda Personal Home Page anlamına geldiğini öyle herkes bilmez :) Daha Sonra PHP Hypertext Preprocessor olarak adlandırıldı (GNU : Gnu is Not Unix gibin).

İkinci aşamada kitapta okuduğum yerin üzerinden bilgisayarın başında uygulayarak ve hızlı bir şekilde (bu sefer teorik yok) kitabı bir daha okurum. Bu işlemlerin sonunda halen dili öğrenemediysem ya salaklaşmışımdır (şimdiye kadar olmadı çünkü), ya kitap boktandır ya da bu dili öğrenmesi hakkaten yükten başka bir şey değildir :) Yalnız bu işlemleri yapabilirsem dediğime dikkat edin çünkü C++ konusunda bu işlemleri akıl sağlığımı koruyarak tamamlayamadım bir türlü. Kafada tutmanız gereken o kadar çok şey varki belli bir yerden sonra "Ulan bu ne bee!" diyorsunuz. Oysa C# olsun Java olsun öyle mi hiç canlarım benim. Ben bir dili kullandığım kadarından ziyade tam olarak öğrenmek istediğim için geliyor bunlar hep başıma :)

Bu işlemlerin başında belirttiğim gibi işe kitap ile başlarım fakat kitaptan sonra bitirmem tabii ki. Artık programlama dili veya program her neyse onun temel bilgisine sahibimdir. Bundan sonra internette döküman avı başlar. PDF veya CHM formatında ne kadar döküman varsa indiririm (yaşasın Emule :) onun dışında çeşitli sayfalarda yararlı bilgiler varsa bunları da sayfa sayfa çeker koyarım bir köşeye.

Tüm bunların dışında kitap yazmış arkadaşlarım da vardır. "Atılım Çetin - Bilgisayar Grafikleri" buna en güzel örnek değil midir sayın okuyucular? Ayrıyeten ekteki resimlerdeki kitapları okuyarak bilgi konusunda doruğa ulaşmanız da pek mümkün görünmektedir.

Çizgi Roman, Eskiler, Kişisel, Kitap

Çizgi Roman

02.02.2008

Ulen ne zamandır bir boşluk bulup şu çizgi roman konusunu yazamadım. Uzun zamandan sonra böyle çalışınca afalladım açıkçası :) İşyerine "Dead Can Dance" grubunun full albümlerini getirdim bütün gün takılıyoruz :)

Ne diyorduk bu çizgi roman olayı... Ben çizgi roman kültürünün Türkiye'de yerleşmeye başladığı zamanları bilirim ve her konuda olduğu gibi o zamanları daha bir severim. Marvel Comics firması Amerika ellerinde o Örümcek Adam benim bu Kaptan Amerika senin şeklinde coşarken Türkiye'ye ne yazıkki bu çizgi romanlardan yalnızca bazıları gelmekteydi. Örneğin 10 tane kadar bulunan Örümcek Adam serilerinden yalnızca Amazing Spider Man serisi geliyordu diye hatırlıyorum. Ayrıca Amerika'da 1. sınıf kağıda renkli olarak basılan çizgiroman'lar TR'de renksiz ve sıradan bir kağıda basılıyordu yalnız ben bu sıradan halini şu anki haline tercih ederim.

Türkiye'de çizgi roman olayı 3'e ayrılmıştı diyebiliriz. benim favorim olan Marvel Comics yayınları, DC Comics yayınları (Batman, Superman...) ve klasik Texas Tommiks :) Ben Marvel'in tarzını ve kahramanlarını daha çok sevdiğim için diğerlerine pek bulaşmadım açıkçası ama elime geçtikçe de okudum yani. Mandrake falan vardı mesela Apdullah vardı kankası :)

Daha okumayı öğrenmeden önce Teyzemin Oğlu'na ait olan Örümcek Adam Cilt #3 geçmişti elime. Örümcek Adam çizgi romanını 2 tip halinde bulabilirdiniz o zamanlar. Süper Seri ve Normal Cilt olaraktan. Normal Cilt 15 günde bir yayınlanırdı ve Süper Seri'ler 2 adet normal cildin birleştirilmesinden ibaretti (haliyle ayda bir yayınlanırdı). Ayrıca bu ciltlerin çıkış tarihleri de farklıydı. Yani süper cilt 5. sayıdayken normal cilrt 15. sayıda falandı. Daha sonraları Mega Seri şeklinde 2 adet süper seri birleştirdiler falan ama bu ellerinde kalmış olan çizgi romanları satma tekniğinden başka bir şey değildi ve artık o dönemin sonuna yaklaşılmıştı.

Tek derdim onca zaman Örümcek Adam okuduğum halde bir türlü ilk sayısını okuyamamış olmamdır. Bir gazetenin verdiği yeni dönem renkli Örümcek Adam'lardan biriktirdiğim dönem okudum ama o eski cildi hiç bulamadım. En fazla 2. sayısını okuyabildim.

O zamanlarda Marvel Comics'in Türkiye'deki yayın hakları "Alfa Yayınları"na aitti ve sanırım bu Alfa bugünkü Bilgisayar Kitapları ile ün yapmış alfa Yayınları ile aynı Alfa :) Adamlar gayet güzel iş çıkardılar ve Çizgi roman dünyasında tanınmış ne kadar kahraman varsa hepsini getirdiler. Bunlar arasından Kaptan Amerika, Hulk, Thor, ROM, Silver Surfer, Demir Adam, Fantastik Dörtlü, Punisher, Conan, Kaptan Marvel... sayılabilir ve hemen hepsinin o dönemde yayınlanan bütün sayılarını okumaya özen göstermişimdir :)

Dedim ya daha okumayı sökmeden resimlerine bakmak olsun, gece yattığım zaman anneme okutmak olsun çizgi roman olayına girmiştim bir şekilde. Teyzemin oğlu Deniz de hastası olduğu için bizim de süper güçlerimizin olduğunu düşünemiz gayet normaldi ve çocukluğumuzda sıklıkla süper kahraman olduğumuzu hayal etmemiz kaçınılmazdı :) Bu arada okumayı öğrendikten sonra kendim çizgi romanlara verdiğim için deli gibi okuyordum ve ilkokulda da okuma birincisi olmuşluğum vardır bu sayede :)

Örümcek Adam'ın halen aklıma gelen ve beni gerçekten etkileyen sayıları da vardır hani. Mesela Çakal isimli karakterin Gwen Stacy'nin robotunu uyaptığı ve bir kaç cilt süren seri, Yılan kafalı yaratıklarla olan ve Örümcek Adam'ın zamanda geriye Kral Kull zamanına gittiği hikaye falan bir sonraki ay devamının çıkmasını sabırsızlıkla beklediğim hikayelerdendir.

Örümcek Adam'ın bazı sayılarında Prens Namor'un hikayeleri vardı ki ben bu kısımları hiç sevmezdim. Ulen ben Örümcek Adam okumak için almışım bana ne Namor'dan? Ama yapacak bir işimiz olmadığı için o kısımları da okurduk tabi doyasıya :)

Belirtmiş olduğum gibi Marvel'a ait olan diğer karakterler de Türkiye'de yayınlandı fakat hiç biri Örümcek Adam gibi ünlenmedi. 10-20 tane kadar cilt çıktıktan sonra olayları bitti. Yalnız bir tanesi daha Örümcek Adam kadar dayandı ki bu Ati'nin hastası olduğu Conan'dan başkası değildir. Elime geçtiği sürece okuduğum fakat sürekli bir takip olayına girişmediğim bir çizgi romandır Conan. Adamın süper güçleri bile yoktu yani nesini takip edecektim :)

Örümcek Adam'dan aklıma gelen önemli bir hadise de sanırım arada sırada Türkiye'ye gelen orijinal çizimlerin bozuk olmasından dolayı yayınlanan çizimlerin çok amatör ellerden çıkması idi ve arkadaşlar arasında buna "türk çizmiş" diyorduk. Elin Amerikalısının onca güzel çiziminden sonra bu çizimler pek kesmiyordu açıkçası. Aslına bakarsanız bunları ucuz olsun diye tamamen TR'deki çizerlerin uydurup çizdiğini de düşünmüyor değilim ve şu anda bu fikir bana çok olası geldi :)

Öyle veya böyle yakın zamana kadar özeliikle sahafların da yardımıyla aldığım Örümcek Adam kitaplarını okudum yalayıp yuttum ve yeni çıkan hikayelerle de pek ilgilenmiyorum açıkçası. Yalnız el emeği göz nuru biriktirdiğim kitapları annemin eşe dosta vermiş olması da beni ayrıca yaraladı ama napalım çok yer kaplıyor kitaplar :)

Yani sözün özü her şeyde olduğu gibi "o zamanlar" çizgi roman olayı da güzeldi. Bir sonraki seri çıksa da şu hikayenin devamını okusak derdik. Şimdi o kadar çok çizgi roman var ki hangisini alacağını şaşırıyor insan.

Abiiii! Bu ne yaa! araştırma yaparkene bir siteye rastladım ki olmaz böyle bir yazı :) Alın size ufak bir pasaj :

"Görüldüğü gibi örümcek de muhteşem özelliklere sahip bir hayvandır. Bütün bu özelliklerin örümcekte tesadüfen oluşması ya da hiçbir akla sahip olmayan örümcek gibi bir canlının bu özellikleri planlayıp vücuduna yerleştirmesi elbette imkansızdır. Örümcekteki bu üstün özellikler bize Allah'ın tüm canlılar gibi örümceği de kusursuzca yaratmış olduğunu gösterir.

İşte bugünlerde sinemalarımızda konuk ettiğimiz Örümcek Adam, küçük bir örümceğin sadece birkaç özelliğine sahiptir. Bu özellikleri sinemadaki bir sanal karakterde görüp de heyecanlanırken, aslında çok daha fazlasına sahip olan bir örümcek hakkında düşünmeli ve Allah'ın muhteşem yaratma sanatı karşısında çok daha fazla heyecan duymalıyız. "

Offf sayfada daha neler neler var bu ne yaa :)

Sayfa : http://www.harunyahya.org/guncel/040713_orumcek_adam.html

Alın İşte bulabildiğim kadarıyla bir kaç resim koydum bakın bakın ağlayın.

Kişisel, Komik

Rakı muhabbetsiz gitmez

20.01.2008

Ebola-X:

o paraya biz ne iş kurardık be

Krokiller:

gene kurarız

Krokiller:

ati ibnesi ne bok yiycek acaba

Ebola-X:

öyle olsa flash'in manyak bir ortamı olacaktı

Krokiller:

adam grafik dışında bi zikimden anlamıo

Ebola-X:

olm ne alaka

Ebola-X:

adam c++ bilio köküne kadar

Ebola-X:

ayrıca süper programlama kafası var adamda

Ebola-X:

bariz senden benden zeki yani

Krokiller:

haha

Krokiller:

olsun o kadar ibne

Krokiller:

ben adamla tanıştığımda

Ebola-X:

java c# falan c++'in yerini almaz hiç bir zaman

Krokiller:

(ilkokul yeni bittiydi)

Krokiller:

adam program yazıodu amstradda

Ebola-X:

yaw bir de onun yazdığı zamanlar program yazmak daha da zordu

Ebola-X:

şimdi ne ararsan gir google bulsun

Ebola-X:

o zaman bir şeyi bilemedin mi ara dur mna koyim

Krokiller:

evek

Ebola-X:

kitap yok adam yok

Krokiller:

olm biz zaten

Krokiller:

o zaman ööörenmesek öğrendiklerimizi

Krokiller:

şimdi afedersinde bi zikim olamazdık

Krokiller:

sıradan olurduk daha doğrusu

Krokiller:

şimdiki salaklarda problem çözme kafası yok

Ebola-X:

ya şu anda bilgi çöplük olmuş durumda

Ebola-X:

millet içinde yüzüo

Krokiller:

evet

Ebola-X:

ben sana istediğin programı yapayım yeterki internetim olsun

Krokiller:

eskiyi düşününce dumur direk

Ebola-X:

c++ olsun c olsun hatta perl olsun yani

Ebola-X:

ne istersen

Krokiller:

:D

Ebola-X:

ortam göt oldu duygu

Ebola-X:

yeni projeme bel bağladım artık

Krokiller:

göt ortam, ibne ortam

Krokiller:

hahaa

Krokiller:

devlet sırrı olanamı ?

Ebola-X:

yes

Ebola-X:

çok gizli duygu

Ebola-X:

ama öyle matah bir şey değiş

Krokiller:

bende bi tene develop edem ööle bişey

Ebola-X:

bir tek işleme olayına iyi kasıcam

Krokiller:

hmmzz

Ebola-X:

ulan emule bir zik almaz oldu laaan

Ebola-X:

durduk duyguu

Krokiller:

burdan yapalım

Krokiller:

şimdi

Krokiller:

hafifçe gaza basarken, ayağını debriyajdan çek emre

Ebola-X:

larry 7 gelemedi bir türlü

Krokiller:

oda dursun

Krokiller:

kırmızı yanıo

Krokiller:

sen estetik a yı bitirip estetik b'ye başladınmı emre

Ebola-X:

hit'i çok az abi dosyaların

Ebola-X:

en tırtları kaldı artık

Krokiller:

lan kaç manyak var larry 7 çekçek

Krokiller:

bulduğuna şükret

Ebola-X:

ecstatica 2'yi bu sefre bitirecem abi

Krokiller:

hepiiiimizzzziiin şaaaahsiyeetttitiiiii

Ebola-X:

işte jon joooon cumhuriiyeetiiii

Ebola-X:

eheh olm adam topla adaaam

Ebola-X:

ilk 10 olmalı duygu

Ebola-X:

sen de gel aralarda "yow yow" atarsın

Krokiller:

peki abi

Krokiller:

yow yow

Ebola-X:

yalnız kimle konuşsam bu muhabbeti yapıom

Ebola-X:

ilk 10'a girersek arkamızda bir yow korosu olacak

Krokiller:

vocal yaparım uzun hava gibi arkada

Ebola-X:

soliste ihtiyacımız var aslında

Krokiller:

kanon yaparız yowlardan

Ebola-X:

sen nakarat kısmını iyi söylersin

Krokiller:

dimi

Krokiller:

bunu kaç kişiye söyledin ibne emre

Krokiller:

kaç kişiyle solo yapcam ahahaa

Ebola-X:

aha geldi supersound

Ebola-X:

ben en iyi nakarat'dan önceki piç gibi söylediğim yerleri yapıom

Krokiller:

hahaha

Krokiller:

harbi süper olm orası yaaa

Ebola-X:

jon jon'u doldura doldura söylemişim ikinci kısımda da

Krokiller:

abi çok cingen gibi söylüyon

Krokiller:

jonjon jumhuriyeti gibi çıkıo

Ebola-X:

abe jan jan cumhiriyatı!

Ebola-X:

jan jan jan jan

Ebola-X:

9/8 'lik de yaparız şarkıyı

Krokiller:

:D

Ebola-X:

canlı performansda coşarız

Krokiller:

olur oda

Ebola-X:

böyle bele bağlı eşarplar falan

Ebola-X:

şıkkıdı şıkkıdı

Krokiller:

of ki ne of

Ebola-X:

walla konsepti bulduk gibi

Ebola-X:

güneş gözlüğüyle çıkacam olm ben

Krokiller:

hahaha

Krokiller:

ben maskeyle

Krokiller:

tanınmamak için

Ebola-X:

HAHAHAHA

Ebola-X:

ulan kahkahayı basıodum walla

Krokiller:

adımı sööölesinler tamamda

Ebola-X:

o halimizi gözümüzün önüne getirdim de

Ebola-X:

sen maskeli falan

Krokiller:

suratım bari kazınmasın kamuoyunun zihnine

Ebola-X:

sahneye deliler gelmiş

Ebola-X:

sana kenshin kostümü yaptıralım en kralından

Krokiller:

sonunda deliririz falan

Krokiller:

JON OJN OJOOBBONO JON

Krokiller:

diye

Ebola-X:

iyi iyi konsept iyice şekillendi

Krokiller:

olm sondaki kısım çok sıkı lan

Krokiller:

oraya hastayım

Ebola-X:

tam bateri girince jon jon jon jon

Ebola-X:

jon jon lafını duyduğum anda aklıma bu rap ritmi geldi zaten

Krokiller:

tam film soundtrack'i olur aslında o kısım

Ebola-X:

jon jon jon jon diye

Ebola-X:

eheh sulukule belgeseli

Ebola-X:

abe jan jan cımhiriyatyası

Krokiller:

:D

Krokiller:

isimlerde tutuo

Krokiller:

hayriye, jale, melaaat

Krokiller:

sahne isimlerimizde hazır

Ebola-X:

kopçik deniz, tırtıl emre, kapkaç duygu

Krokiller:

ben jale, deniz, hayriye, sen melaat

Krokiller:

LAN YARILDIM BURDA

Krokiller:

KAPKAÇ DUYGU YAAA

Ebola-X:

yapalım en kralından

Ebola-X:

şu muhabbeti blog'a atayım bari.

Programlama

Flash ile Realtime Birşeyler

11.01.2008

Sabah sabah Krokiller kardeşimin açtığı muhabbet üzerine yazıyorum bu yazıyı. Flash'da realtime multiplayer oyun nasıl yapılır? Evet bir çoğunuz bu sorunun cevabını merak ediyorsunuz! O zaman bu yazı tam size göre gençler taaam size göree. 

Şimdi efendim Flash'da sayfa yapanlarınız vardır elbet lakin hep dusunmussunuzdur "ulen bu sayfalar zıplıyor oynuyor ama bir dinamizm olsun bir coşku patlaması olsun ne bileyim". İşte bu hayallerin sonu ya bakırköy'e gider ya da "ulaaaan realtime oyun yapacam!" şeklinde bir düşünceye dönüşür. Flash'da kayda değer çok az uç konu varıdr. Bunlardan biri 3D olabilir (Flash'da Director gibi hazır bi 3D destegi olmadığını belirteyim) ve biri de mutlaka socket programlamadır. Bu işin en zor yanı, yalnızca flash içerisinden halledilememesidir. Ya kendiniz bir server yazmak zorundasınızdır veya hazır server'lardan birinin kurallarına uymak zorundasınızdır. Aslında Macromedia Firması bu işler için Macromedia Flash Communication Server programını çıkarmıştır ve gayt güzel çalışmaktadır ama ben her zaman kendi işimi kendim halletmek isterim :) - Tabii chat falan sorun değil ama video konferans gibi coşkulu işlerde kendi server'ını yazmak çüğünüzü kendi k.çınıza sokmak kadar zordur :) 

Şimdi size basit olarak bir C# yani dotnet Server ve buna bağlanan Client mantığını yazacağım. Öncelikle

Server'dan başlayalım :

Aşağıda açıklamaları ile beraber C# kodlarını okuyabilenzi

// Bunlar socket programming için çağırılıan gerekli sınıflar

using System;
using System.IO;
using System.Net.Sockets;
using System.Net;

// simpleServer diye bir isimuzayında saklanıyor

namespace simpleServer
{
 class Class1
 {

  // 2 oyunculu bir sistemin 1. ve 2. oyuncularının konumlarının başlangıç noktaları
  static int p1_x = 30;
  static int p1_y = 30;
  static int p2_x = 50;
  static int p2_y = 50;
 

konumarın listesini veren fonkiyon
  static string listeVer()
  {
   return p1_x.ToString() + ":" + p1_y.ToString() + ":" + p2_x.ToString() + ":" + p2_y.ToString();
  }

  [STAThread]
  static void Main(string[] args)
  {

   // Local ip adresi belirtiliyor ve TcpListener adındaki dinleyici 2800 numaralı portu dinlemeye alıyor.
   IPAddress ipAd = IPAddress.Parse("127.0.0.1");

   TcpListener TcpDinleyicisi = new TcpListener(ipAd,2800);
   TcpDinleyicisi.Start();

   // Sunucu ile ilgili Console'a bilgi gonderiliyor

   Console.WriteLine("Sunucu baslatildi...");

  // İlgili Port'dan gelen çağrı alındığı zaman ne yapılacağı

  Socket IstemciSoketi = TcpDinleyicisi.AcceptSocket();

   if (!IstemciSoketi.Connected)
   {
    Console.WriteLine("Sunucu baslatilamiyor...") ;
   }
   else
   {  
    // Mesaj sonlandirici (Flash icin Gerekli)
    char EOF = (char) 0x00;

    while(true)
    {    

     İlgili port'dan gelen giden veriyi kontrol etmek içinbi NetworkStream, StreamWriter ve StreamReader nesneleri yaratılıyor
     NetworkStream AgAkimi = new NetworkStream(IstemciSoketi);     
     StreamWriter AkimYazici = new StreamWriter(AgAkimi);
     StreamReader AkimOkuyucu = new StreamReader(AgAkimi);

     try
     {

      // Gelen bilgi işleniyor
      string IstemciString = AkimOkuyucu.ReadLine();     

      String[] plBilgi = IstemciString.Split(':');     
     
      if (plBilgi[0].Trim().Equals("1"))
      {
       p1_x = int.Parse(plBilgi[1]);
       p1_y = int.Parse(plBilgi[2]);
      }
      else
      {
       p2_x = int.Parse(plBilgi[1]);
       p2_y = int.Parse(plBilgi[2]);
      }

      String message = listeVer();
      Console.WriteLine(listeVer());
     

      // oyuncuların konumları WriteLine metodu ile client'a gönderiliyor
      AkimYazici.WriteLine(listeVer() + EOF);
      AkimYazici.Flush() ;
     }
        
     catch
     {

      // Konsola bilgi gönderiliyor
      Console.WriteLine("Sunucu kapatiliyor...");
      return ;
     }
    }
   }

   // Bitti ulan

   IstemciSoketi.Close();
   Console.WriteLine("Sunucu Kapatiliyor..."); 
  }
 }
}

işte gençler basit bir server bu şekilde kodlanabilir.Tabii bu server tek bir portdan bilgi alıp veriyor. Aslında bilginin bir portdan alınıp client'in boş olan diğer portlardan birine yönlendirilmesi lazım. Bir portdan aynı anda yalnızca bir client bağlı kalabilir (kalıcı bir bağlantıdan söz ediyoruz) Sağolsun Poison kardeşim bu konuda beni aydınlattı Öpüyorum yanaklarından :)

Neyse bir de flash kodunu yazalım da tam olsun :

Bunda açıklama falan yok uğraşın anasını satayım. Bir tek htırlatma ekranda mov1_mc, mov2_mc isimli iki tane movieclip olması br de log tutmak için log_txt isminde bir dynamictext olması lazım. Aşağıdaki kodları ilk frame'e yazdıktan sonra eğerki yukarıdaki server'ı yapmış ve çalıştırmışsanız flash da çalışacaktır. Ama yapamamışsanız e ben ne diyim size bilmiyorum ki?

var xs_xmlsocket = new XMLSocket();
var data_xml = new XML();

// Baglaninca yapilacak islemler
xs_xmlsocket.onConnect = function(success) {
 if (success) {
  log_txt.text = "Bağlantı Başarılı!";
 } else {
  log_txt.text = "Bağlantı Başarısız!";
 }
}

// Data alininca yapilacak islemler
xs_xmlsocket.onData = function(msg)
{
 log_txt.text = msg;
 var plYer = msg.split(":");
 mov1_mc._x = parseInt(plYer[0]);
 mov1_mc._y = parseInt(plYer[1]);
 mov2_mc._x = parseInt(plYer[2]);
 mov2_mc._y = parseInt(plYer[3]);
}

// Bagklanti kapandigi zamanki islemler
xs_xmlsocket.onClose = function(doc) {
 log_txt.text += "Server Bağlantısı Kesildi";
}

// Mesaj Gonderme Fonksiyonu
function sendMsg(a)
{
 xs_xmlsocket.send(a + "\n");
}

// Baglan
if (_root.plNumber == 1)
{
 xs_xmlsocket.connect("localhost", 2800)
} else {
 xs_xmlsocket.connect("localhost", 2900)
}


// ****************************************************************
// Hareket Kontrolü
mov1_mc._x = _root.pl_1.x;
mov1_mc._y = _root.pl_1.y;
mov2_mc._x = _root.pl_2.x;
mov2_mc._y = _root.pl_2.y;

_root.onEnterFrame = function () {
 if(Key.isDown(Key.DOWN))
 {
  eval("_root.pl_"+_root.plNumber).y += 1;
 }
 if(Key.isDown(Key.UP))
 {
  eval("_root.pl_"+_root.plNumber).y -= 1;
 }
 if(Key.isDown(Key.LEFT))
 {
  eval("_root.pl_"+_root.plNumber).x -= 1;
 }
 if(Key.isDown(Key.RIGHT))
 {
  eval("_root.pl_"+_root.plNumber).x += 1;
 }
 
 message = _root.plNumber + ":" + eval("_root.pl_"+_root.plNumber).x + ":" + eval("_root.pl_"+_root.plNumber).y; 
 sendMsg(message); 
}

stop();

Kitap, Resim

Ursula K. LeGuin – Dispossessed (Mülksüzler)

10.01.2008

Selamlar beyler bayanlar,

Fazla zamanım yok konunun en ince noktalarını belirtip gidecem :)

Başlıkta belirttiğim Ada Sahip olan kitap tartışmasız hayatımda okuduğum en iyi kitaptır. Bir kere en sevdiğim konulardan birinin üzerine (Fizik) kurulmuş olup konunun geçtiği ortamın da süper tasarlanmış olması kitaba bir çok değer eklemiştir. Yazarı olan Ursula K. LeGuin hanımefendi nasıl oluyor da yazıyor bu romanları aklım almıyor :) Şimdiye kadar ne kadar romanını okuduysam beğendim hatunun.

Kitap Türkiye'de "Mülksüzler" adı altında çıkmış olup rahatlıkla bulunabilmektedir :) Yalnız kapak konusunda aşağıda da göreceğiniz üzere bu amerigonyalılar harika canım

Programlama

Call By Reference

03.01.2008

Efendim yazma peiyodumuz oldukça uzadı bari yazmışken düzgün bir şeyler yazalım kaygısıyla şöyle teknik olarak siz okuyucularımı bilgilendirecek bir şeyler yazmak ister bu gönül. Bugünkü konumuz da Call By Reference yani türkçesi ile Referans Olarak Çağırma. Şimdi nedir bu Referans olarak Çağırma? (Referans olarak Atama şeklinde de söylenir).

Bu şudur efendim:

Şimdi diyelim ki sizin güzel bir fonksiyonunuz var. Bu fonksiyonun da çok şık bir parametresi mevcut. Yalnız bu parametre o kadar güzel bir parametre ki bu fonksyonu kullandığınız zaman bu parametreye atadığınız değer fonksiyon içerisinde değişiyorsa (başka bir değer alıyorsa) fonksiyondan değişik halde çıkıyor ve hayatına böyle devam ediyor. İşte böyle büyülü bir olay Call By Reference! Şimdi böyle kuru kuru bir b.k anlamayanlar olacaktır elbet. Şöyle güncel C# diliyle bir örnek vermek ister bu deli gönül:

Değer Olarak Atama (Call By Value) :

function degistir(int a)
{
    a = 18;
}

int b = 10;
degistir(b);
Console.WriteLine(b); // Sonuc 10 yani fonksiyon içerisinde atanan deger olmadı.

Bakınız bu fonksiyon Call By Value kullanarak aldığı a değişkeninin bir örneğini oluşturuyor. Ve artık ne yaparsa bu oluşturduğu örnek üzerinde yapıyor ve fonksiyon bitiminde bu örneği atıyor çöpe. Oysa ki;

Referans Olarak Atama (call By Reference) :

function degistir(ref int a)
{
    a = 18;
}

int b = 10;
degistir(b);
Console.WriteLine(b); // Sonuc 18 yani referans olarak atanan b değişime uğradı.

İşte bu harika örnekte "ref" anahtar kelimesi kullanılmak suretiyle Referans olarak atanan b değişkeni fonksiyon içerisinde 18 değerini almıştır. Yani referans olarak atama işleminde örnek oluşturulmaz doğrudan o değişken üzerinde işlem yapılır.

Yani böyle işte sayın okuyucular. Gelin şimdi de hangi dilde bu işin nasıl yapıldığına bakalım. Dilden dile o kadar fark ediyor ki bu meret şaşar kalırsınız :)

C# 'da yukarıdaki örnekde olduğu gibin "ref" anahtar kelimesi ile. Bir de "out" var ve ref'den farklı olarak ilk değer almamış olan değişkenleri için kullanılıyor.

Java'da durum çok dertli. Bütün her şey Değer Olarak Atama kullanıyor. Yalnız kendi sınıfınızı yazıp onun bir üyesini ayarladıktan sonra sonra değişken parametre olarak atarsanız ve atadığınız object'in üyelerini fonksyion içinde değiştirirseniz ahanda değişmiş olarak çıkıyor! yoksa kıçınızı yırtsanız nafile :)

PHP'de function deneme(&$degisken) olarak yazıyoruz.

C++'da void (int& a);

C'de void (int* a); // değişken olarak &b gibi adresini göndermemiz gerekiyor.

Javascript'de de Java'da olduğu gibi Object kullanıyorsunuz. a.deger = 10; diyip a'yı gönderiyoruz mesela.

Falan filan işte okuyun anasını satayım uf amma yazdım be!:)

Programlama

C++’ın Geleceği

13.12.2007
Biliyorum biliyorum "ne lan bu C++ aşşaaa C++ yukarı" diyorsunuz içinizden (ulan sanki milyonlar okuyor :) ama napayım sardım bir kere bu dile, iyice öğrenmeden çıkmak yok :) Bugün de dll'ler konusunda bir iki birşey yaptım artık dll kullanımı konusunda rahatım denilebilir. Aslında C++ gerçekten hayran olunacak bir dil. Mesela şu aşağıdaki kodu inceleyelim :
using namespace std;
int a;
int& getir()
{
     return a;
}
int main()
{
    getir() = 80;
   
    cout << a << endl;
    return 1;
}
bu kodun çalışması sonucunda a'nın 80 döndüğünü görmek gerçekten heyecan verici ha değil mi dostlar? Kod çalışmassa falan sakın buraya yazmayın kafadan yazdım kodu :)
Neyse şimdi bu C++ olayının gelecekte ne gibi bir hal alacağını inceleyelim. Şimdi öncelikle şöyle bir durum var. C++'ı öyle notepad ile yazıp console'dan derlemek falan büyük projelerde olacak bir iş değil. O yüzden C++ dendiği zaman akla otomatik olarak IDE'ler geliyor. Nedir bu IDE? Integrated Development Environment'dir açılımı ve entegre gelirştirme ortamı olarak çevirdim gitti.
IDE dediğimiz zaman da C++ için (hatırlatalım her dil için ayrıdır) öyle çok fazla IDE gelmez aklımıza. Aslında baya bir IDE kasılmış durumda ama şu anda piyasada lider olan 2 tane IDE var ve bunlar Borland C++ Bıuilder ve Visual C++. Bu iki IDE'yi birbirinden ayıran en önemli özellik program yapmak için kullandıkları framework'ler. Şöyle açıklıyıvereyim :
Borland C++ Builder : Efendim gönüllerin baştacı olan bu IDE'nin altyapısında deplhi'de yazılmış olan VCL (Visual Components Library) dediğimiz kütüphane vardır ki of aman allahım oooof! Muhteşem düzenli, neredeyse Dotnet Framework kadar rahat kullanılan bir kütüphanedir. C++ builder ve VCL kullanaraktan Windows Form'ları oluşturmak bunlara kod yazmak ı kadar basit o kadar hızlı gerçekleşen bir süreçtir ki hemen bu IDE'nin asıl olayının RAD (Rapid Application Development) olduğunu anlarsınız :) Yalnız bunca güzelliğin içerisinde öyle lanet öyle beter bir editoru vardır ki illallah dersiniz. İşin kötüsü bu editor'u visual assist gibi ek programlarla güzelleştiremessiniz (Ben baya bi araştırma yaptım bu konuda) öyle kötü bir görünümle yavaaaş mı yavaş çalışır durur. C++ Builder'ın bir sonraki sürümü Delphi 2006 (Kod Adı Dexter) ile bütünleşik olacak ve görünen o ki editor'un en azından görüntüsü konusunda baya bi ilerleme kaydedilmiş durumda heyecanla bekliyoruz :)
Visual C++ : İşte Microsoft'a "öyle veya böyle adamlar IDE yapmayı biliyıor kardeşim" sözlerini ithaf etmemize sebep olan IDE. Borland'dan farklı olarak MFC (Microsoft Foundation Classes) isimli kütüphaneyi bünyesinde barındırır ki MFC kullandığımız zaman aaaah ah VCL'in gözünün çapağını yalıyim! yakınmalarınu durmadan yaparız. Lakin WXWidgets, QT gibi C++ için önemli kütühanelere Borland'dan daha güzel bir destek vermektedir ve editorü... OOOOF OF! o editörü harikadır harika! Hele hele Visual Assist ile beraber kullanırsanız kodların parmaklarınızdan akıp gittiğini hissedersiniz. VCL Form design olayı ile VC++'ın editorunu birleştirmeye çalışsam da Borland'ın C++ standartları dışında kullandığı keyword'ler yüzünden (öncelikle __published keyword'u) ne yazıkki bu çabam başarısızlıkla sonuçlandı. Yeni gelecek olan Visual Studio 2005 ile MFC 5.0'ın çıkacağı ve bu kütüphanenin managed (yani dotnet tabanlı) olacağı şeklindeki haberler zaten soğuk olduğum MFC kütüphanesinden iyiden iyiye soğumama sebep oldu. Lakin hastası olduğum bir program olan Adobe Premiere programının MFC ile hazırlanmış olması da bu kütüphaneye tamamen sırtımı çevirmemi engelliyor a dostlar :)
Benim görüşüme göre MFC 5.0 Dotnet Framework'un biraz daha performanslısı olarak yoluna devam edecektir ki microsoft'un MFC'yi bitirme planlarından döndüğünü de unutmamak gerekir. Yalnız dotnet framework gibi derli toplu bir kütüphane varken ne diye managed MFC kasılır onu hiç bilemiyecem. Artık performans o kadar da ön planda değil. Hadi performans önemli ise managed'a hiç bulaşmadan C++ ile işlerimi hallederim rahatlarım be birader.
Bu arada halen gelişmekte olan Wxwidgets ve QT kütüphanelerini de unutmamak gerekir. QT'nin kodları daha çok hoşuma gitse de bir türlü tam anlamıyla kuramadım :) Wx ile bir iki bir şey yaptım ama daha taşaklı olarak tabir edebileceğimiz bir çalışma çıkmadı. Şimdilik DLL aşşağı DLL yukarı kasıyorum işte :)
Hadi yeter parmaklarım yoruldu be birader.
Programlama

ASP ne boktan bir şey yaw :)

11.10.2007

Selam yoldaşlar, 

Bu yazımızda size ASP yani Active Server Pages isimli microsoft teknolojisinden bahsedeceğiz. Hiç unutmam ASP ile ilk tanışmam 2000 yılında bir okulun web sayfası projesinde olmuştu. Tek satır kod yazmadığım halde işi kabul etmiş ve yaklaşık 9 saat kadar yemek yemeden, su içmeden bilgisayar başında kalmış ve ancak sınıftaki öğrencilerin listesini almayı başarabilmiştim :)

Daha sonraları proje yattı ve ben Macromedia Flash ağırlıklı bir şirkete girdim ve kendimi Actionscript üzerinde geliştirdim ki programlama alemine ilk dalışım Actionscript ile olmuştur denebilir. Zaman böyle akıp giderken Askerden döndüm ve kendimi yine ASP sayfalarının içerisinde buldum. Aslında askerde de şansıma web tasarım bölümünde olduğum için ASP sayfalarının içindeydim ama hali hazırda çalışan sisteme hiç dokunmadım yalnızca içerik değiştirdim :)

Neyse efendim ASP ile uğraştık durduk asker dönüşü. Sonra malumunuz üzerine iş değiştirdim ve full PHP üzerine çalışmaya koyuldum ve geldik günümüze. Şu anda tekrar ASP ağırlıklı çalışıyorum (bu arada ASP.NET de kastım) ve bunca zamandan sonra yorumum şudur.

Amuga Koyayım ASP :)

Sakın yeni bir dil öğrenme aşamasındaysanız ASP'yi seçmeyin. Doğrudan PHP ile dalın olaya. ASP.NET falan da kesinlikle PHP'nin verdiği rahatlığı vermiyor. Şimdiye kadar en hızlı proje zamanını PHP ile elde ettim hatırlatırım :) Özellikle şablon olarak yöneteceğiniz bir sayfa tasrımı yapıyorsanız yani bir proje olsun her projeye uygulayayım diyorsanız sakın sakın sakın ha inanmayın siz ona. PHP rulez kardeşler :)

Genel

Peygamber Aranıyor

13.09.2007
- Konusunda 4 yıl tecrübeli
- İngilizce bilen
- Tercihen yılana dönüşen asa sahibi
- Java bilen
Peygamberler aranıyor.

Yaw. Elektromak diye bir firma (www.elektromak.com) IT bölümü için adam arıyor. Hürriyet IK'ya eşşek kadar hem de 2. sayfadan ilan vermiş bu adamlar. Toshiba Türkiye distributoruymus. Bakınız özelliklere :

Bilgi İşlem Sorumlusu :
- Delphi, .NET, Javascript, JAVA programlama dillerine hakim
- MS SQL, MySQL veritabanı uygulamaları geliştirebilir.
- PHP ve ASP uygulamarında kod geliştirebilir yeteneğe sahip.
- Adobe Photoshop, Macromedia Freehand, Adobe Illustrator kullanarak masaüstü ve web'e yönelik tasarım oluşturabilen.
- Windows 2000/2003 Server, Linux Enterprise Sunucuları yönetebilecek.
- Active Directory, TCP/IP, VPN yapıları hakkında bilgi sahibi
- Cisco Routers, Cisco Pix yönetimi konusunda tecrübe sahibi
- Askerliğini tamamlamış
- Ehliyet sahibi
- alanında en az 4 yıllık üniversite mezunu
- Seyahat engeli olmayan
Abi böylesini görmedim yemin ederim. Bu adamı bulurlarsa tanışmak istediğimi belirten bir mail atmayı düşünüyorum adamlara :) "Tanrı Aranıyor" - şimşek atabilen... :)
Genel, Kişisel

“Biz eskiden” diye başlayan bir yazı…

13.08.2007
Uzunca bir zamandırbu başlıkta bir yazı yazasım vardı aha da yazıyorum işte okuyun gari :

Abicim ben yeniliği seven bir insanımdır aslında ama şöyle durup olduğum yere, yaptığım işlere bakıyorum da... "ulan eskiden daha güzeldi be" demekten alamıyorum kendimi.

Ben bilgisayarı aldığımdan beri hayatımın 1 numarasına koymuş bir adamım. Gecemin, gündüzümün, herşeyimin bilgisayar olduğu dönemler oldu, oluyor ve büyük ihtimalle olacak :) Blog'u okuyanlar bilirler tarihim ufak kolları aşağı çekerek oyun değiştirilen ve ayar yapılan makine ile bilgisayar (aslında bu oyun makinesiydi) olayına girdim ve commdore 64 ile ilk programlama, grafik gibi deneyimlerime ulaştım.

Özellikle Amiga'yı hayatım boyunca uğraştığım makineler sıralamasında 1 numaraya koyarım. O kadar da sorun çıkaran bir makinem vardı ki kasa açık olarak çalışıyordum artık ama sorun gidermesi bile zevkli bir makineydi Amiga.

Bence işin sırrı teknolojinin sınırlarının olmasında yatıyor. Amiga, Commdore 64 gibi makinelerin büyüsü standart olmalarında yatıyordu. Yani Commodore 64'ün işlemcisi sabitti, hafızası sabitti, yapılabilecekler sınırlıydı ve bu işi güzel yapan da buydu. Şu anda standart namına hiç bir şey kalmamış durumda. Bir şey üretiyorsunuz ve "bu yaptığım tüm Amiga'larda çalışır hacı" gibi bir cümle ne yazık ki kuramıyorsunuz. Yaptığınız şeye "Bu tüm windows'larda çalışır" bile diyemiyorsunuz yok artık öyle bir muhabbet. "%90 çalışır" aha bütün diyip diyebileceğiniz bu kadar :)

Aslında şu internet işin bokunu çıkaran asıl unsur bence. Özellikle bant genişliklerinin artması ile birlikte tamamen tüketim toplumu halini aldık. Eskiden haftalar, aylar boyunca bir albüm dinlerdim ama şu anda 1 haftada 10 albümü hatmediyorum ve eskiden aldığım zevkin yanına bile yaklaşamıyorum.

Eskiden böyle her yıl düzenli çıkan programlar, oyunlar falan yoktu. Bir oyunu aldın mı çok uzun süre oynardın. (Sağolsun bünyem halen bu şekilde davranıyor oyun konusunda) ama şu anda bir çoğumuz haftada bir değil bir çok oyunu bitiriyor, sıkılıyor falan filan ve işin en acı yanı şu anki oyun teknolojisi ile bir Amiga oyun teknolojisinin karşılaştırılamayacak olması ama aynı tadı bir türlü vermiyor işte.

Böyle yeni düzenin ta mna koyim ben be :)

Kitap

Stephen King – Dark Tower

12.06.2007

Yaw ben bu Stephen King denen adamın hastasıyım lakin hiç buraya entry girmemişim garip :)

Herkese bildiği için Stephen King hakkında pek yorum yapmanın alemi yok lakin şunu belirtmek lazım ki adam "o bunu kesti, bu bunu biçti hah hah haaaay" şeklinde korku romanları yazmıyor. Stephen King romanlarının ilk kısımları her zaman için sıkıcıdır çünkü tamamen karakterlerin nasıl bir geçmişe sahip olduklarından, psikolojilerinin ne alemde olduğundan bahseder ve sen kişileri tanıdıktan sonra verir gazı verir action'ı :)

Ben şahsen Stephen King'in kitaplarında hareket başladığı zaman kitabı pek bırakamam. İlk olarak Çağrı kitabını (asıl ismi Dead Zone yani Ölü Bölge'dir ve kitabın konusuna çok yakışır çağrı ne alaka bilmem ) okuduğum zaman bu konuya hayran olmuştum. Kkitapta eleman insanlara, insanlara ait eşyalara dokunduğu zaman geleceklerine veya bilinmeyen geçmişlerine dair bilgiler veriyordu ama o sahneler öyle güzel anlatılmıştı ki resmen yaşadım yani. Sonrasında da King'in ne zaman okumadığım bir kitabına rastlasam alırım işte ama denizde kum King'de kitap oku oku bitmiyor meret.

İşte efenim King'in bir seri olarak yazdığı ve bir çok kitabında bu kitaptaki konuya göndermeler yaptığı (Ör: Peter Straub'la yazdığı "Kara Ev") ve bu kitabın içeriğinde de bütün kitaplarının aslında bu konuya bağlı olduğuna dair göndermeler yaptığı "Kara Kule" serisi vardır.

Seri Silahşor Roland Deschain'in Kara Kule'ye ulaşma mücadelesini konu alır ve bir şiirden yola çıkarak yazılmıştır. Aslında Stephen King'in kendisini de kitaba dahil etme olayını ben pek sevmedim ama onun dışında muhteşem bir seri.

Seri 7 kitaptan oluşmakta ve son kitabı olan "Kule" - bütün kitaplarına yeniden basıldı bu arada - 3 gün önce falan elime geçti ve 200 sayfayı bitirdim (800 sayfalık eşşek gibi bir kitap).

Aslına bakarsanız bu serinin kitaplarını çok uzun aralıklarla okudum. Konunun tamamen bütünleşmesi için kitapları alıp baştan sona seriyi okumak lazım ama Annem bütün kitaplarımı başkalarına verdiği için okuduğum kitaplara tekrar para vermem gerekecek bu çok koyar bana :)

Diyeceğim şudur ki alın okuyun inşallah beğenirsiniz. Açık konuşalım skimde değil beğenmeniz :)

İşletim Sistemi

Linspire

10.05.2007

Sevgili okuyucular,

Bir dönem Lindows isimli bir işletim sistemi çıkagelmişti hatırlar mısınız? Beyle windows ve linux programlarını bir arada çalıştırmayı vaadediyordu ve iyi reklam yapmıştı açıkçası. Neyse efendim bu sistem duyurulduğu zaman beta aşamasındaydı ve çıkmasını merakla bekliyorduk ama sonra bir şey oldu... sistem çıktı ama kimsenin haberi olmadı :)

Öncelikle Microsoft "Lindows" ismi "Windows" u çok çağrıştırıyor diye bir dava açtı ve sanırım bu dava'yı kazanmış olacaklar ki sistem şu anda "Linspire" ismi ile dağıtılmakta.

Temel olarak debian linux tabanlı olan sistem diğer linux sistemlerinden farklı olarak 50 kusür dolara mı ne satılmakta. E insan bir linux sistemini para ile satıyorsa vardır bir bildiği diyorsunuz ve emule kardeşim sağolsun parasız bir şekilde sisteme ulaşabiliyorsunuz :)

Efendim çektim kurdum sistemi hafta sonu güzel güzel. Kurulum kısımları az biraz ingilizcesi olan şahıslar için gayet kolay ve isterseniz CD'yi live olarak da (yani sisteminize kurmadan) kullanabiliyorsunuz. KDE arayüzünü kullanan sistem gayet güzel özelleştirilmiş ve windows ile machintosh arasında güzel bir görsellik kazanmış. Adamların grafik tasarımcıları iyi bir iş çıkarmış yani.

Sistemde diğer linux dağıtımlarından en farklı olan özellik CNR (Click And Run) özelliği ve bu anladığım kadarıyla şu şekilde çalışıyor. Siz bir windows executable'ına tıkladığınız zaman sistem internetten bu dosya ile ilgili bilgileri alıyor ve sisteminizde en iyi şekilde çalıştırmaya çalışıyor fekat benim evimde böyle bir şey olmadığı için ne yazıkki deneyemedim bu sistemi. Dedim acaba sistemde ön tanımlı bir şeyler var mıdır falan ufak windows programları denedim ama sonuç olumsuz.

Linspire anladığım kadarıyla wine isimli windows emulatorunu kullanmıyor. Adamlar kasmış kendi tekniklerini geliştirmişler (ki zamanında Lindows'un isim yapmasının nedeni de buydu). Wine'i kendilerine göre özelleştirmiş de olabilirler bilmiyorum fakat windows programları için internete bağlanma gereksinimi yüzünden benim gözümden baya bir düştü sistem ve bu yüzden hemen shift + delete'e maruz kaldı ve üzerine tüm zamanların en iyi işletim sistemlerinden biri olan Greenie Linux 1.7.2 versionu kuruldu ve JBuilder 2006 ile çalışmaya hazır hale getirildi ;)

Benim çektiğim version Linspire 5.059 versionuydu ve adamlar linux kullanmak isteyenler için güzel bir sistem yapmışlar açıkçası. Linux'un console'una pek bulaşmadan işlem yapıyorsunuz ki console'a ulaşmak için pratik bir icon, link falan yok (diğer linux sistemlerinden en ön plandadır ;)

Deneyin görün derim ben size.