12 Ekim 2008 Pazar

ErlyWeb, an Erlang Web Framework

Previously on my blog diyerek, dizi havasında giriş yapmak istiyorum. Daha önce ne menem bir şeymiş bu Erlang dedim, aynen Python ve Ruby'de olduğu gibi bir web framework'ü de oldu mu tamam dememe fırsat kalmadan ErlyWeb'i gördüm.

Aslında Erlang ile geliştirilmiş olan Yaws (Yet Another Web Server)'ı görünce kıllanmıştım.

Ya nasip ... !

Python'dan sonra şimdi de parlayan yıldız Erlang mı?

Ülkemizde popülaritesi Pardus ile doruk noktasına ulaşan Python dili için aslında ne kadar da popülermiş diye hayıflandığımız zamanlar çok da eski sayılmazken şimdi de her yerde bir Erlang'dır gidiyor. Birkaç gündür bakınıyordum, bugünde FZ Blog'da bu girdiyi görünce birkaç satır yazasım geldi (gecenin bir vakti canım sıkıldığından değil :P).

Wikipedia'daki Erlang Sayfası'nda görüldüğü üzere CouchDB'nin geliştirilmesinde hatta Facebook (buna da link isteyeni döverler)'un chat sisteminin geliştirildiği dilmiş. Tabi ki daha da niceleri var. Bir dönem Ruby de böyle bir coşagelmişti, sanırım sıra Erlang'da.

Hayırlara vesile ... !

8 Ekim 2008 Çarşamba

CeBIT Bilişim Eurasia vs FOWA Future of Web Apps

7 Ekim itibariyle CeBIT Bilişim Eurasia başladı. Sponsorları dev firmalar olan Turkcell, Akbank ve Türk Telekom. İlk gün gitmeyi çok istiyordum, ancak hafta sonu gidebileceğim sanırsam. Gidince Özgürlük İçin standını da ziyaret etmeyi planlıyorum. Pardus ile ilgili yeni birkaç güzellik varmış onları görmeden olmaz. Biraz ipucu için buraya bakılabilir. İşin açıkçası Pardus ve Özgürlük İçin standları dışında ilgimi çekebileceğini düşündüğüm çok şey olduğuna inanmıyorum. Belki iPhone3G için Turkcell standına da uğranabilir :P

Tabi bir de FOWA'yı duyunca, sağlam bir çektim, onu itiraf etmem gerek sanırsam.

8 Ekim'de Londra'da da FOWA (Future of Web Apps) başlıyormuş. Sponsorları :



Başlıkta da "vs" yazınca karşılaştırmayı eskilere gönderme yaparak örneklemek istedim. Street Fighter'da Dhalsim vs Ken olarak yazmak hiç de yanlış olmaz sanırsam. Hani ilk raundu perfect alırsın, sonra ikinci raund perfect'i bozarsa son raund perfect alayım deyip o raundu bilerek yenilirsin, sonra son raundda perfect alırsın ya, işte öyle bir şey... !

7 Ekim 2008 Salı

Türkçe lorem ipsum

Cezbelendi bundan dolayı masaya doğru teldeki adresini öyle ki mutlu oldular bilgiyasayarı orta camisi cezbelendi türemiş sıfat hesap makinesi. Bilgisayarı yapacakmış gidecekmiş düşünüyor bilgisayarı gazete ama göze çarpan batarya kutusu bundan dolayı sokaklarda göze çarpan gül. Ve bilgisayarı otobüs dergi ama bundan dolayı sandalye eve doğru dergi anlamsız sıradanlıktan sıradanlıktan. Sıla koştum yazın yapacakmış adanaya de. Otobüs de mutlu oldular koşuyorlar sinema hesap makinesi. Gazete düşünüyor beğendim ışık dağılımı çobanın bundan dolayı gül sıla uzattı yapacakmış masaya doğru gazete biber çakıl. Umut duyulmamış cesurca yaptı göze çarpan gül bahar lambadaki layıkıyla mutlu oldular düşünüyor.

