Video: Second Episode - 20 dakika ve 100 satırda Reddit

0
FZ
Video çılgınlığı devam ediyor. Bu gidişle HOW-TO belgelerinin yerini HOW-TO videoları mı alacak? İnsanlar "öğret bana usta, adım adım göster" yaklaşımını daha mı çok seviyorlar? Daha önce duyurduğumuz videoyu yapan Sven Van Caekenberghe'nin Episode 2: (Re)writing Reddit in Lisp is 20 minutes and 100 lines videosu taze taze, sıcak sıcak kamuya sunuldu.
Videoda Common Lisp etkileşimli geliştirme ortamında web uygulamalarının adım adım nasıl geliştirildiği, nasıl anında hata ayıklama yapıldığı gibi konular bir Reddit klonu üzerinden gösteriliyor. Renklendirilmiş kaynak kodu okuduktan sonra videoyu da izleyebilirsiniz.

Görüşler

0
tongucyumruk
Bu görüntülerden aldığımız en önemli mesaj nedir? Evet, copy-paste ile kod yazmak sağlıklı bir hareket değildir. Sonra saatlerce debugging ile uğraşmak gerekebilir. Hatta kodun son halinde copy-paste denen meretten kalma bir hata hala mevcuttu. Başlık konttrolü yaparken url değişkeninin değerinini "Title" olup olmadığını kontrol ediyor.

Bir de hatalı olarak değerlendirebileceğim birşey. URL'nin geçerliliğini kontrol ederken sadece 200 kodunu kabul ediyor. Halbuki HTTP protokolü 1xx, 2xx, 3xx şeklindeki kodların tamamını başarılı kabul eder. Örneğin sözkonusu URL 3xx serisi bir kod veriyorsa başka bir yere yönlendirilmiş, fakat hala geçerli demektir. Yani bu durumda bence HTTP işlem kodunun 400'den küçük olup olmadığını kontrol etmek daha sağlıklı bir hareket olacaktır.

Bu arada Kpax sisteminin UCW'ye oranla biraz daha alışılageldik web geliştirme sistemlerine benzemesi hoşuma gitti. Ancak umarım her yazdığımız defun'u URL'ler aracılığıyla erişilebilir kılmıyordur.
0
kesken
bu howto videolari iyi hos da kopyala-yapistir yapamiyoruz, o sikinti. yoksa yapabiliyor muyuz? dusununce olmicak birsey degil cunku, el yazisi okunuyor, videodan yazi mi cekilemeyecek,
0
arsenelupin
Eminim tüm sunum harikadır. .mov formatında... İyi de, sunucu ve masaüstü olarak linux kullanan bir adamım. İte-kaka .mov formatını izleyebilirim. (sourceforge ya da freshmeat üstünde neyin bulunup bulunmadığını da biliyorum varsayalım). Elalemin yarattığı formatı evlat edinmeye (adopt) mahkum muyum? ogg vardı; çok güzeldi ses dosyaları için. Görüntü için .mov mu yani? Bu mudur?
0
FZ
Problem bu tür video yapma işine girişen Common Lisp'çilerin aynı zamanda sağlam birer Apple kullanıcısı olmasından kaynaklanıyor sanırım. Ne yapabiliriz ki, adamlar seviyorlar Apple Mac ortamını.
0
librid
Bu arada Ogg Theora sessiz sedasız baya mesafe katetmiş. Linkte örnek videolar var.
0
tongucyumruk
Bill Clementson'da blogunda bu videodan ve son zamanlarda her önüne gelenin CL ile bir reddit geliştirdiğinden bahsetmiş. Dedim UCW'nin başı kel mi? Her ne kadar Marco Baringer'ın suretini görmemiş olsam da genç bir italyanın kel olacağını sanmıyorum. Kısacası, buyurun buradan yakın: UCW kullanarak reddit
0
Ragnor
Açıkcası Lisp ile yapılan Reddit'lerden en çok ilgimi çekeni sizin ki oldu. Kodlara şöyle bir baktım, birşey anlamadım pek ama bu kadar çok kullanıcı kitlesine ulaşmış bir websitenin altyapısını şurda 141 satır'a (ben değil emacs saydı ;)) sığdırmanız hem Lisp'in yeteneklerini hem de iyi bir ürün geliştirmenin aslında çok zor olmadığını, sadece iyi bir fikri doğru düzgün şekilde uygulamaya geçirmekten ibaret olduğunu açıkca gösteriyor.
Birde sizin reddit'inizden gaza gelip "Yetti bu Lisp'çiler, bizde yazalım gösterelim kendi programlama dilimizin gücünü!" diyecek Python'cu, Ruby'ci, Java'cı, SmallTalk'çu, Haskell'ci, Fortran'cı, .NET&C#'çı, Perl'ci, PHP'ci, C/C++'cı ve aklınıza gelen diğer bütün programlama dillerini kullanan insanlara açık çağrı, haydi sizde kendi dilinizde bir reddit uyarlaması yapın. Hem hava atmış olursunuz :), hem de bu sayede diller arasında azda olsa bir karşılaştırma yapabilmemize yarayacak bir veritabanı olur. Bir nevi er meydanı yani :).
0
tongucyumruk
Aslında benim sürümüm videoda gösterilen örnekteki tüm fonksiyonları içermiyor. Örneğin biri bir URL gönderirken URL'in geçerli olup olmadığı yönünde bir kontrol yok. Aynı şekilde Reddit'in bazı fonksiyonlarını da içermiyor. Örneğin kullanıcı kaydı olayı sözkonusu değil. Fakat Reddit'in temel fonksiyonu olan bağlantı ekleme ve bu bağlantıları puanlama özelliği mevcut.

