Perşembe, Haziran 29, 2006

db2 schemas/views/indexes/triggers

schema: -schema_name.object_name,
-eger schema belirtmezsek, yetkilendirmeye (authentication id'e) gore schema ismi veriyor. db2'ya baglandiginiz user-name misal.

views: -gercek veri icermiyorlar.
- "with check option" ifadesi ile tanimlanirlarsa, tanimlarinda ki kosullar insert ve update islemleri sirasinda kontrol ediliyor. Birbirine bagimli tanimladan view'lar da bir ust kosul miras aliniyor. Miras almak istemezsek "with local check option", tum usttekileri miras almak istersek "with cascaded check option" ifadelerini kullaniyoruz.
-view'lerin verilerine sadece SQL sorgulari ile referans tutabiliyoruz.
-db2'da view'lar ALTER VIEw statement i ile degistirilemiyorlar. Sadece 'foreign key' kolonuna bu uygulanabiliyor.

indexes: -verinin tekrar etmemesini ve sorgu hizlarinin artmasini saglar.
-ALTER INDEX ile index degistirilemez. DROP ve tekrardan CREATE ifadeleri ile silinip bastan yaratilmasi gerekir.

triggers:-before tirggers
-after triggers
-instead of triggers(always FOR EACH ROW)
-birbirini tetikleyen trigger'lar cascading triggers...

sunumun tamami=>http://arda.linuxmarket.org/umran/Presentation1.ppt

arda'yi sade mi seversiniz yogurtlu-soslu mu?

Çarşamba, Haziran 21, 2006

NetBeans 5.5 Beta/Pardus

Netbeans'i "http://www.netbeans.info/downloads/download.php?type=5.5b" adresinden indirdim. Kurulum icin sirasiyla;
-chmod +x netbeans-5_5-beta-linux.bin
-LC_ALL=en_US
-DISPLAY=:0
-./netbeans-5_5-beta-linux.bin
"installation wizard acildi (sanirim kurulum sihirbazi deniyor.)" Kurulumun ardindan;
-/install> netbeans-5.5beta/bin/netbeans'in icine export LANG=en_US
-/install> netbeans-5.5beta/etc/netbeans.conf'un icerisinde netbeans_default_options'a --locale en:US
ekledim.
special thanks to huygun,iacsi.metoikos..

>>Hic daha once yabancisi oldugum biryerde staj yapmamistim. Simdi 9 stajerimin de(3_IYTE,5_IEU, 1_COMU) yabancilik cekmemeleri icin elimden geleni yapiyorum. Daha staj var, edersem bulurum.Odev konusunda acimak yok ama...:))

Pazartesi, Haziran 19, 2006

Eclipse plugin'i yemezse!

Eclipse'e plugin kurmak icin eclipse klasorunun oldugu dizine acilan plugin eclipse'in yeniden baslatilmasina ragmen kurulmamissa(surum bagimliliklarinin saglandigi kabul edilirse);

1)eclipse klasorunun bulundugu dizinde 'features' ve 'plugin' dosyalarinin olusup olusmadigini kontrol edin! Olusmussa; 'features' klasorunun icindekileri /eclipse/features dizinine, plugin klasorunun icindekileri de /eclipse/plugin in icine kopyalayin. (Ustune yazma durumunu onaylayin.)

Hala kurulmuyorsa;

2)Bir terminalden ya da konsoldan ./eclipse -clear'i calistirin. (Bu sayede onceki konfigurasyondan olan build dosyalari silinmis oluyor.)

Cumartesi, Haziran 17, 2006

Dokuz Eylul Universitesi Bitirme Projeleri Sergisi & LKD



Standimizi kurduk kaldirdik, katilim beklenenin ustundeymis ama ben Dokuz Eylul ve TBD tayfasindan fazlasina rastlayamadik. Ogrenciler Linux'u ya hic kurmamislar ya da odevlerinin win'de yapilma zorunlulugundan dolayi kurduklari gibi kaldirmislar. Bir LKD uyesine rastladik, bir de ilgili yazilim muhendisi bir amcamizla fikirlerimizi paylastik.

