Kas082008

İşte Hologram Teknolojisi!!!

Yazar: Gökhan ÖZİÇ Yayınlanma Saati: 19:55
Kategori(ler): Teknoloji

     Dünya'nın birkaç gündür konuştuğu en büyük olay kuşkusuz ABD'deki başkanlık seçimleri. Barack Obama'nın ABD'nin ilk siyahi başkanı seçildiği geceye çok büyük bir teknolojik gelişme de damgasını vurdu. CNN International televizyonu, tam 1500 km uzakta Chicago'daki muhabiri Jessica Yellin'i yeni bir hologram teknolojisi kullanarak New York'taki stüdyoda bulunan Wolf Blitzer'in karşısındaymış gibi gösterdi. Görüntü o kadar gerçekçi ki iki kişi arasındaki farkı anlamak imkansız gibi birşey. Aşağıdaki resime bakarsanız ne demek istediğimi anlayacaksınız.     Peki dünyada böyle büyük bir teknolojik gelişme olur da Türk televizyonları bundan geri kalır mı? Tabii ki hayır. Bugün haber bültenleri arasında gezinirken ben de tesadüfen bu teknolojiye Show Tv Ana Haber Bülteni'nde şahit oldum. Aynı şekilde Ankara'da bulunan muhabir Tuğba Atav'ın görüntüsü, İstanbul'daki Show Tv haber stüdyosuna aktarıldı. Show Tv meğerse iki gündür bu teknolojiyi haber bülteninde deniyormuş fakat ben bugün rastladım. Aşağıdaki resime dikkatinizi çekiyorum. Bakalım kim gerçekten stüdyoda, kim hologram olarak orda ilk bakışta anlıyabiliyor musunuz?      Özellikle böyle büyük bir gelişmeyi çok hızlı şekilde yakalayan Show Tv'yi tebrik etmek gerek. Bu yeni hologram teknolojisinin biraz da teknik boyutuna bakalım. Bu teknoloji, parlak yeşil bir çadıra kurulan özel bir sistem sayesinde gerçekleştirildi. Dairesel bir odaya kurulan sistemde yüksek çözünürlüklü 35 kamera 10 cm arayla ışınlanacak kişinin etrafına göz hizasında yerleştiriliyor. Bu şekilde taranan görüntü istenilen yere aktarılıyor ve kişinin 3 boyutlu görüntüsü elde ediliyor.      Teknolojinin ne kadar hızlı geliştiğini bir kez daha ortaya koyan bu büyük gelişme, insan oğlunun bilim-kurgu filmlerinde gördüğü ve fantazi olarak nitelendirilebilecek hayallerinin hiç de gerçeksiz olmadığı, günün birinde herşeyin mümkün olabileceğini tüm çıplaklığıyla gözler önüne sermiyor mu? Bence bu sorunun cevabı evet evet evet!

Etiket(ler): , ,



[KickIt] [Dzone] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

E-mail | Permalink | Trackback | Yazı RSSRSS comment feed 0 Yorumlar

Kas072008

C Dilinde Macro Kullanımı

Yazar: Gökhan ÖZİÇ Yayınlanma Saati: 05:38
Kategori(ler): C / C++

     Developerlar olarak aslında en büyük yardımcılarımız kuşkusuz fonksiyonlardır (metodlar). CPU yükünü oldukça azaltan ve algoritmayı daha verimli ve hızlı hale getiren yapılardır fonksiyonlar (metodlar). Ancak; fonksiyonların uzun uzun yazılmalarından ziyade başka bir yöntem daha var ki, fonksiyonda yazdığınız birkaç satır kodu (özellikle kısa ve tek göreve sahip olan fonksiyonlarda) tek satırda yazarak aynı görevin yapılmasını sağlar. Macrolardan bahsediyorum tabiiki. Kullanımı rahat ve geliştirme sürecini kısaltan macrolar, fonksiyonlardan sonra (kimisine göre önce) en büyük yardımcılardan bir tanesi. Şimdi birkaç fonksiyon ve macro örneği yapalım ve görelim macrolar nasıl çalışıyor. Kolaydan gidelim ve iki integerın büyük olanını return eden bir fonksiyon yazalım. #include <stdio.h> int Max(int a, int b) { if(a > b) return a; else return b; } int main() { int a, b; printf("Enter two integers: "); scanf("%d%d", &a, &b); printf("The maximum of two integers is %d.\n", Max(a, b)); return 0; }      Gördüğünüz üzere fonksiyonumuz, aldığı a ve b değerlerinden büyük olanı return ediyor ve main de yazdırılıyor. Çok kolay bir algoritma. Peki bunu macro ile yapsak nasıl yapardık. O da şu şekilde. #include <stdio.h> #define MAX(a, b) ( a > b ? a : b) int main() { int a, b; printf("Enter two integers: "); scanf("%d%d", &a, &b); printf("The maximum of two integers is %d.\n", MAX(a, b)); return 0; }      Gördüğünüz gibi fonksiyonla yaptığımız örneğin aynısını şimdi macro ile yaptık ve sadece bir satır sürdü. Farkettiyseniz macro için aldığı parametrelere değişken tiplerini yazmam da gerekmedi. Macroların avantajlarından biri de bu. Gönderdiğimiz değişkenin tipleri önemli değil. Yazdığınız macro her değişken tipinde görevini yerine getiriyor ve algoritmada herhangi bir upgrade yapmanız gerekmiyor. Onu da örneklendirelim. Yukarıda yazdığımız kodu bu sefer de iki double number için yapalım ve görelim. #include <stdio.h> #define MAX(a, b) ( a > b ? a : b) int main() { double a, b; printf("Enter two integers: "); scanf("%lf%lf", &a, &b); printf("The maximum of two integers is %0.2f.\n", MAX(a, b)); return 0; }      Gördüğünüz gibi değişkenleri değiştirdik ve macromuz hala görevini yerine getiriyor. Macrolar fonksiyonlardan farklı olarak değişken tipi bağımsız olarak çalışıyorlar ve bu çok büyük bir artı. Macroları kurgulamak tamamen size bağlı. Algoritma geliştirmeyi gerçekten hızlandırıyor.