Sarmal açılmadan dolayı kapının kulu dergi lambadaki gidecekmiş biber un değirmeni duyulmamış un değirmeni cesurca yaptı bilgisayarı gülüyorum. Yazın lakin lambadaki anlamsız gidecekmiş karşıdakine. Umut bilgiyasayarı bahar salladı türemiş sıfat çünkü tv de biber. Balıkhaneye anlamsız sinema cezbelendi çünkü göze çarpan masanın ona doğru ötekinden dolayı. Patlıcan teldeki anlamsız masanın de.

Telefonu teldeki göze çarpan sinema telefonu çakıl masaya doğru değerli olduğu için koyun filmini mi. Filmini mi duyulmamış bilgiyasayarı kalemi sıla domates gül ötekinden dolayı yapacakmış sıla ekşili çorba ve hesap makinesi. Karşıdakine masaya doğru anlamsız gazete ötekinden dolayı cezbelendi mıknatıslı okuma sayfası masaya doğru ışık dağılımı masanın gördüm düşünüyor. Adanaya masaya doğru karşıdakine eve doğru bundan dolayı gördüm bundan dolayı sıla yapacakmış sokaklarda. Kalemi teldeki sıla yapacakmış göze çarpan kalemi biber mutlu oldular gidecekmiş ışık dağılımı. Nedirnedemek Türkçe Lorem İpsum.


Türkçe lorem ipsum üreteci de ahanda burada.

IBM XML Challenge

Geçen sene ilki yapılan IBM Yazılım Akademisi 2008'e DEbUt takımını oluşturup 4 kişi katıldık. Amacımız bitirme projemizi yaparken mümkün olduğunca kendimize bir şeyler katacak bir projeye girişmekti. Microsoft'un Imagine Cup'ına da katılmak istemiyorduk.

Başlarda bitirme projesi konumuz dahi belli değildi. Özgür yazılım adına bir proje yapmak istiyorduk baratrion ile. Tabi doğal olarak ilk aklımıza gelen Pardus'a dahil olabilecek bir proje olmasıydı. İçerisinde Machine Learning kullanabileceğimiz ve bunu Pardus'a entegre edebileceğimiz bir proje. Serdar Soytetir'den okul yönetimi için bir uygulama geliştirilmesi fikri geldi, o dönemki kararsızlığımız içerisinde bir şekilde danışman hocamız Dr. Emine Ekin'in yönlendirmesiyle Yazılım Akademisi'ne katılmaya karar verdik.

Java ile geliştirme yapacak olmamız da ayrıca bir güzeldi. Malum Dokuz Eylül Üniversitesi Bilgisayar Mühendisliği'nin meşhur hocası "TA" yani Tevfik Aktuğlu'dan Data Structures (Veri Yapıları) dersini; Java ile anlatıyordu kendisi ve hakikaten de çok çok iyi anlatıyordu; almıştık. Kendisinin hazırladığı dökümanlar IBM'de yok, Bruce Eckel görse oturur ağlar, yemişim Thinking in Java'yı derdi (tabi bunu İngilizce nasıl söylerdi o daha da bir ayrı merak konusu).

Projeler içerisinden aklımıza en çok yatan Time Table Management (Zaman çizelgesi Yönetimi) oldu. Tabi başlarda hem akademik bir proje de olur gazıyla atladık ama nereden bilelim bu meret deli zormuş. Hatta ne kadar zor olabilir ki diyenlere, canım NP'yi bildin mi diye yanıt vermek istiyorum.

Gerek problemin zor oluşu, gerekse IBM araçlarından WebSphere Application Server, Rational Application Developer, DB2' yu kullanmamız bakımından çok güzel bir tecrübe oldu. Tabi kullanılabilecek teknolojiler bu kadarla da sınırlı değil. Versiyon kontrol sistemlerinden SVN (biz SVN kullandık) ya da CVS kullanılabilir. Object Relational Mapper olarak Hibernate olmazsa olmazlardan. Sıralandıkça sıralanabilir. Şov yaptırmayın bana :P

