Muhammed Tahiroğlu yazıyor
Yazılım ve Sanat

Türkçe Hal Eklerine Algoritmik Bir Yaklaşım

Eylül 7, 2008 17:55, Muhammed
http://code.google.com/p/turkcehaller/ adresinde ufak bir kod parçacığı bulunuyor. Alıp kullanabilirsiniz. Apache.

Kısım:
Eylem: E-mail | Doğrudan Link | Yorum (0) | Yorum RSSRSS comment feed

WordPress'e Mahkum muyuz?

Nisan 9, 2008 00:42, Muhammed

Blog dünyası son sürat WordPress hâkimiyetine giriyor ey dostlar. Evet, dünyanın bir numaralı muhteşem içerik yönetim sistemi değil belki ama dünyanın bir numaralı kişisel yayıncılık yazılımı. Kodu ortalıkta. Koduna kod katmak serbest. Sonuçta milyonlarca "Powered By WordPress" tabelası ve binlerce eklenti.

Rahatsız mıyım? Microsoft olsam veya başkaca bir yazılım firması olsam hemen evet derdim.  Ama hemen evet diyememem. Çünkü meseleye açık kod düşmanlığı veya Microsoft tarafgirliği düzleminden değil başka bir yerden bakıyorum.

Mesele şudur ki, tüm dünyanın kodcuları ellerinde bin türlü geliştirme aracı bulunduğu hâlde neden WordPress'in boyunduruğu altına girmekteler? 

.NET mi? Milyon tane site var ASP.NET'in faziletlerini anlatıp WordPress script'ine serilmiş. Yazık be kardeşim. 

Hammet: http://hammett.castleproject.org/

Hem Castle yazacaksın hem Monorail... Sonra da WordPress altyapısı üzerinden kendi yazdığın koda kızacaksın. Biraz samimi olun gençler. İnsan işine saygı duymalı biraz. "Open Source" insanı olmak, MS'e WP üzerinden giydirip sonra da C#'ta harikalar yaratmak değildir. 

Evet, herkesin de bu aralar dillendirdiği gibi .NET'te cemiyetleşme sorunu var. Bu cemiyetleşme sorunu bugüne kadar Microsoft'un Open Source olaylara yaklaşımından kaynaklanıyor diyebilirdiniz. Ama şimdi açıkça görülüyor ki huysuz kodcuların da bu sorunda rolü mevcut. 

Bakın Danimarkalı Mads, ne güzel azmetmiş, bu yazının yazıldığı blog yazılımına girişmiş. Widget desteğine bile koşuyorlarmış dediklerine göre. Şimdilik en tutulan ASP.NET tabanlı blog script'i olarak kabul ediliyor. WordPress'in 2.5 esintisine göre cılız ve kalas kalsa da. 

Evet emmoğulları, dayıoğulları ve komşu köyün WordPress Türkiye'cileri... WordPress'e mahkum muyuz? Dünya PHP-MySQL ile rakseden bu script'in karşısına rakip çıkartamayacak kadar gamsız ve gasavetsiz mi? 

 

Windows 2008'e Saygı Duymalı mıyız?

Nisan 7, 2008 23:52, muhammed

"Process Activation Services" var, IIS 7 de var dedik toz kondurmadık. Ama gelin görün ki bizi bu akşam çıldırtma seviyesine getirdi. IIS 7, nedeni bilinmeyen bir şekilde önbelleklediği assembly'leri silmedi, biz de bundan dolayı çıkan gudik hata ile aldandık.

Aldandım.

Bu hadiseden sonra kent sokaklarında şu soru yüksek sesle sorulur oldu: "Windows 2008'e gerçekten saygı duymalı mıyız?". Buradaki "saygı" ifadesini "güven" ile de ikame edebilirsiniz. "Güven" çok pahalı bir kelimedir, dikkatli olun.


Kısım:
Eylem: E-mail | Doğrudan Link | Yorum (0) | Yorum RSSRSS comment feed

Canlı Regular Expression Deneyimi

Nisan 4, 2008 11:37, muhammed

http://erik.eae.net/playground/regexp/regexp.html

Adres bu. Gerisi er kişiye kalmış. Yaz regexp'ini, gör match'ini.

Visual Studio 2008'e Güçlü Dokunuşlar

Nisan 2, 2008 20:15, Muhammed

Yüklediniz, test ettiniz ve hatta kodlar yazmaya başladınız. Kiminiz altını üstüne bile çevirdiniz. Lâkin bir şeylerin eksik olduğunu hâlâ hissetmediniz mi?

Hissettiyseniz gelin buraya.

Resimde görülen fazladan menü öğeleri, PowerCommands for Visual Studio 2008 adlı bir eklentinin ürünü. VS içerisinde pek fazla efor gerektiren çoğu işi en fazla bir saniyede yaptırabiliyor.