Etiket(ler): ,



[KickIt] [Dzone] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

E-mail | Permalink | Trackback | Yazı RSSRSS comment feed 0 Yorumlar

Eki122008

C Dilinde Buffer Sorunu (scanf, gets...)

Yazar: Gökhan ÖZİÇ Yayınlanma Saati: 08:45
Kategori(ler): C / C++

     C dili ile çalışan programlamacının en büyük dostlarından biri kuşkusuz "scanf()" fonksiyonudur. İşlevi ise kullanıcıdan input almak üzerinedir. Ancak bu dost bazen problemler çıkarabiliyor. Advanced Programming dersinde yaptığım son ödevde başıma gelen sorun gibi. Ödevim; text olarak alınmış bir inputun morse alfabesi ile karşılığının ve morse alfabesi ile alınmış bir inputun text olarak karşılığının ekrana yazdırılması için gerekli algoritmayı kurmaktı. Haliyle; algoritma bir menü ile çalışmak zorunda. Text'ten mi morse'a çevireceksiniz, yoksa morse'tan mı text'te... Bunu menü ile seçmeniz gerekiyor. Ve bunu bir loop'a sokmak gerekiyor ki birden fazla kez işlem yapılabilsin. Menüde seçim yapabilmek için ise bir karakter variable tanımlamak gerekiyor. Bu variable'ı da her seferinde tekrar istemek gerekiyor. Kod olarak ise şöyle gösterilebilir: printf("\tMenu\nE\tEncode(Read text and convert to morse)\n" "D\tDecode(Read morse and convert to text)\n" "X\tExit\n&gt;"); scanf("%c", &selection;); while ( (selection != 'x') && (selection != 'X') ) { if( (selection == 'e') || (selection == 'E') ) { //Statements } else if( (selection == 'd') || (selection == 'D') ) { //Statements } printf("\tMenu\nE\tEncode(Read text and convert to morse)\n" "D\tDecode(Read morse and convert to text)\n" "X\tExit\n&gt;"); scanf("%c", &selection;); }      Bu kodu run ettiğimde menünün iki defa karşıma çıktığını gördüm. Halbu ki iki if statement'tan sonra bir kere menünün çıkması ve "scanf()" fonksiyonunu beklemesi gerekiyor. Karşıma çıkan sorun da işte bu. Variable tekrar kullanıcıdan istendiğinde "scanf()", sanki zaten variable'ı tekrar istemiş ve okumuş gibi davranıyor ve loop tekrar çalışıyordu. Haliyle menü iki kez karşıma çıkıyordu. Bu durumun "scanf()"ten kaynaklanan bir sorun olduğu ortada. Yaptığım araştırma sonucunda ise şöyle bir bilgiye eriştim.      "scanf()" fonksiyonu çalıştığında tampon denilen bölgeden (birazdan açıklayacağım) bütün veriyi alıyor. Veriyi alırken de bölgedeki boşlukları ignore edip veriyi alıyor. Bu şu demek oluyor. Eğer verinin alındığı tampon bölgede herhangi bir veri varsa kullanıcıdan inputu almadan önce "scanf()" o bölgede varolan veriyi alıyor. Enter tuşuna basmamızı da bekler, fakat bölgedeki verinin içinde enter karakteri varsa bunu bile beklmeden statement'ı zaten çalışmış ve input alınmış gibi atlıyor. Bundan dolayı da "scanf()", kullanıcının input vermesine olanak vermiyor. Bu yüzden, "scanf()" fonksiyonunu kullanmadan önce mutlaka tampon bölgeyi boşaltmamız gerekiyor. Bu esanada da "fflush()" fonksiyonu imdadımıza yetişiyor. Tampon bölgeyi boşaltman için "scanf()" fonksiyonunu call etmeden önce "fflush()" fonksiyonunu call ederek tampon(buffer) bölgesini boşaltmamız gerekiyor. O zaman ise kod şu şekilde oluyor: printf("\tMenu\nE\tEncode(Read text and convert to morse)\n" "D\tDecode(Read morse and convert to text)\n" "X\tExit\n&gt;"); scanf("%c", &selection;); while ( (selection != 'x') && (selection != 'X') ) { if( (selection == 'e') || (selection == 'E') ) { //Statements } else if( (selection == 'd') || (selection == 'D') ) { //Statements } fflush(stdin); printf("\tMenu\nE\tEncode(Read text and convert to morse)\n" "D\tDecode(Read morse and convert to text)\n" "X\tExit\n&gt;"); scanf("%c", &selection;); }      Peki nedir bu tampon(buffer) bölge? Klavyeden kullanıcı bir input girdiğinde aslında bu input, standart input dosyasına yazılmış oluyor. Yani aslında bizim bildiğimiz klavye ve ekran, input ve output dosyalarını temsil ediyor. Terminolojik olarak bunlar C dilinde "stdin" dosyası ve "stdout" dosyası olarak adlandırılıyor. "stdin" dosyasının varsayılan değeri klavye, "stdout" dosyasının varsayılan değeri ise ekran oluyor. "stdin" dosyasından okuma yapan fonksiyonlara ("gets()", "scanf()" gibi) verilen inputlar tampon bölgesinde tutuluyor ve okuma burada gerçekleşiyor.      Örneğin en çok kullandığımız fonksiyonlardan biri olan "printf()" fonksiyonu aslında "fpirntf()" olarak çalışır. "printf("Bilgi Paylaştıkça Artar")" dediğimizde aslında "fprintf(stdout, "Bilgi Paylaştıkça Artar")" demiş oluyoruz.      Sonuç olarak "scanf()"ten önce yukarıdaki kodda olduğu gibi "fflush(stdin)" fonksiyonunu kullandığımızda "stdin" dosyasını boşaltmış oluyoruz. Tavsiyem, "scanf()"ten önce mümkün olduğu kadar tampon bölgeyi boşaltmanızdır. Hatta "gets()" fonksiyonundan önce de aynı işlemi yapıp, string alırken de başınıza gelebilecek bu sorundan kurtulabilirsiniz. Aksi halde sorunun ne olduğunu saatlerce düşünüp saç baş yolabilirsiniz.Kaynak: http://www.sorucevap.com/bilisimteknolojisi/programcilik/c/ders.asp?206634

Etiket(ler): , , , , , , ,



[KickIt] [Dzone] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

E-mail | Permalink | Trackback | Yazı RSSRSS comment feed 3 Yorumlar

Eki032008

Çankaya Üniversitesi Bilgisayar Mühendisliği Topluluğu (BMT) Resmi Sitesi Yayında

     Bmt bir yılı aşkındır faaliyetlerine devam etmekte. Duyurularımızı yapmak ve etkileşimi kesmemek için google groups kullanılıyordu. Ama artık topluluğa ait bir sitenin zamanı geldi. Yeni sitemiz açılmıştır. Site "Community Server" tabanlı oluşturuldu. Sitenin yapımında yaz boyu emeği geçen tüm ekip arkadaşlarıma teşekkür ediyorum. Artık duyurular ve paylaşımlar bu sitenin üzerinden yapılacak. Siteye üyelik ve site hakkındaki tüm konulara ana sayfadaki açıklamalardan ulaşabilirsiniz. Sitemizin linki http://www.cankayabmt.org Paylaşımlarınızı esirgemeyin ve hepberaber büyüyelim.

Etiket(ler): , ,



[KickIt] [Dzone] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

E-mail | Permalink | Trackback | Yazı RSSRSS comment feed 0 Yorumlar

Eyl292008

BlogEngine Kurulumu ve Yönetimi (Resimli Tutorial)

Yazar: Gökhan ÖZİÇ Yayınlanma Saati: 10:01
Kategori(ler): ASP.NET | BlogEngine.NET | C#

     .NET platformunda open source olarak sunulan yeni ve yaygın blog teknolojisi BlogEngine'i tanıtım ve kurulum amaçlı, resimli bir tutorial hazırladım. Blog kurmak isteyenler için büyük kolaylık saÄŸlayan ve open source olması nedeniyle istediÄŸiniz deÄŸiÅŸikliÄŸi yapabileceÄŸiniz bir proje.      Öncelikle BlogEngine'i bilgisayarımızda local olarak çalıştırabilmek için Windows'un IIS (Internet Information Services) ayarlarının yapılmış olması ve bu Windows bileÅŸenlerinin yüklü olması gerek. Bunun için "BaÅŸlat"tan "Denetim Masası"na girin. Buradan Windows bileÅŸenlerini yüklemek için "Programlar ve Özellikler"e girin.      Daha sonra çıkan pencereden "Windows özelliklerini aç veya kapat"ı seçin. Karşınıza gelen pencere Windows'un bileÅŸenlerini ekleyip kaldırmanıza yarıyacak pencere.      Resimde de gördüğünüz gibi "Internet Information Services" sekmesinin altında "World Wide Web" hizmetlerinin altındaki "Uygulama GeliÅŸtirme Özellikleri" sekmesinin altındaki seçeneklerden "ASP.NET"in seçili olup olmadığını kontrol edin. DiÄŸer seçenekleri de isterseniz tickleyebilir, isterseniz sadece "ASP.NET" seçeneÄŸini de tickleyebilirsiniz. "ASP.NET" seçeneÄŸini ticklemek size yeterli olacaktır. Daha sonra pecerede "Tamam" butonunu tıklayın. EÄŸer deÄŸiÅŸiklik yapıp "ASP.NET" seçeneÄŸini ticklediyseniz "Windows BileÅŸenleri" kurulumu baÅŸlayacak ve "IIS ASP.NET" desteÄŸi yüklenecektir. Bu iÅŸlem biraz zaman alabilir.      Daha sonra resimde gösterilen siteye yani http://www.codeplex.com/blogenginetr adresine girin. SaÄŸdaki "Download" butonuna tıklayıp "BlogEngine 1.4.5 Türkçe" versiyonunu bilgisayarınıza download edin.      Download etmek için butona tıkladığınızda karşınıza gelen pencerede "I Agree" demeniz yeterli.        İndirdiÄŸiniz "Winrar" dosyasının içindeki "BlogEngine.NET_TR_1.4.5.zip" klasörünü kopyalayın.      Ve resimde görülen "C:\inetpub\wwwroot" klasörü içine kopyaladığımız dosyayı yapıştırın. Bu iÅŸlem projemizin local üzerinde çalışmasını saÄŸlayacak adımlardan biri.      Şimdi "Çalıştır"a gelin (Windows TuÅŸu+R ya da BaÅŸlat\Çalıştır). "Çalıştır"a resimde görüldüğü gibi "inetmgr" komutunu yazın ve "Tamam" deyin. Bu komut sizi "Internet Information Services (IIS) Yöneticisi"ne götürecek.      Karşınıza çıkan bu yöneticiye projenizi app olarak ekleyerek localde çalışmasını saÄŸlayacağız. Resimde de görüldüğü üzere bilgisayar isminizin yanındaki "+"ya, sonra "Web Siteleri"nin yanındaki "+"ya basın ve karşınıza gelen "Default Websites" sekmesine saÄŸ tıklayın. Çıkan menüden de "Uygulama Ekle" sekmesini seçin.      Şimdi karşınıza "Uygulama Ekle" aracı gelecek. ASP.NET uygulamanızı eklemek için iÅŸlemleri buradan yapacağız. İlk olarak "Uygulama Havuzu"nu seçmeniz gerekiyor. Buradan "Seç" butonuna tıklayın.      Karşınıza çıkacak pencerede menüden "Classic .NET AppPool"u seçin ve "Tamam"a tıklayın.      Şimdi "Uygulama Ekle" aracına geri döndük. Projenizin baÅŸlatılabilmesi için fiziksel yolunun IIS'e gösterilmesi gerek. Bunun için "Fiziksel Yol" textboxının sağındaki butona tıklayın.      Daha sonra çıkan pencereden projenizi resimde gösterildiÄŸi gibi seçip "Tamam"a basın.      Yeniden "Uygulama Ekle" aracına döndük. Åžimdi yapmanız gereken bu IIS uygulamasına bir isim vermek. Bunun için "DiÄŸer Ad" textboxında uygulamanın ismini istediÄŸiniz ÅŸekilde deÄŸiÅŸtirin. Yalnız, ÅŸunu belirtmemde fayda var. Bu ismi istediÄŸimiz gibi seçebiliyoruz fakat uygulamaya eriÅŸirken bu ismi kullanacağız. "DiÄŸer Ad" textboxına uygulamanızın ismini yazdıktan sonra tamam deyin. Böylelikle IIS'e uygulamanız eklendi.      Gördüğünüz gibi uygulamanız IIS'e eklendi ve ÅŸu an iis yöneticisinde gözüküyor. Artık uygulamanızı çalıştırmaya hazırsınız.      Uygulamayı çalıştırmak oldukça basit. Browser'ınızdan yeni bir pencere açın ve adres kısmına "localhost/BlogEngine" yazıp enterlayın. IIS, sanki bir hostmuÅŸ gibi uygulamanızı besleyerek bilgisayarınız üzerinden uygulamanın çalışmasını saÄŸlayacaktır. Yalnız, bu iÅŸlem ilk seferinde biraz zaman alıyor. Bunun nedeni IIS'den verilerin okunmasının uzun sürmesi. Fakat ilk seferden sonra beklemenize gerek kalmayacak. Bekleme süresinden sonra siteniz karşınıza geldi. Åžu anda gördüğünüz BlogEngine'in standart hali. İsterseniz kendinize göre yeni bir tema hazırlayıp kullanabilir, isterseniz mevcut temanın üzerinden deÄŸiÅŸiklikler yapabilir, isterseniz de hazır temalar kullanabilirsiniz. Bu hali hoÅŸunuza gittiyse bu haliyle de kullanabilirsiniz. "Site Adı" ve altındaki "Kısa Tanım" bölümleri, saÄŸda gördüğünüz widgetlar... Hepsini kendinize göre düzenleyebilir ve istediÄŸiniz ayarı yapabilirsiniz. Fakat bu düzenlemeleri ve ayarları yapmak için ilk önce siteye "Login" olmanız gerek. "Oturum Aç" sekmesine tıklayın.      BlogEngine baÅŸlangıçta kullanıcı adı "admin" ve ÅŸifre "admin" olarak geliyor. Bunları gerekli yerlere yazıp "Oturum Aç" deyin. Artık sitenize login oldunuz. Gördüğünüz gibi login olmadan önce sitede görünmeyen "Administration" widgetı ÅŸimdi karşınıza geldi. Fakat bu widgettan gerekli ayarlamaları yapmak için ilk önce sitenin "Okuma/Yazma" izinlerini vermeniz gerek. DiÄŸer türlü ÅŸu anda kullandığınız bilgisayarın (sizin hesabınızın) sitede "Okuma/Yazma" yetkisi olmadığı için yapmaya çalışıtığınız deÄŸiÅŸikliklerde site hata verecektir. Åžimdi bu izinleri vereceÄŸiz.      Hatırladığınız üzere projenizi "wwwroot" klasörünün içine kopyalamıştık. Åžimdi tekrar oraya dönüyoruz. BlogEngine.NET_TR_1.4.5 klasörüne saÄŸ tıklayıp "Özellikler" deyin.      Çıkan pencerde "Güvenlik" sekmesine gidin. Buradan "CREATOR OWNER"ı seçip "Düzenle" deyin.      Şimdi karşınıza çıkan pencerden "USERS(.........)"i seçip aÅŸağıdaki "İzin Ver" bölümündeki "Tam Denetim" seçeneÄŸini tickleyin. Zaten sırf onu ticklediÄŸinizde diÄŸer seçenekler de otomatikman ticklenecektir. AÅŸağıdaki "Özel İzinler" tickli kalmayacak. Bu kafanızı karıştırmasın. Sırasıyla "Uygula" ve "Tamam" deyip iÅŸlemi sonlandırın. Daha sonra çıkan pencereyi de "Tamam" diyerek kapatın.      Artık sitenizin ayarlarıyla istediÄŸiniz gibi oynayabilir ve kiÅŸiselleÅŸtirebilirsiniz. İlk önce bu kiÅŸiselleÅŸtirmeye kendi adımız soyadımızla yeni bir kullanıcı ekleyerek baÅŸlıyalım. "Administration" widgetından "Kullanıcılar" sekmesine tıklayın.      Çıkan pencerede yeni kullanıcı adınızı, ÅŸifrenizi ve kullandığınız mailinizi yazın ve "Kullanıcı OluÅŸtur" butonuna tıklayın.      Gördüğünüz gibi yeni kullanıcınız oluÅŸturuldu. AÅŸağıya dikkat ederseniz "Roles" menüsünü göreceksiniz. Buradan oluÅŸturduÄŸunuz kullanıcıya çeÅŸitli görevler vermek mümkün. İsterseniz "Administrators" seçeneÄŸini tickleyerek kullanıcıyı admin yapabilir, isterseniz "Editors" seçeneÄŸini tickleyerek o kullanıcıya sadece yazarlık yetkisi verebilirsiniz. İsterseniz ikisini de tickleyebilirsiniz. Åžimdi az önce oluÅŸturduÄŸunuz kullanıcıda "Administrators" ve "Editors" rollerini tickleyin. Artık "Admin" kullanıcısına da ihtiyacınız yok. "Admin" kullanıcısının yanındaki "Sil" seçeneÄŸine tıklayarak bu hesabı silin.      Az önce "admin" hesabıyla login olduÄŸunuz için, hesabı sildiÄŸinizde bir anda logout oldunuz. Åžimdi yeni oluÅŸturduÄŸunuz hesap ile sitenize login olun.      Artık kendi hesabınıza özel bir blogunuz var. İstediÄŸiniz deÄŸiÅŸiklikleri yapmaya ve yazılarınızı yayınlamaya hazırsınız. Åžimdi ufak bir ayar daha yapacağız ki projenin ayarlanması iyice anlaşılmış olsun. SaÄŸdaki "Administration" widgetından "Ayarlar" sekmesine tıklayın.      Sitemizin ayarlar bölümündeyiz artık. Siteyi ilk açtığımızda "Site Adı" ve "Kısa Tanım" kısımlarını hatırlarsınız. Onları buradan deÄŸiÅŸtirmek mümkün. Site adınızı ve kısa tanımını buradan deÄŸiÅŸtirin. Daha sonra "Ayarları Kaydet" butonuna basın. Anasayfaya gidin.      Gördüğünüz gibi yaptığınız ayarlara göre "Site Adı" ve "Kısa Tanım"ı sizin isteÄŸinize göre deÄŸiÅŸti. İşte kiÅŸisel blogunuz artık kullanılmaya hazır. Daha birçok ayarı halletmeniz gerekiyor fakat "Administration" widgetını biraz karıştırdığınızda yapamayacağınız hiçbirÅŸey yok. Sorularınız için [email protected] adresine mail atabilir, bu postun altına da yazabilirsiniz. Elimden geldiÄŸince cevaplamaya çalışacağım. Herkese kolay gelsin. NOT: Bu oluÅŸturduÄŸumuz uygulama local üzerinden oluÅŸturulduÄŸu için sadece siz görebilirsiniz. İnternetten herhangi birisi göremez. Blogunuzu internette yayınlamak için domain name ve host satın almalısınız. Ama blogengine öğrenmek; hatta asp.net ve c# öğrenmek isteyenleriniz varsa bu proje gayet kiÅŸiyi geliÅŸtirici bir proje. Daha fazla bilgi için verebileceÄŸim linkler; http://www.blogenginetr.com http://www.codeplex.com http://dotnetblogengine.net

Etiket(ler): , ,



[KickIt] [Dzone] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

E-mail | Permalink | Trackback | Yazı RSSRSS comment feed 3 Yorumlar

Eyl282008

INETA Capital Hit

       Çankaya Üniversitesi Bilgisayar Mühendisliği ve Yapay Zeka ve Robotik toplulukları olarak 18-19 Ekim 2008 tarihlerinde INETA Capital Hit seminerlerine ev sahipliği yapacağız. 2 gün sürecek seminerlerde SQL'den tutun WCF'e kadar çıkan tüm yenilikler katılımcılarla paylaşılacak. 2 gün boyunca bilişim kokacak bu etkinliğe herkes davetli. Tek yapmanız gereken sitemde bulunan "INETA Capital Hit" bannerına tıklayıp kaydınızı yaptırmak.        Seminerler 18-19 Ekim 2008 günlerinde Çankaya Üniversitesi Kırmızı Salon(Konferans Salonu)'da verilecektir. Seminerlerin detayları şöyle:   INETA CAPITAL HIT 18 Ekim 09:30-11:00 Silverlight 2.0 11:15-12:45 IIS7 Yenilikleri 13:30-15:30 Panel 16:00 18:00 LINQ 19 Ekim 09:30 11:15 WPF ve Expression Blend 11:30 13:30 WCF 14:00 15:40 Internet Explorer 8.0 16:00 18:00 ADO.NET Data Services (Astoria) Konuşmacılar: Burak Selim Şenyurt Daron Yöndem Eralp Erat Muammer Benzeş Tayfun Akçay Uğur Umutluoğlu

Etiket(ler): , , ,



[KickIt] [Dzone] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

E-mail | Permalink | Trackback | Yazı RSSRSS comment feed 0 Yorumlar

Eyl212008

Community Server E-mail Ayarları

       Bilgisayar MühendisliÄŸi TopluluÄŸu(BMT) için baÅŸladığımız yeni site projesinde BMT ekibi olarak Community Server kullanmaya karar verdik. Yaklaşık bir aydır da sitenin ayarları ve testleri ile uÄŸraÅŸmaktayız. Site halen test aÅŸamasında. Test aÅŸaması biter bitmez siteyi yayına sokacağız.        Community Serer sosyal bir paylaşım platformu oluÅŸturmak istiyosanız esnekliÄŸiyle birinci planda geliyor. Site ayarlamaları birhayli detaylı. Sitenin bölümleri için ayrı ayrı moderatörlük verebilmeye ek olarak sitenin tamamına hükmedebilen "System Administrator" rolü de kullanıcılara verilebiliyor. Aynı faceookta olduÄŸu gibi profilinizde arkadaÅŸ listesi oluÅŸturabilir, anonslarınızı yayınlayabilir, bogunuzu rss ile profilinize yönlendirebilir, forumlarda kullanmak üzere kendinize bir resim upload edebilir, dosya paylaÅŸabilir, tartışma baÅŸlatabilir, yorum yapabilir, gruplar oluÅŸturabilir ya da varolanlara üye olabilirsiniz. Ancak hostunuzun bandwith'inin yüksek olmasını tavsiye ederim. Aksi halde yavaÅŸ çalışabilir.        Sitenin oluÅŸturulması aÅŸamasında bizi zorlayan kısım ise e-mail ayarları oldu. Çünkü siteden mail alamıyorduk. İnternette araÅŸtırmamıza raÄŸmen faydalı bir bilgi bulamadık. En sonunda sorunun kaynağını bulmayı baÅŸardık. İşte Community Server e-mail ayarları: General *Admin Email Address Site yöneticisinin e-mail adresini buraya girin. ([email protected]) *Enable Email Forumlar için mail desteÄŸini açma ya da kapatma. Bu seçeneÄŸi "Enable" yapın. *Email Encoding E-mail kodlaması. Bu seçeneÄŸi utf-8 olarak bırakın. *Email Subject Encoding E-mail baÅŸlık kodlaması. Bu seçeneÄŸi de utf-8 olarak bırakın. *Email Throttle E-mail aralıklarındaki gönderilecek maximum sayıdaki mail. Bunu açıklamada yazdığı gibi Default: -1 de bırakın. *SMTP Server Forumlarda mail göndermek için kullanılan SMTP server adresini buraya yazın. (mail.mysite.net)   SMTP Login Info *Use SMTP over SSL SMTP serverınız için SSL baÄŸlantısı kullanıp kullanmadığınızı buradan ayarlayın. *Use Windows Integrated Authentication Servisle iliÅŸiÄŸin kanıtlanması için kullanılan anlık iÅŸlem güvenliÄŸi içeriÄŸi. *SMTP server login required SMTP serverınız login gerektiriyor mu? Aslında bu seçenek, sitenizden gönderilecek maillerin bel kemiÄŸi. SMTP serverınızın login gerektirip gerektirmediÄŸini kesinkez öğrenip bu ayarı yapın. *SMTP Server Loginname SMTP server kullanıcı adı. Sadece kullanıcı adınızı yazabilir ya da [email protected] olarak da ayarlıyabilirsiniz.  *SMTP Server Password SMTP server ÅŸifresi. *SMTP Port Number SMTP port numarası. 25 olarak ayarlayabilirsiniz.   Mail Gateway General *Enable Mail Gateway Mail Gateway eklentisini etkinleÅŸtirme ya da kaldırma seçeneÄŸi. Bu eklentiyi kullanmak istiyorsanız Community Server Lisansı'nızın olması gerek. Bizim kullandığımız Express Edition, Community Server'ın bedava versiyonu. Express Edition'da bu eklenti bulunmuyor. Bu yüzden bu eklentiyi kullanmak istiyorsanız diÄŸer Community Server versiyonlarından satın almanız gerek. *Remote Access Code Uzaktan baÄŸlantılı Mail Gateway'in severla iletiÅŸimi için gereken güvenlik kodu. *Email Domain Tüm e-maillerin atılacağı domain.   Incoming Mail Accounts Yöneticilere gelecek maillerin toplanacağı mail box. Bunun için baÅŸlığın hemen altındaki "Add New Mailbox" düğmesine tıklıyoruz. Karşımıza çıkan pencerede yapılması gerekenler: Mail Gateway Mailbox Setup *Host Name Mailbox'ınızın bulunduÄŸu host name. (mail.mysite.net) *User Name Mailbox'ınızın kullanıcı adı. (me) *Password Mailbox'ınızın ÅŸifresi. *Mailbox Type Mailbox tipiniz. POP3, IMAP, POP3 SSL ya da IMAP SSL. *Enabled Disabled Mailbox'ınızınetkin olup olmadığı. Etkinse enable'ı seçin. Ve pencereyi save edip tekrar mail ayarları sayfasına dönün.        Buradan sonra yapmanız gereken tek ÅŸey girdiÄŸiniz bilgileri son birkez kontrol edip sayfanın saÄŸ alt köşesindeki save düğmesini tıklamak. Ama size tavsiyem, SMTP ayarlarınızın çalışıp çalışmadığını test etmek için "Control Panel" sekmesinden "Tools" bölümüne gelip "Send Mass Email" sekmesine giderek buradan toplu bir mail göndermeniz. Burada toplu maili site ile alakalı kimlere göndrereceÄŸinizi (sistem adminlerine, tüm herkese ya da forum moderatörlerine vb) seçin ve maili alanların cevaplamasını isteyerek bir test maili gönderin. Attığınız mass mail herkese ulaşıyor ve cevapları da saÄŸlıklı ÅŸekilde alabiliyorsanız sitenizin SMTP ayarları düzgün çalışıyor demektir.        Community Server ile ilgili istediÄŸiniz soruları bana sorabilirsiniz. Elimden geldiÄŸince yardımcı olmaya çalışacağım.

Etiket(ler): , ,



[KickIt] [Dzone] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

E-mail | Permalink | Trackback | Yazı RSSRSS comment feed 0 Yorumlar

Eyl152008

BlogEngine "contact.aspx" Sorunu

Yazar: Gökhan ÖZİÇ Yayınlanma Saati: 08:23
Kategori(ler): ASP.NET | BlogEngine.NET | C#

       Bir önceki yazımda BlogEngine ayarlarında, kontroller bölümünde iletişim formu için dosya eklemeyi etkinleştirip kaldırabilmede bir problem olduğundan bahsetmiştim. Problemi hatırlatmak için kısaca bahsedeyim. Blogumu ilk kurduğumda iletişim sayfasında bana atılan mesajlara dosya eklemeyi kaldırmıştım. Fakat iletişim sayfasında (contact.aspx) yaptığım testlerde dosya ekleme kapalıyken bana gönderilen mesajlar iletilmiyordu. Bunu da "Gönder" butonuna tıkladığımda "Teşekkürler. Mesajınız iletildi." yazısını alamayınca farkettim. Bu mesajı almak yerine aynı sayfa tekrar karşıma geldi. Mailimi kontrol ettiğimde de gönderilen mesajların bana ulaşmadığını gördüm. Birkaç kez test etmeme rağmen sorun çözülmedi. Bende dosya eklemeyi tekrar etkinleştirip soruna geçici bir çözüm buldum.        Şimdi sizlere asıl çözümden bahsedeceğim. Aslında çözüm oldukça basit. İlk başta problemin "controls.aspx"den kaynaklandığını sandım. Fakat yaptığım kontrollerde bir sorun olmadığını gördüm. Sorun muhtmelen "contact.aspx" sayfasındaki "Gönder" butonunun eventinden kaynaklanıyordu. Koda baktığımda soruna "Gönder"  butonunun eventindeki if satementında fazladan koyulan bir "&&" neden olduğunu anladım. Şimdi yapmanız gereken "contact.aspx.cs" sayfasını açmak ve "private void btnSend_Click(object sender, EventArgs e)" eventini şu kodla değiştirmek: private void btnSend_Click(object sender, EventArgs e) { if (IsCaptchaValid && Page.IsValid) { bool success = SendEmail(txtEmail.Text, txtName.Text, txtSubject.Text, txtMessage.Text); divForm.Visible = !success; lblStatus.Visible = !success; divThank.Visible = success; SetCookie(); } }        Böylelikle sorunumuz çözülmüş oluyur. Blog import etmek için ise araştırmalarım sürüyor.

Etiket(ler): ,



[KickIt] [Dzone] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

E-mail | Permalink | Trackback | Yazı RSSRSS comment feed 2 Yorumlar

Eyl112008

www.gokhanozic.com Yayında!!!

Yazar: Gökhan ÖZİÇ Yayınlanma Saati: 15:15
Kategori(ler): ASP.NET | BlogEngine.NET | C#

       Merhaba;        Birkaç ay öncesine kadar http://gokhanozic.spaces.live.com adresinde bulunan blogumu BlogEngine ortamında kendi domainime taşıdım. Artık projelerimi, çalışmalarımı ve fikirlerimi bu adreste yayınlayacağım.        BlogEngine, blog kurmak isteyenler için biçilmiş kaftan. Kurması ve kullanması son derece basit. "Open Source" bir proje olması ise herşeye tuz biber ekiyor. Eğer asp.net ve c# bilginiz de varsa BlogEngine'i kullanmak daha da basitleşiyor. Kendi temalarınızı oluşturmanız mümkün. Ama bu birhayli zaman alacaktır. Bunun haricinde isterseniz hazır temaları da kullanabilirsiniz. Ayrıca başka formattaki hazır temaları BlogEngine'e uyarlamak da mümkün. Örneğin bir WordPress temasını BlogEngine'e uyarlıyabilirsiniz. Sitenizi kendinize göre değiştirebilirsiniz. İsterseniz BlogEngine'in hazır widgetlarından yararlanabilir, isterseniz benim sitemde olduğu gibi widgetsız da kulanabilirsiniz. Sitenizin nasıl görüneceği tamamen sizin zevkinize kalmış.        Ben blogumda www.blogenginetr.com ekibinin hazırladığı 1.4.5.0 Türkçe versiyonunu kurdum. Kurulum aşamasından sonraki ayarları yapmam tahmin ettiğimden daha kısa sürdü. Tek problem eski blogumu bu domaine import etmeye çalıştığımda çıktı. RSS pathini doğru vermeme rağmen RSS'in invalid olduğu uyarısıyla defalarca karşılaştım. Bende eski blogumdaki girdileri manuel olarak taşımak zorunda kaldım. Ama sonunda o da bitti. Bir başka sorun da iletişim (contact.aspx) sayfasında çıktı. Bu sayfayla ilgili ayarlarda isterseniz size ulaşan maillere dosya eklenmemesini seçebiliyorsunuz. Ben bunu seçmiştim ve contact.aspx adresinde kendime attığım test maillerinden hiçbiri bana ulaşmadı. "Gönder" butonuna tıklandığında "Teşekkürler! Mesajınız iletildi..." mesajını almam gerekirken aynı sayfa tekrar karşıma geliyordu. Belkide daha önce kimsenin farketmediği bir bug bu. Araştırmama rağmen pek de yararlı bir bilgi bulamadım. Bende dosya eklemeyi tekrar aktif hale getirdim ve sorun çözüldü. Fakat dosya eklemeyi iptal ettiğimde hala aynı sorun devam etmekte. Bu soruna ve blog import etme sorunua bir çözüm bulursam buradan yayınlayacağım. Şimdilik görüşmek üzere.  

Etiket(ler):



[KickIt] [Dzone] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

E-mail | Permalink | Trackback | Yazı RSSRSS comment feed 4 Yorumlar

AÄŸu302008

2008-2009 MSP Programı Başvuru Sonuçları

Yazar: Gökhan ÖZİÇ Yayınlanma Saati: 10:38
Kategori(ler): KuruluÅŸlar

      2008-2009 dönemi MSP programı başvuruları nihayet sonlandı. Çankaya Üniversitesi MSP'liği için yapılan başvurularda 2 arkadaşımız bu dönemin MSP'leri olmaya hak kazandı. Çağrı ERDOĞAN ve Özlem HANCIOĞLU. Kendilerine görevleri boyunca başarılar diliyorum. İyi işler yapacaklarını biliyorum. İşte yeni MSP'ler: Abdurrahman  PINAR  KARADENİZ TEKNİK ÜNİVERSİTESİ  Ali Rıza Babaoğlan MARMARA ÜNİVERSİTESİ  Ali Uğur   Çakmak  BİLKENT ÜNİVERSİTESİ  Alper  Özçetin  BİLKENT ÜNİVERSİTESİ  Bahar  Inak  YILDIZ TEKNİK ÜNİVERSİTESİ  Bilgehan  Gürünlü  İSTANBUL TİCARET ÜNİVERSİTESİ  Buğra  KOCATURK  DOKUZ EYLÜL ÜNİVERSİTESİ  Bulut  Altıntaş  YEDİTEPE ÜNİVERSİTESİ  Burak  Kanmaz  İSTANBUL ÜNİVERSİTESİ  Burcu  Katırcı  ATILIM ÜNİVERSİTESİ  Çağrı Erdoğan ÇANKAYA ÜNİVERSİTESİ  Cemil  UZUN  ORTA DOĞU TEKNİK ÜNİVERSİTESİ  Deniz Demir İSTANBUL TEKNİK ÜNİVERSİTESİ  Doğukan  Sönmez  MARMARA ÜNİVERSİTESİ  Doruk  Dalçam  PAMUKKALE ÜNİVERSİTESİ  Ege  AKPINAR  BOĞAZİÇİ ÜNİVERSİTESİ  Emrah  KIVANÇ  DOĞUŞ ÜNİVERSİTESİ  Erçin  Yontar  ÇANAKKALE ONSEKİZ MART ÜNİVERSİTESİ  Fatih  Coşkun  TRAKYA ÜNİVERSİTESİ  Gazi  Akyüz  İSTANBUL KÜLTÜR ÜNİVERSİTESİ  Gökhan  Gülbiz  KOCAELİ ÜNİVERSİTESİ  Göknur  ŞİRİN  GALATASARAY ÜNİVERSİTESİ  Görkem  Güngör  DOĞU AKDENİZ ÜNİVERSİTESİ   Gülşah  YILDIZOĞLU  DOKUZ EYLÜL ÜNİVERSİTESİ  İbrahim  KIVANÇ  ERCİYES ÜNİVERSİTESİ  Kürşad  Koç  SELÇUK ÜNİVERSİTESİ  Mahmut  Kafkas  BOĞAZİÇİ ÜNİVERSİTESİ  Mehmet Aydın  Bahadır  KARADENİZ TEKNİK ÜNİVERSİTESİ  Murat  ARI  İZMİR EKONOMİ ÜNİVERSİTESİ  Murat  Aliravci  ORTA DOĞU TEKNİK ÜNİVERSİTESİ  Murat  Hacıoğlu  İSTANBUL TEKNİK ÜNİVERSİTESİ  Murat  Duman ORTA DOĞU TEKNİK ÜNİVERSİTESİ  Mustafa  Kaya  ERCİYES ÜNİVERSİTESİ  Oğuz Yılmaz  YILDIZ TEKNİK ÜNİVERSİTESİ  Okan  İNECİKLİ  EGE ÜNİVERSİTESİ  Ömer Faruk   ÖZDEMİR  GEBZE YÜKSEK TEKNOLOJİ  Onur  Varol  İSTANBUL TEKNİK ÜNİVERSİTESİ  Özlem  Hancıoğlu  ÇANKAYA ÜNİVERSİTESİ  Püren  Güler  BİLKENT ÜNİVERSİTESİ  Selim   Özenç  OSMANGAZİ ÜNİVERSİTESİ  Sevgi  Yiğit  ANADOLU ÜNİVERSİTESİ  Suna  Eralp  HACETTEPE ÜNİVERSİTESİ  Türkan Bakmış YEDİTEPE ÜNİVERSİTESİ  Yasemin  Avcular  KOÇ ÜNİVERSİTESİ  Yeşim  ARAÇ  BAŞKENT ÜNİVERSİTESİ  Yiğit Kıran KOÇ ÜNİVERSİTESİ  yunus   karadağ  MARMARA ÜNİVERSİTESİ  Yusuf  Yılmaz  BOĞAZİÇİ ÜNİVERSİTESİ    Microsoft Student Partners Programı        Microsoft Student Partners (MSP) programı, başarılı ve yetenekli bilgisayar bilimleri ve benzeri BT alanlarında eğitimlerine devam eden öğrencilerin ve yanısıra iletişimi, pazarlama yeteneklerini güçlü yanı olarak gören ve bu özelliklerini geliştirmek/pekiştirmek arzusunda olan öğrencilerin ortaya çıkarılmasına yardımcı olmayı amaçlamaktadır. Bu ünvana sahip olan öğrencinin, teknolojik bilgi ve becerilerini geliştirebilmesine ortam da sağlanarak, programa katılım yeterliliği ve teknoloji tutkunları ile meraklılarına yardımcı olma isteği takdir edilmektedir.        Bu program, Microsoft yazılım geliştirme teknolojilerinin üniversitelerdeki tanınırlık ve kullanılırlığının artırılmasına yönelik olarak Microsoft'un dünya çapında yürüttüğü çalışmalar kapsamındadır. Akademik dünyanın Microsoft yazılımları sayesinde kişisel potansiyellerini keşfedebilmelerine olanak sağlanmaktadır. ALINTIDIR: www.msakademik.net  

Etiket(ler): ,



[KickIt] [Dzone] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

E-mail | Permalink | Trackback | Yazı RSSRSS comment feed 0 Yorumlar