Bir tanesi ozgur yazilim projesiydi. Visual UML diye bir proje, eclipse plugin olarak ekliyorsunuz, class diagraminizin uml ini bir tool ile ciizyorsunuz ve patternlar araciligi ile cikiyor size auto-generated code. Source-forge da 115. sira da yeralmis.

Bir guzel proje de Wireless Multifunctional Platform Project idi. Tekerlekli bir platform hazirlamislar, ve bilgisayardan belirlediginiz rota araca bluetooth ile iletiliyor ve arac bu rotada hareket ediyor. Bu platforma bagladiklari koca harddisk ve uzerine de kurulan koca(boyut olarak buyuk) isletim sistemini biraz yadirgadik.

Dokuz Eylul Univerisitesi Bilgisayar Muhendisligi Bolum Baskanligini ogrencileri icin hazirladigi bu etkinlik ve cv-katalogu icin takdir ettik.

Cuma, Haziran 16, 2006

Chris: Women's Summer Outreach Program 2006

Hi, Umran.

> Hi, I am Umran Kamar from Izmir, TURKEY(states written first in my
> country.) I am undergraduate student at Izmir Institute of
> Technology. Its my fourth year on the school. This year i am going
> to take my thesis on linux kernel development. I do not certainly
> decide on details but my major topic would be linux kernel. For
> nearly two years i use linux operating systems.

Excellent, great to hear from you.

> I want to develop an Evince Mozilla plugin, as competing.

Okay! That sounds really useful. So, here's a suggestion for a plan:

* I'll find a possible mentor for you, who you could chat with to
talk over how a mozilla plugin would work, what the specific goals
for the project would be, and what you're going to need to learn to
be able to work with the code.

* We'll have our application form online in a few days; once you've
worked out the specific goals you can write and submit your
application with them in.

Sound good?

Thanks,

- Chris.
Basliyoruz...

Women's Summer Outreach Program 2006

Hi,
I am Umran Kamar from Izmir, TURKEY(states written first in my country.) I am undergraduate student at Izmir Institute of Technology. Its my fourth year on the school. This year i am going to take my thesis on linux kernel development. I do not certainly decide on details but my major topic would be linux kernel.
For nearly two years i use linux operating systems. First of all i use Suse 8.2, then Suse 9.1, Suse 9.2, Suse 9.3, OpenSuse10.0. And after PARDUS (Turkish national and powerfull distro) released, I began to use PARDUS on my pc. I also work at Computer Resarch and Application Department of my institute and use Debian-Sarge and Fedora-Core4 at work. I'm also familiar with Ubuntu.
I know c and java most properly, and also experienced programming with c++, php and scheme!(I do not like Lisp much!).
The other factor that encourages me with you is charity of Turkey's Linux community as is all over the world. Contrarily your assumption, all (incredible) men help me while i am studyin on Linux, and i know will help as they can if i attend this project.
There are many programmer women interested with linux in my country, but they are lack of courage to attending projects and leading women community. I am expecting this project will be landmark for the Turkish women community to be more confident on attending linux and linux based projects.
I want to develop an Evince Mozilla plugin, as competing.
yours faithfully , Umran..

Konuyu secmemde yardimci olan Arda'ya ve bu mail'in bu kadar duzgun yazilmasini saglayan Erdinc'e sesleniyorum; You are my incredibles!

Perşembe, Haziran 08, 2006

Client/Server 4

FTP uygulamasini bu sefer socketlerle yaptik..

Client'ta ki farklar;

if((socketfd = socket(AF_INET, SOCK_STREAM, 0)) == -1) {
perror("socket");
exit(-1);
}

memset(&server_addr, 0, sizeof(server_addr));
server_addr.sin_family = AF_INET;
server_addr.sin_port = htons(PORT);
inet_aton("127.0.0.1", &(server_addr.sin_addr));