Meselâ sevgili kardeşim, Solution Explorer'da açtığın ağacı geri nasıl toplardın? Ya da bir projeden diğerine referansları nasıl kopyalardın? Gözüne kestirdiğin proje dizininde bir konsol ekranı nasıl açardın? Proje genelinde kullanılmayan "using <Namespace>" deyimlerini toptan nasıl temizlerdin ve var olanları da sıralardın? Bir dosyanın tam fiziksel yolunu nasıl panoya alırdın?

Liste uzayıp gidiyor. Şimdi dil değil parmaklar konuşsun diyorsanız gidin indirin. Hedef gösteriyorum.


Kısım: Kod
Eylem: E-mail | Doğrudan Link | Yorum (0) | Yorum RSSRSS comment feed

Kaynağından Sofranıza MVC!

Mart 24, 2008 14:26, muhammed

Epeydir yazmıyorduk sevgili okur. Meraklanmayınız, buralardayız. Çok önemli işler çeviriyoruz içeride. Gitgide hudutları genişleyen bir iş. WCF'de son nokta.

Sivil hayatta da MVC ilgimizi çeker olmuştu. Önceki yazılardan takip etmişsinizdir.

Yeni olan haberi Scott Bey verdiler: ASP.NET MVC'nin Kaynak Kodu açıldı. Bu haber milleti pek heyecanlandırmadı. Zira vatandaş MVC'nin "Preview 2"sinden daha çok şey bekliyordu. Beklentiler boşa çıkınca herhalde heyecan söndü.

Öte yandan Microsoft, MVC'nin sadece bir kısmının kodlarını açıvermiş. İki adet assembly, "referenced assembly" lafzıyla derlenmiş olarak verilmiş. Kodu nerede diyenlere Phil Bey bu assembly'lerin .NET'e ait olduğunu ve genel kaynak kod paylaşım düzeneğiyle paylaşılacağını ifade etmiş.

Hâsılı, elimizde 2007 sonuna göre epey fazla şey var. Bu kodu indirip derleyebiliyorsunuz. Yalnız CodePlex'teki bu koda doğrudan ekleme veya düzeltme yollayamıyorsunuz. Ne yaparsanız kendinize.

Açık kod rüzgarına kaptırdık kendimizi gidiyoruz bakalım. Aman kodlar kapatılmasın.


Kısım: Kod
Eylem: E-mail | Doğrudan Link | Yorum (0) | Yorum RSSRSS comment feed

Add-In'lerin Kapınızı Çaldığı An

Şubat 3, 2008 02:07, Muhammed

İnsanoğlu, bazı şeylerin varlığını bilir, kabullenir ama o şeylerle ilgilenmez. Ne zaman ki ilgilenmek gerekti, hızlı bir biçimde öğrenme sürecine sokar kendini. Yazılım işinde de işler böyle cereyan ediyor.

En son misâl, geçen gün Visual Studio Add-In'ine ihtiyaç duymam. Proje dosyalarında, IDE düzeyinde ilişkiler tanımlamak için XML formatındaki dosyanın düzenlenmesi ve kaydedilmesi gerekiyordu. Bunu en kolay, IDE üzerinden bir add-in işlevini çalıştırarak yapabileceğim aşikardı. Aşikar olan yola yürüdük; arkamızda sessizlik.

Bu mesele üzerine, VB6'dan beri ortalıkta dolaşan MZ-Tools çokça eğilmiş. Şöyle bir liste hazırlayarak add-in geliştireceklere yol göstermiş. Eyvallah.

Bunun dışında, kişisel bir not olarak belirtmek isterim ki add-in geliştirmek apayrı bir tecrübe. IDE ortamını hedef alarak duvarları kesin ve dar bir alanda top oynamak gibi aynen. Çok kullanıcı-dostu (ne demek bu?) bir nesne modeli yok henüz. Daha bunlar da .NET'imsi olacak; vakit var.

Bizim iş mi? Tamam, görüldü. Projelerin üzerinden add-in'i tetikleyerek projede istediğimiz düzenlemeyi yapıyoruz. Ama henüz sağ tuşa eklemedik, "geniş zamanlar umuyorduk".  

 

 

Tags: , , ,
Kısım: Kod
Eylem: E-mail | Doğrudan Link | Yorum (0) | Yorum RSSRSS comment feed

Dobişko, Erzurum Ofisini Kapatıyor!

Ocak 10, 2008 15:09, Muhammed

"Lezzet 2.0" parolası ile yayın hayatına başlayan Dobişko.com, 6 ay evvel Erzurum'da ofis açmıştı mâlum. Maksat, hem Erzurum'un önemli yeme yerlerini keşfetmek hem de eşsiz lezzetlerini dünyaya duyurmak idi.

Dobişko literatüründe bu işi yapan gönüllü insanlara "Lezzet Avcısı" deniyor. "Gurme"den farklı bir şey bu. Gurmeler, davet edilelim de karnımızı doyuralım deyu beklerken, lezzet avcıları tavşan avlar gibi mekan avlıyor. Bizim için esrarengiz mekanlar keşfedip, oradaki cevherleri bizimle paylaşıyorlar.