Hakikaten bir proje geliştirilmesinde baştan sona her adımı uyguluyorsunuz. Hatta öyle ki modeller oluşturup, class diagramlar çıkararak projeyi tasarlamanız isteniyor ve özellikle de son sınıf öğrencileri için çok güzel bir tecrübe oluyor, tabi referans kısmına hiç değinmeme gerek yok.

Aslında bu başlığı o kadar çok dallandırıp budaklandırıp bir destana dönüştüresim olsa da müjdeli haber, uzatmayacağım :P

Yazılım Akademisi 2009 pure XML temasıyla geliyor. Bu seneki proje konuları da ilgi çekici gözüküyor. Tabi ki kendi belirleyeceğiniz bir proje ile de katılmanız mümkün.

Şiddetle tavsiye olunuyor, katılınız efem.

PS: IBM ile uzaktan yakında ilgim yok, Eclipse kullanıyorum, IBM dökümanlarının da hastasıyım o kadar.

Yukarıdaki PS kesmedi : Ben de bu yazıyı etikete boğmazsam ... ! :-m (çemçük smiley)

6 Ekim 2008 Pazartesi

Zen of Python

Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one-- and preferably only one --obvious way to do it.
Although that way may not be obvious at first unless you're Dutch.
Now is better than never.
Although never is often better than *right* now.
If the implementation is hard to explain, it's a bad idea.
If the implementation is easy to explain, it may be a good idea.
Namespaces are one honking great idea -- let's do more of those!

4 Ekim 2008 Cumartesi

Comparing JavaScript Frameworks

Java is finally free and open

Richard Stallman described the encumbered code as :

“The one last obstacle [which] remains in liberating JDK and disarming the Java Trap completely”

and rallied the FOSS and Java communities to

“… work together to replace that code with free software”

So, who would step up to the challenge of making Java truly free and open ?

In June, 2007 - Red Hat launched the IcedTea project with the goal of making OpenJDK usable without requiring any other software that is not free. That in turn would allow OpenJDK to be included in Fedora and other Linux distributions without restrictions. The IcedTea Project made use of previous work developed under the GNU Classpath Project which had been independently driving towards a free and open implementation of the Java class libraries.

This week the IcedTea Project reached an important milestone - The latest OpenJDK binary included in Fedora 9 (x86 and x86_64) passes the rigorous Java Test Compatibility Kit (TCK). This means that it provides all the required Java APIs and behaves like any other Java SE 6 implementation - in keeping with the portability goal of the Java platform. As of writing, Fedora 9 is the only operating system to include a free and open Java SE 6 implementation that has passed the Java TCK. All of the code that makes this possible has been made available to the IcedTea project so everyone can benefit from the work.

The Java TCK is a complex suite of tools and documentation that verifies that Java implementations conform to the Java specification. It consists of more than 80,000 tests and over 1 million lines of code.

Original Blog Entry ...

2 Ekim 2008 Perşembe

Stumble Upon 2.0 İle Toolbar'dan Vazgeçiyormuş

Firefox'a ilk yüklediğim eklentiler arasında StumbleUpon Firefox Eklentisi gelirdi. Sitesini yeni görünümüne geçiren StumbleUpon şimdi de eklenti olayında değişikliğe gidiyormuş.

Buradaki girdiye bakarsak, çok da şekil görünüyor.

1 Ekim 2008 Çarşamba

Python 3.0 Kaynakları

Python 3.0 için dökümantasyonlar hız kazandı.

Python'un sitesindeki döküman son halini almaya başlamışken, bir de online kitap tanıtıldı. Kitabı okumaya buradan başlayabilirsiniz.

Bir de tanıdık bir amcadan Programming in Python 3 kitabı satışa sunulmaya başlamış. Preview yapılabiliyor.

Design Patterns'ten Bir Alıntı

Inheritance cansa, Composition canandır ... !