Ahmet Oğuz Koca

Sosyal olaylar.

Linq ile RSS feed okuma

Linq kullanarak RSS okumak için aşağıdaki kod blogunu kullanabilirsiniz, RSS standartlarında "link" tagiyla içeriğin URL adresine ulaşabiliyorken feedburner gibi servislerde <feedburner:origLink> tagiyla orjinal URL adresini alabiliyoruz bu yüzden kodlar feedburner'a göre optimize edilmiştir.

            XDocument XD = XDocument.Load("http://www.rssaddress.com/address.rsss);

            var x = (from it in XD.Descendants("item")
                     orderby DateTime.Parse(it.Element("pubDate").Value) ascending
                    //  where DateTime.Parse(it.Element("pubDate").Value) > datetime
                     select it.Elements()).ToArray();

                foreach (var itemx in x)
                {

                        string Title="";Link="";DateTime pubDate;

                        foreach (var itemsub in itemx)
                        {

                            if (itemsub.Name == "title")
                            {
                               Title=itemsub.Value;
                            }

                            if (itemsub.Name == "pubDate")
                            {
                                pubDate = DateTime.Parse(itemsub.Value);

                            }
                            if (itemsub.Name == "link")
                            {
                                Link = itemsub.Value;
                            } // feedburnerservisi kullanılmaktaysa direkt URL Addresini almak için bu blokla origLink'i alıyoruz, tag yoksa exception fırlatmaz
                            if (itemsub.Name == "{http://rssnamespace.org/feedburner/ext/1.0}origLink")
                            {
                                Link = itemsub.Value;
                            }
                        }

              }

 

İyi kodlamalar

 

 

WordPress'e rakip çok yakından geldi; blogsa

Asp.Net programcılarının belkide PHP dünyasında en çok imrendikleri şey açık kaynak kodlu dağıtık uygulamaların yeterince sayıya ve kitleye ulaşmamış olmalarıdır.
Bunun en büyük etkiside yine bizzat .net programcılarına, her zaman ihtiyaç duydukları blog ve forum tarzı uygulama sayısının azlığı olarak yansımaktadır.
PHP dünyasının ünlü blog uygulaması Wordpress ortalığı kasıp kavururken .net camiasındaki en yakın rakibi "dotblogengine" hem kullanıcıların ilgisizliği hemde geliştiricilerin zaman ayıramamasından dolayı can çekişmeye devam etmekte. Durum .net için bu kadar kötüyken bugün friendfeed üzerinde gördüğüm bir ileti beni hayli şaşırtı, birkaç türk programcı kendi başlarına açık kaynak kodlu bir blog geliştirmekteydiler, merakımı gidermek adına hemen uygulamayı bilgisayarıma indirdim ve kullanmaya başladım, açıkça söylemek gerekirse umduğumdan çok daha iyi bir sonuç aldığımı söyleyebilirim.
Dağıtık uygulamların en büyük problemi olan ortam uyuşmazlığı sorununu nerdeyse hiç yaşamadım, öyleki ücretli uygulamalarda bile bu denli başarılı bir kurulum ekranı olmayabiliyor.

Vakit kaybetmeden uygulamayla bizzat tanışmak isteyenler burdan blogsa'nın resmi sitesine göz atabilirler; http://www.blogsa.net/

 



Fazlası...

Twitter, Friendfeed gibi sitelerde kaçınmanız gereken 10 hata

friendfeed twitter

Bu adreste gördüğüm yazı hoşuma gitti sizlerle paylaşmak istedim özetle düşmemeniz gereken 10 yanlış şöyle

 

1) Mutlaka profil resmi olarak kendi resminizi kullanının
Adı üzerinde sosyal ağ, neye benzediği bilinmeyen biri niçin takip edilsin

2) Kişisel tanıtım alanını boş geçmeyin
Tuhaf gözükmeyin mutlaka hakkınızda gerçek birkaç bilgi girin

3) Websitenizi(blogunuz) belirtin ama site adresinizi yazarken kısaltma servislerini kullanmayın

4) Sürekli birşeyler satmaya çalışmayın

5) Otomatik abonelik(follow) yapan programlardan uzak durun

6) Otomatik ileti gönderen programlar kullanmayın
Kimseyi spamlamayın

7) Düzenli olarak ileti girin ama iletilerinizin kalitesinin bozulmasına izin vermeyin

8) Eğer yeteri kadar ünlüyseniz yerinize ileti atacak birilerini bulmayın

9) Sadece kendinizden bahsetmeyin, sosyal ağların bir fonksiyonununda yardımlaşmak olduğunu unutmayın

10) Gereksiz güncellemeler yapmayım kimsenin sizin tuvalette ne yaptığınızı öğrenmeye ihtiyacı yok

+11) Blog'umu takip ediyorsanız beni ekleyin http://www.twitter.com/aokocax , http://www.friendfeed.com/aokocax

Büyük sql script dosyalarını çalıştırmak

Database yapısı yanında içeriğinide taşımak istediğimde, çoğu zaman megabytelar uzunluğunda sql script dosyalarıyla boğuşmak zorunda kalıyordum.

Scriptlerde çoğu zaman ya memory hatası veriyor ya da bilgisayarın uzun süğre cevapsız kalmasına sebep oluyordu. Burda okuduğum yazıda "sqlcmd" ile bu problemin nasıl ortadan kaldırıldığı yazılmış özetle komut satırından;

sqlcmd -S YOURSQLSERVER\INSTANCENAME -i "C:\Your Script.sql”

ile büyük sql script dosyları sorusuz olarak çalıştırlabilmekteymiş.

Jquery ile paste olayını yakalamak

Mouse yardımıyla clipboard'daki nesnenin belirli bir alana yapıştırılırken çağırdığı olayı yakalamak için bind fonksiyonunu kullanmak gerekmekteymiş.

Örnek kod;

$("textarea[id$=txtDescription]").bind("paste", function() { alert($("#txtDescription).Val().length) });

 

Not: Bu kod klavyeden yapılan paste işlemlerinide yakalayabiliyor.

CSS3'ten bugünde kullanabileceğiniz bir kaç yenilik

Yeni geliştirilen CSS3'ün iyileştirmelerinden bazılarını güncel tarayacılarda kullanabilmeniz mümkün; tarayıcılar( Chrome 1+, Firefox 3+, opera 10+, Safari 4+)

1) Transparan renk kullanımı için

.topbox {
color: rgb(235,235,235);
color: rgba(255,255,255,0.75);
background-color: rgb(153,153,153);
background-color: rgba(0,0,0,0.5);
border-color: rgb(235,235,235);
border-color: rgba(255,255,255,0.65);
}

 

2) Köşe yuvarlama (r değerini pixel cinsinden giriyoruz)

border-radius: r;
border-radius: 10px;

 

3) Text Gölgelendirme

text-shadow: x y blur color;
text-shadow: -2px 2px 10px rgba(0,0,0,.5);

 

4) Çerçeve gölgelendirme

box-shadow: x y blur color;
box-shadow: 0 0 10px rgb(0,0,0);

 

5) Çoklu arkaplan

background-image: url(astro-127531.png),url(Hubble-112993.png);


Kaynak; http://www.webdesignerdepot.com/2009/08/5-css3-design-enhancements-that-you-can-use-today/