Not: Yazması yaklaşık 45 dakika sürdü. CL'de çok yeni olduğum düşünülürse fena bir rakam lmadığını düşünüyorum.

Not2: Aslında tarih formatlama vs... gibi işler için kendi fonksiyonlarımı tanımlamak yerine hazır birşeyler kullansam 110-120 satır civarında olacaktı.
Görüş belirtmek için giriş yapın...

İlgili Yazılar

Hangi Common Lisp?

zekzekus

Daniel Weinreb, buradan erişilebilecek şekilde, Common Lisp gerçekleştirimleri (implementasyonları) ile ilgili bir inceleme yapmış. İncelemeye konu olan Common Lisp gerçekleştirimlerinin sorumluları kendi gerçekleştirimlerini anlatmışlar. "Nedir bu Lisp? Ortada bir sürü Lisp var, hangisini seçmeliyim?" diyenler için özellikle az bilinen Common Lisp gerçekleştirimlerini de içermesi açısından güzel bir kaynak.

Dama Oynayan LISP kodu - Altüst (Minimax) Algoritması

malkocoglu


Bilgisayarlar bir problemi yapay zeka kullanarak çözerken, kullandıkları teknikler; Karar ağacı, akıllı tahmin yeteneği ve o ana kadar geçilen yolu hatırlamaktır.
Bir rakibe karsi oyun oynayabilen bir yapay zeka algoritmasi bu tekniği bir ileri götürerek, rakibin hareketlerini de çözüm alanına almaya çalışır. Altüst (Minimax) algoritmasi, oyun zekası alanında bilinen bir algoritma; Yapay Zeka dersi için yazılmış ve altüst kulanan LISP Dama kodlarını sitemizden paylaşıyoruz.
Yapay Zeka ve Müsabaka - Altüst Algoritması

Common Lisp Geliştirme Ortamı Kurulumu

FZ

Güncelleme (31 Temmuz 2005): SLIME ile ilgili güzel video adresleri belgenin sonuna eklendi

Şimdiye dek fazlamesai.net sitesinde Lisp ile ilgili bazı belgeler, çeviriler, röportajlar yayınladık*. Yaklaşık 50 yıldır geliştirilen ve hala pek çok yeni dile ilham kaynağı olan Common Lisp ile ilgili çalışmalara başlamak isteyenlerin ilk ihtiyacı olan şey güçlü bir geliştirme ortamı ve sıra bunu anlatmaya geldi!

Bu belgede GNU/Linux sisteminiz üzerine tam teşekküllü, güçlü bir Common Lisp geliştirme ortamı kurmanız ve ilk Common Lisp denemenizi yapıp test etmeniz için gerekenler anlatılacaktır.

Common Lisp'e en iyi destek veren GNU/Linux dağıtımlarından biri olan Debian GNU/Linux esas alınmıştır ancak burada yazılanların hepsini herhangi bir GNU/Linux ya da UNIX uyumlu bir sisteme kurmak mümkündür.

More Lisp—For Free ve Birkaç Lisp Makalesi

FZ

O'Reilly her ne kadar Lisp kitabı basmak istemese de O'Reilly yazarları Lisp'ten daha sık bahsetmeye başladı. En son Christopher Roach, More Lisp—For Free başlıklı bir yazı yazmış.

Lisp ile ilgili bir başka makale: Generating HTML with Lisp - a tutorial for new programmers. Gene Michael Stover'ın diğer Lisp makaleleri de okunmaya değer.

Pascal Costanza'nın Çok Dik Başlı Lisp Rehberi

FZ

Uzunca uğraşlardan sonra Pascal Costanza'nın dik başlı (!) Lisp kılavuzunu Bilkent Bilg. Müh. bölümü öğrencilerinden Hayrettin Gürkök'ün çevirisi ile anadilimizde yayımlama imkanına kavuştuk. AOP yani Aspect Oriented Programlama mefhumunu Common Lisp'e kazandırmış olan (ya da Debiancılar için: Debian aspectl paketleri) Costanza'nın bu yazısının Lisp heveslilerinin işine yarayacağını ümit ediyoruz.

Çevirinin özgün adresi http://ileriseviye.org/arasayfa.php?inode=costanza-lisp-guide.html'dir. Emeği geçen herkesin eline sağlık. Afiyet olsun...