Bu doyma / doyurma ağının öncülerinden, 317. kısa dönem piyade çavuş ve Tabi CEO'su Erkan Yılmaz haber aldığımıza göre Erzurum'da son tangosunu yapmaktaymış. İlginçtir, karın 1 metre olduğu ortamlardan gönderdiği üniformalı fotoğraflarda, kendi karın genişliğinin epey azaldığı görülüyor. Yani bizim dobişko artık fake dobişko.

Haftaya Dobişko Istanbul'a geliyor; kemere ek delikler açmaya ramak kaldı!

Evcil.net'in Dirilişi

Aralık 3, 2007 21:38, Muhammed

Türk interneti, 3 Mart 2002'de yepyeni bir sitenin doğuşuna şahitlik etmişti. .NET 1.0'ı daha doğru dürüst kullanan yok iken, bir şeyle karalamaya başladık. Yazdık, çizdik ve paylaştık. Nokta'ya inanmıştık ve onun egemen olacağına...

"Noktanın Egemenliği" diyerek hem bunu hem de niteliği kastediyorduk. Önce nitelik. Nicelik değil.

O günler için çok değerli bir adım attık. Ama gerisi gelmedi.

4 yıllık bir uykuya daldık. 

Uyandığımızda, "Nokta" gerçekten egemen olmuştu. Siyah-beyaz ayrımı gibi, Nokta ve Anti-Nokta ayrımı başlamıştı. Ya Nokta idiniz, ya da diğeri.

Uykumuz bile Nokta'yla geçmiş, farkında değiliz.

Ve şimdi ey okur... noktalar birleşiyor, "doğru"yu teşkil ediyor. Biz, bundan böyle www.evcil.net'teyiz. 

Siz de gelirseniz, başımızın üstündesiniz. 

İlk ASP.NET MVC Kod Örnekleri

Kasım 9, 2007 05:22, Muhammed
Haftalardır ASP.NET'in MVC atağını konuşup duruyoruz. Henüz millet olarak kodlayıp denemiş değiliz. Şimdilik bakınmakla yetiniyoruz.

Bir yandan Las Vegas'tan DevConnections 2007 esintileri vuruyor yüzümüze. Üstad Metin Karabiber de, bu esintiyi "vatan borcu" hassasiyetinde ufaktan taşımış, sağolsun.

DevConnections, doğal olarak ASP.NET MVC'yi de büyük bir kitle önünde sergilemek ve ilişkiyi diri tutmak için güzel fırsat. Nitekim Microsoft ekibi fırsatı değerlendirmiş ve bir sunum yapmış. Hanselman ve Elion arkadaşların sunumunu inceleminizi salık veririm.

Sunumdan çıkan ufak notları da buraya nakşedelim. [Parantez içi sözler fakire ait]

- ASP.NET MVC, hayatımıza test-yönelimli geliştirmeyi, gevşek bağlı bileşenleri getireceğine dair söz veriyor.
- URL'ler artık /UrunDetay.aspx?UrunId=26&ShowBasket=true şeklinde saçmalamaktan kurtuluyor, REST ve SEO ile samimi hâle geliyor: /urundetay/kahve-makinesi/showbasket vs. [Aman efendim, en çok sevindiğim şeylerden birisi.]
- Üstüne basa basa denen o ki, Web Form'lar bitmiyor. Web Form yerli yerinde dururken, MVC ona alternatif olarak ikram ediliyor. Artık Web Form zorlanan bir şey değil, tercihlerden sadece biri oluyor. [Ha şöyle.]
- Artık gevşeyin diyorlar. Dependency Injection (DI) veya Inversion of Control (IOC) teknikleriyle genişleyebilen uygulamalar yazın, coşun diyorlar.
- MVC altyapısı, ASP.NET'in sınıf hiyerarşisindeki karşılığı olan System.Web'den veriliyor.
- Tüm "açık kaynak" dünyasıyla da barışık deniyor. Meselâ "model" katmanında NHibernate, "view" katmanında Brail kullanabileceğimiz söyleniyor.

Bir "kontrol" sınıfından kod örneği:

[ControllerAction]
public void ShowPost(int id) {
     Post p = PostRepository.GetPostById(id);
     if (p != null) {
         RenderView("showpost", p);
     } else {
         RenderView("nosuchpost", id);
     }
}


Rahatlıkla anlaşılacağı gibi bu metod bir URL'yi temsil ediyor.

URL'ler kontrolörlere yönlendiriliyor. Onlar da bir iş yapıp akışı bir "View"a havale ediyorlar. "Rendering" için klasik Web Form bileşenleri kullanmanın yanında NVelocity, Brail gibi başka motorlar da kullanabiliyoruz. [Evet, gevşek bağlılık sayesinde.]

...

Cümle MVC taraftarı, web'in doğasına aykırı buldukları Web Form'larına nicedir veryansın ediyordu. Şimdi de bu Microsoft implementasyonuna biraz mesafeli duruyorlar. Bakalım perdeler açılıp CTP vitrine konunca kodlayan parmaklar ne diyecek?

Önyargısız takip ediyoruz ey okur.
 
EOS 40D
Site Meter