FFextra.com da kullanıcı ve kod kaynaklı bir hata ve sonrası

Etiketlenen : , ,

Bir kaç gündür hiç istemediğim kadar kişinin sanki tavuklarına kış demişim gibi üzerime gelmesinden bunaldım. PHP öğrenmeye başladığımı, bunu da bir uygulama üzerinde geliştirdiğimi belirtmiştim. Evet yeni yeni PHP öğrenebilirim ancak program algoritmasına yeterince hakim olduğuma inanıyorum. Yazdığım PHP kodlarında yorumlamasını yapabilecek kadar bilgi sahibiyim.

Dün gece yarısı aklıma gelen bir fikri kodlara dökerken çalışıp çalışmadığını tam test etmediğim bir fonksiyonu da webe gönderme gafletinde bulundum. Oysa her fonksiyonu tek tek önce kendi başına deniyor, gelen sonuçlara göre asıl koduma ekliyordum. Her programcının yapabileceği bariz bir hataydı. Ancak bunu düzeltmem çok uzun sürmedi.

Yapmaya çalıştığım şey friendfeed.com üzerinde BeniTakipEtmiyor isminde bir arkadaş listesi oluşturanlar www.ffextra.com a girdiklerinde onun takip ettiği ama onu takip etmeyenleri bu arkadaş listesine eklemekti. Bu konuda hiçbir sorun yoktu. İki aşamalı kod içerisinde bu kısım gayet sağlıklı çalışıyordu.

Ancak ikinci fikir olan bu kişileri Home Feed kısmından çıkarma kısmında basit bir hata vardı. API tarafına abonelik iptal için gönderdiğim array şu şekildeydi.

‘list’ => “list/home”

Tabi bu işlem sonrası sonuç çıkmayınca list keyini tümden kaldırdım. Bu kullanıcıdan tümüyle aboneliği iptal etmek anlamına geliyor. Yerine ne yazacağımı API dökümanından bulmalıydım. Bu esnada deneme yapan bir kaç kişi malesef tek taraflı takip ettiği kişilerden tamamen abonelik iptali yaşadılar. Bu iptallere http://friendfeed.com/settings/modifications adresinden erişilebilir ve tekrar abone olabilirler. Yani sadece kullanıcıya ikinci bir iş çıkardım. Hatayı farkedip aşağıdaki gibi bir düzeltme yaptığımda sistem istediğim gibi işliyordu.

‘list’ => “home”

Ancak nasıl olduysa ben kodu denerken mağdur ettiğim kullanıcılardan birisi ilk günden beri bana afedersiniz bok atmak için fırsat tepen, daha önce FriendFeed için 3. parti yazılımlar üreten Ahmet Alp Balkan a ulaşmıştı. Ahmet için gün doğmuş olsa gerek, resimde de görüleceği üzere hemen siteye girip gözleriyle olayı görmek istedi. Ancak umduğu sonucu alamadı. Sistem olması gerektiği gibi çalışıyordu. Bunu friendfeed.com üzerinde paylaşarak, bana amatör programcı sıfatını takarak elinden gelen tüm gayretle saldırısını yaptı.

vt

Sistemi denememiş, böyle bir sorunu görmemiş olan ama benimle ne alıp veremediklerini çözemediğim bir kısım yüzyüze de tanışma fırsatı bulduğum insanlar da ateşin altına odun atarak desteklerini sundular.

Evet geri dönülebilir şekildeki bu hatayla, beni lekelemek için fırsat kollayan kişilerin kucağına düşmüştüm. Bu fırsatı her şekilde değerlendirmekten çekinmeyen sözde arkadaşların, kendimi savunmama da takılmaları, bir de buradan vuralım demelerine hiç şaşırmıyordum. Eleştiriye açık olduğum kadar beni karalamak için yapılan eleştirilere de sert cevap vermekle tanınırım.

