28 Ocak 2007

Eclipse C/C++ Debugger'ındaki Bir Hatanın Çözümü

Yazdığınız C kodunu debug etmek için Eclipse'in C/C++ eklentisini kullanıyorsanız aşağıdaki gibi bir hata ile karşılaşabilirsiniz:
Kullandığım işletim sistemi PARDUS. gcc ve gdb paketleri yüklü. Eclipse yazdığım c kodlarını çalıştırmak ve debug etmek için bu paketleri kullanıyor. Yazdığım bir C kodunu çalıştırabildim, fakat debug yapmak istediğimde "Failed to set program arguments, environment or working directory" gibi bir hata verdi. Bunun nedeni de şu imiş. Benim Eclipse çalışma alanım Eclipse Projelerim isminde bir klasördür. Debugger, oluşturduğunuz bir C projesinin yolunda boşluk karakteri görürse deminki hatayı veriyor. Yani Eclipse Projelerim klasörünün ismini Eclipse_Projelerim şeklinde değiştirdim ve sorun çözüldü. Aynı şekilde C kaynak dosyası da boşluk karakteri içermemeli.

25 Ocak 2007

iPhone Java'yı destekleyecek mi?

Bildiğiniz gibi Apple iPhone ismindeki telefonuyla telefon piyasasına da girmek istiyor. Bu ürün henüz dünya çapında satışa çıkarılmadı. Bu yazıyı yazarken herhalde Amerika'da satılmaktadır. Bu üründe de Apple tasarımdaki yaratıcılığını yine konuşturmuş. Neyse şimdi ürünün reklamını yapmayayım, en iyisi sadete geleyim. Şurda sitede Steve Jobs ile yapılmış bir söyleşi anlatılmış. Steve Jobs'un dediğine göre iPhone Java'yı içindeki tarayıcısında desteklemeyecekmiş. Çünkü artık Java kullanılmıyormuş, burda herhalde Applet'leri kastetmiş kendisi. Bu konuda haklı olabilir, çünkü gerçekten appletler artık o ilk çıktığı cazibesini nerdeyse kaybetti bence. Artık onun yerine insanlar flash kullanmayı tercih ediyor. Telefona üçüncü parti bir program yükleme konusunda da Jobs şunu söylemiş. "Telefon bir PC değildir, iki üç program kurduktan sonra telefon araması yaptığında telefon çalışmaz hale geliyor." Bence bu yanlış bir düşünce olmuş, çünkü mobil piyasası çok hareketli. Artık yazılım şirketleri mobil programlar geliştirerek bu piyasadaki pastadan pay almaya bakıyorlar. Bu nedenle telefon üreticileriyle yazılım firmaları çeşitli anlaşmalar yapyorlar. Bu nedenle Java ve .Net gibi yazılım ortamlarının bu alanda kullanımı da gittikçe artıyor. Mobil telefon piyasasına bakarsanız yeni çıkan telefonların nerdeyse hepsi Java destekliyor. Ed Burnette de bu konuda şunu söylemiş, telefon için yazılım geliştirirken C, C++ gibi unmanaged (yani memory kontrolünü sizin yaptığınız, pointer kullanımı...) yazılım dilleri yerine Java ve .Net gibi managed diller kullanırsanız telefon çökmez. Gerçekten de öyle, C'de eğer tanımladığınız pointer'ları iyi bir şekilde yönetemezseniz ve hafıza kullanımını iyi bir şekilde yönetemezsiniz o program telefona çok zarar verir. Bu nedenle Java gibi garbage collection'ı olan, hafıza yönetimini, pointer kullanımını kendisi ayarlayan diller kullanırsanız bir sorun çıkmaz. Bu anlatılanlara göre iPhone Java'yı desteklemezse yazık olur. Çünkü rekabet edeceği firmalar program desteği konusunda iPhone'a fark atar:)

05 Ocak 2007

Ölü Pixellere Son!

Bir dizüstü bilgisayar satın aldınız diyelim. Çok heyecanlısınız, çünkü uzun süredir bu anı bekliyordunuz. Eski masaüstü bilgisayarınızdan kurtuldunuz. Artık bilgisayarınızı istediğiniz yere taşıyabileceksiniz ve daha bir sürü güzel, heyecanlı düşünceler beyninizi kemiriyor.
Bu düşüncelerle dizüstünüzün kapağını açtınız ve açma düğmesine bastınız. İşletim sistemi çalıştı, herşey yolunda. Fakat o da ne? Ekranda bir tane benek duruyor, elinizle siliyosunuz gitmiyor, tükürüp siliyosunuz gene gitmiyor. Maalesef o benek silmekle gitmez! Bu benek aynen aşağıdaki gibidir:

Resimdeki kırmızı benek bir ölü pixeldir ve bunun tamiri için makineyi servise gönderebilirsiniz yada bu sitede iddia edildiğine göre bir java programı aracılığı ile bu ölü pixeli tekrar canlandırabilirsiniz. Programın ismi de JScreenFix. Çalıştırdığınızda karıncalı televizyon görüntüsünü andıran bir arayüz çıkarıyor ve bu ekranın bu ölü pixelleri düzelteceğine inanılıyor. Ölü pixeli olan arkadaşlar, bir deneyip buraya yazarsanız sevinirim. Bilgimiz olsun:)

04 Ocak 2007

Solr Index Server!!!

Apache Solr isminde bir ürün çıkardı. Solr bir arama sunucusu. Yani siz istediğiniz dökümanları, verileri sunucu tabanlı bir uygulamaya HTTP üzerinden XML istek (request), aynı AJAX gibi, olarak gönderiyorsunuz, sunucu da bu verileri kendi içerisinde Lucene projesini kullanarak indeksliyor. Bir şeyi aramak istediğinizde aynı şekilde XML istek olarak HTTP üzerinden sunucuya istek yolluyorsunuz. Sunucu da size sonuçları XML olarak döndürüyor.
Bir düşünsenize, büyük bir şirket ve yüklü bir döküman yığınının tutulduğu bir veya bir kaç sunucu var ve bu dökümanlardan tüm çalışanlar faydalanıyor. Solr sayesinde bu dökümanları indeksleyebilir ve hızlı arama sonuçlarına ulaşabilirsiniz, aynı google gibi:). Solr kullanarak sunucu üzerinde arama yapıp sonuçlarını kullanıcıya güzel bir arayüzle gösteren kullanıcı tabanlı (thin client) uygulamalar yazabilirsiniz. Örnekler çoğaltılabilir.
Bu uygulamanın özellikleri ve bir de eğitimi mevcut! Kolay gelsin...

02 Ocak 2007

Aptana Web IDE

Selamlar,
Eclipse RCP kullanılarak Aptana isminde bir web ide geliştirilmiş. Bu IDE sayesinde html, javascript ve css dosyalarınızı gayet kolaylıkla yönetebilirsiniz. Örneğin javascript kullanarak bir kütüphane (mesela AJAX kütüphanesi) yazmak istiyorsanız bu Aptana gayet iyi bir seçim olabilir. Çünkü ilk önce eclipse ortamından kopmamış oluyorsunuz, ikincisi Aptana içinde bir tane javascript debugger'ı getiriyor. Böylelikle yazdığınız javascript kodlarının nasıl çalıştığını gözlemleyebilirsiniz. Bir diğer özellik html, css, javascript için kod yardımı (code assist) özelliği de var.
Ayrıca bu Aptana'yı kullananlar bir de eğitim amaçlı olarak videolarını koydukları bir site yapmışlar. Bu sitede çeşitli kısa eğitimler bulabilirsiniz.