if (connect(socketfd, (struct sockaddr *)&server_addr, sizeof(server_addr)) == -1) {
perror("connect");
exit(1);
} //socket acilmasi, degerlerinin set edilmesi ve socket uzerinden baglanti kurulmasi
------------------------------------------------------------------------------------------
write(socketfd, readbuffer, strlen(readbuffer)); //socket'e yazma!
close(socketfd); //islemlerden sonra socket;i kapatma.
------------------------------------------------------------------------------------------

Server'daki farklar;

if((orgsocketfd = socket(AF_INET, SOCK_STREAM, 0)) == -1){
perror("socket");
exit(-1);
}
memset(&server_addr, 0, sizeof(server_addr));
server_addr.sin_family = AF_INET;
server_addr.sin_addr.s_addr = htonl(INADDR_ANY);
server_addr.sin_port = htons(PORT);

if(bind(orgsocketfd, (struct sockaddr *)&server_addr, sizeof(server_addr)) < 0){
perror("bind");
exit(-1);
}

if(listen(orgsocketfd, QUEUE_LENGTH) < 0){
perror("listen");
exit(-1);
}

client_len = sizeof(client_addr);
if((socketfd = accept(orgsocketfd, (struct sockaddr *)&client_addr, &client_len)) < 0){
perror("accept");
exit(-1);
}
//bind ve listen ve baglanti kabul (accept) islemleri...

Sinav sorusu: FTP uygulamasinin server-side kisminin yazilmasiydi. Server, socket acip bind ve listen islemlerini yapacak, client baglanti kurdugunda ise fork()'la yeni bir socket acip, veri alisverisini burdan gerceklestirmesini saglayacak..

Cevabi ozetlersek server;
sockfd = socket(...);
bind(sockfd, ...);
listen(sockfd,);
while(1){
new_fd = accept(sockfd,...);
if(!fork()){ //child process
close(sockfd); // child process kullanmayacak
send(new_fd); //veri transferi, ben bir message buffer ile yapiyorum.
close(new_fd); //socket ile isi biten child process socket'i kapatir
exit(0); //child process sonlaniyor.
}
close(new_fd); // parent process bu socketi kullanmayacak..
}
close(sockfd); //parent kullandigi socket'i kapatacak..

Bu odevin en eglenceli kismi hocamizin anlattiklariydi. Parayla odev yaptirilan bir siteye giren hocamiz, ogrencilerinden biriyle odev karsiliginda 10 dolara anlasir. Odev tarihi gelip odevini teslim alamayan ogrenci sinirlenir ve bir guzel sayar doker. Ardindan hoca ogrencisini odasina cagirir. 3 kisilik kahvalti masasinda anlatilan bu keyifli olayin ibreti alem olmasi icin nesilden nesile aktarilmasi uygun bulundu. O arkadas artik bir “IYTE” efsanesi!

Cumartesi, Haziran 03, 2006

Staj

Bu sene ki stajim buyuk bir firmada. Yuksek lisanstan lisans dersleri alan ve beraber calistigim bir arkadasim, eskiden staj yaptigi firmada beraber calistigi birinden bana referans olmasini istedi, ve ben bu sayede staja kabul edildim. (Bayagi torpil kokuyor.) Baslarda cok rahatsizdim bu durumdan ama TBD'nin Bilisizm'in de sagolsun bir firma gorevlisi bunun yukunun bir kismini uzerimden aldi. (Baska bir firma netten sinavla aliyormus, o da yapmak istedigim bir yer degildi ama sinavi kacirmasam o firmayi tercih edebilirdim.) Soyledigi sey "Mudurden gelen bir referansa kimse hayir demez idi." Hos hala vicdanim rahat degil. 'Benim onceden calistigimi soylemesi etkilidir' gibi cumlelerle kendimi kandiriyorum durmadan. Sanirim insan nefsi ile alakali birsey. Iyi olani ne sekilde olursa olsun hepimiz istiyoruz. Bir dolu kurumda da staj imkanini bu sekilde elde edebileceginizi ogrenince de kendimi kandirmakta hicbir sakinca gormemeye basladim. Acaba boyle mi sindiriliyoruz yoksa icimizdekileri boyle boyle kendimiz mi sindiriyoruz?