Çok sevdiğim bir söz vardır; “Bir lafa bakarım laf mı diye, bir de söyleyene bakarım adam mı diye?”.  Bana söyledikleri sözleri düşünüyorum da bu söz tam o anda kullanılacak sözlerden. İşte cevap vermek zorunda kaldığım ama bunu bile anlamak istemeyen, elime düştü ağzına sıçayım bunun hemen diyen kişilerle mümkünse yollarım kesişmesin istiyorum.

Açıklamalarıma ve özürlerine karşılık olarak benden özür dileyen, takip etmekten vazgeçip geri dönen anlayışlı insanlara da teşekkür etmek istiyorum. Dinlemesini bilen insanları bir başka seviyorum. Herkes hata yapar, ama hata önce sahibine iletilir.  Burada yapıldığı gibi kahpece yapılmaz (http://ff.im/7oVYC).

Ayrıca kendini bu işin profesörü sanıp kendinden başkasının aynı işleri yapamayacağına ve amatör olduğuna inanan Ahmet Alp Balkan kardeşimin (yaklaşık 12 yaş fark var aramızda) bu ukala ve kendinden başkasını küçük görme huyundan vazgeçmesini diliyorum.  Kendisi iyi bir yazılımcı olabilir, hatta daha ffextra fikri varken bile görüşmek istedim, ancak beni yeni yetme hiçbirşey bilmeyen, yeni PHP öğrendiğim için yazılıma yeni merak salmış biri sanmasını anlamıyorum.

www.ffextra.com uygulaması sizin izniniz olmadan sizin adınıza hiçbir şekilde friendfeed.com aboneliklerinize dokunmaz, sizin adınıza post göndermez. Hiçbir OAuth şifrelemesi kaydedilmez. Bundan sonra sitedeki hiçbir yeni uygulama yeterince test edilmeden kullanıma açılmayacaktır. Mağdur olduğunu düşünen arkadaşlardan özür dilerim.

FFextra: Sizi takip etmeyenleri ayrı listeye almak.

Etiketlenen : , ,

ffextraBugün geliştirdiğim yeni bir özellik sayesinde artık sizi takip etmeyenleri BeniTakipEtmiyor isimli ayrı bir listeden görebileceksiniz. Bunun için önce http://friendfeed.com/friends adresinden “BeniTakipEtmiyor” (aynen yazın) isminde “Yeni arkadaş listesi” oluşturalım. Daha sonra tek yapmanız gereken http://www.ffextra.com a giriş yapmak. Artık sizi takip etmeyen ama sizin takip ettiğiniz kişilere http://friendfeed.com/list/benitakipetmiyor sayfasında göreceksiniz. Artık arkadaşlar menüsünde Ana Feed vs yanında BeniTakipEtmiyor diye bir bölüm olacak. BeniTakipEtmiyor listenize geçirilen kullanıcıları Home (Ana Feed) üzerinden kaldırıyoruz. Böylece sizin girdilerinizi birileri beğenmeden veya yorumlamadan görmeyen kişileri RSS reader ile onların ne yaptığını takip eder gibi görüyorsunuz. Sizi takip etmeye başladıklarında tekrar FFextra girişi yaparsanız takip eden kişiyi Home (Ana Feed) tarafına taşıyor :)

FFExtra hergün bu kadar gelişirse eminim çok işinize yarayacak bir tool olarak favori siteleriniz arasına girecektir.

İlk PHP projem: FFextra.com

Etiketlenen : , , ,

ffextraBir kaç gün önce PHP öğrenmeye başladığımı dile getirmiştim.Öğrendiklerimi basitte olsa bir proje üzerinde kullanmazsam pekişmeyeceğinden kanaatle Friendfeed.com API desteği ile çalışan FFextra.com isminde bir site hazırlamaya karar verdim.

Amacım FriendFeed API desteği ile henüz FriendFeed üzerinde verilmeyen veya verilmeyeceğini düşündüğüm bazı hizmetler vermekti. Bunlar sizin takip edip sizi takip etmeyenleri bir arada görme, sizi engelleyen veya sizin engellediğiniz kişiler, sizin yazdığınız son yazılara beğendim (like) diyen ama sizi takip etmeyen kişileri listemelek gibi hizmetler. Daha fazlası için API dökümanını inceliyorum. Friendfeed kullanıcıları tarafından her gün girilecek bir site (uygulama) olmasını bekliyorum.

Denemelerim esnasında henüz tam olarak işlevini yerine getirmeyen siteyi test eden bazı kullanıcıların engelleyenler olarak gösterilen kişilerle telefonla vs. iletişime geçerek “sen beni nasıl engellersin” tarzında sitemleri, haliyle de kabağın benim başımda patlayacağı “hayır ne engellemesi, hatalı o site” gibi cevapları olmuş. Ben API nin yalancısıyım. Bana gelen verileri doğru algoritmalar içerisine sokarak sizi engelleyen, sizin engellediğiniz veya FriendFeed’in hesabını kapadığı ama nedense bazı kişilerin takip listesinden vs silmediği kullanıcı adlarını toparlamaktan başka birşey yapmadım.

Sistem çok basit bir mantıkla işliyor. Önce sizin takip ettiğiniz rastgele 30 kişi alıyorum. Bu kişilerin de takip ettiği kullanıcıları hem sizin oturumunuz hem de anonim olarak bakarken nasıl gördüğünüz şeklinde ikiye ayırıyorum. Eğer anonim olarak bir kişinin takip listesinde olan kullanıcıyı sizin oturumunuzla kontrol ettiğimde göremiyorsam o kişinin sizi engellemiş olduğu ortaya çıkar. Bunun başka açıklaması ise o kullanıcıyı siz engellediniz veya hesap kapatılmış da olabilir. Ayrıca kullanıcıya Direkt İleti gönderme hakkınız varsa o kullanıcının sizi engellemediğine kanaat getiren bir başka kontrol daha vardır.

Sözün özü, çok can yakan bir uygulama yazmışım. Sen beni ben seni neden engellediğimi bırakalım, diğer bir mevzu ise sizin takip edip sizi takip etmeyen kullanıcılar. Bunu bir kaç kez dile getirmiştim. Benim gördüğüm kadarıyla önce herkesi takip etmeye çalışan karşı kullanıcılardan da takip edilen internetin ağır abileri/ablaları(!) kısa süre sonra kendi takip ettikleri kullanıcılardan aboneliği iptal ederek tek yönlü bir bilgilendirmeye gidiyor. Bunu yapanları gün gün takip ettim, abonelik sayılarının nasıl 1000 den 300 e sonra da 30 a indiğini gördüm. Ama tam tersi abone olanlar 1000 lerden en fazla 900 e düşüyordu. Yani önce 1000 kişi takip et, onlar da sizi takip etsin. Ama siz abone olduklarınızdan 970 tanesini silin, sildiklerinizden çok azı sizi silsin. 30 kişi takip ederken sizi 900 kişi takip eder hale gelin, sonra da havalı havalı beni takip ediyorlar triplerine girin.  İşte bu uygulamayı her gün kullanan kendine abone olanlardan an ve an vazgeçenleri görecek, karşılıklı olarak o da aboneliğini iptal edebilecektir.

Bir de sizin veya baktığınız kullanıcının son 100 mesajına beğendim (like) diyenler ama sizin takip etmedikleriniz var. Bu da sizi takip etmese bile her tür girdinize ilgi gösterenleri ortaya çıkarıyor. İsterseniz o kişileri takip edebilirsiniz.

PHP bilgimi artırmak için yazılımı geliştirmeye devam edeceğim. API tarafından sağlanan her veriden yeni bir özellik planlayacağım. Ayrıca yazılımın zaman zaman indirilebilir halini bu sitede yayınlayacağım. Böylece benzer uygulama yazmak isteyen yazılımcılar için bir kaynak olacak.  İlginize ve eleştirilerinize teşekkürler.

bizimhost internet hizmetleri interaktif proje tek parola burçlar vijital Pronected
View my FriendFeed