Sayfalar

27 Haziran 2011 Pazartesi

iPhone Programlama Dersleri

iPhone programlama dersleri ile ilgili Türkçe dökümanlar oldukça az. Bu sıkıntıya karşılık 1adam.com 'da yayınlanan görsel ios iphone programlama dersleri ile öğrenmeye hemen başlayabilirsiniz. iPhone programlama için buraya tıklayarak videolara konulara ulaşabilirsiniz.

21 Haziran 2011 Salı

Ezel'in Final Bölümü

Ezel'in son bölümünü sizlerle paylaşayım. Belki izleyemeyenler olmuştur. Sonu her ne kadar saçma gelse de, izlenebilecek nadir dizilerden birisiydi bu sezon..

1. Parça



2. Parça



3. Parça


4. Parça


5. Parça




6. Parça


7. Parça



8. Parça




9. Parça



10. Parça



11. Parça

Survivor Birincisi "Derya Büyükuncu" Oldu!



Yaklaşık 2.5 aydır süren Survivor adlı yarışmanın birincisi belli oldu. 500,000 TL büyük ödülü kazanan isim, Milli Sporcumuz Derya Büyükuncu oldu.

10 Haziran 2011 Cuma

Yeni nesil haber sitesi

Farklı haberleri farklı sitelerden okumaktan sıkıldıysanız, birçok olaydan bi haberseniz, ileaky tam size göre. http://www.ileaky.com yayın hayatına başladı.

10 Nisan 2011 Pazar

acunn.com - acunn

Uzun süredir Acun Ilıcalı'nın televizyonda bahsettiği ve büyük bir ekip çalışması olduğu söylenilen acunn.com faaliyete geçti. Fakat Acun gibi bir medya devinin, böylesine bir tasarımla insanların karşısına çıkabilmiş olmasını hala anlayamıyorum. Bunun sebebini aceleyle yaptıklarına bağlıyorum. Televizyondaki yarışma programlarının canlı olarak acunn.com'dan verilecek olması vb sebeplerle biran önce yayına çekmeye çalıştıkları belliydi zaten.

90'lı yılların websitelerini anımsatan tasarımıyla acunn.com'un şu atepta başarılı olabileceğini sanmıyorum. Başarıdan kasıt eğer çok tık almaksa, fazlasıyla alacağı şüphesiz. Primetime'da programları yayınlanan Acun'un ağzından çıkan her kelimeye insanlar dikkat kesiliyor. Tamamen medyanın gücünü kullanarak insanları bu siteye tıklatacaktır. Fakat, bu işleyişle ve kurguyla uzun süreliği olamayacağı açıkça ortada.

İçerik konusunda güzel şeyler sunduğunu söyleyebiliriz. Kısa maç özetleri,yarışma programlarının kısaltılmış bölümleri ve yakında başlayacak olan Survivor Canlı Yayın (günde 8 saat yapılacağını söylemişti) siteyi çekilir hale getirmiş. Survivor'a izleyici götüreceğini söyleyen Acun Ilıcalı'nın, gidecek olan izleyicileri de bu acunn.com üzerinde düzenleyeceği yarışmalarla belirleyeceği söyleniyor.

İşte Acun Ilıcalı'nın en azından şimdilik yüz karası olan websitesi accunn.com

8 Nisan 2011 Cuma

iPhone Şarj Problemi + Çözümü



Selamlar sevgiler arkadaşlar :)

iPhone'ununuzun şarjı çabuk bitiyor olabilir. Bu sorunun çözülmesi ile ilgili birkaç noktadan bahsedeceğim.

Öncelikle Ayarlar - Genel Ayarlar - Bildirimler bölümünden iphone üzerinde çalışan programlarınızın otomatik ping servisini kapatın. Bunlar nelerdir? Genel de facebook, twitter vb uygulamalar sürekli hesapları kontrol ederek güncellemeleri yapar. iPhone'umuzun en büyük düşmanı diyebilirim.

Bunun dışında Wi-Fi'yi kullanmadığınız zamanlarda kapalı tutun. Wi-fi açıkken sürekli ağ araması yapar ve şarjın bitmesinde büyük rol oynar.

 Son olarak ekran parlaklığınızı kullanabilecek seviyede düşürün. Projeksiyon aletleri gibi kullanmanın alemi yok. Orta seviyelere getirip, adam gibi kullanmak fayda sağlayacaktır :)

iPhone'da çalışan programları nasıl kapatırım ?

iPhone kullanıcılarının bir çoğu çalışan programları (Process) kapatmayı bilmiyor. iPhone'da çalıştırdığınız uygulamalar, anamenü tuşuna bastığınızda kapanmaz. Uygulama çalışmaya devam eder, siz anamenüye dönersiniz. iPhone'da çalışan uygulamaları kapatmak için, anamenü tuşuna 2 defa seri olarak basın. Alttan bir navi menü gelecektir. Bu menübar üzerinde çalışan uygulamaları göreceksiniz. Kapatacağınız uygulamanın üzerinde parmağınızı basılı tutarak kapatabilirsiniz.

kolay gelsin.

4 Nisan 2011 Pazartesi

Rgba ve İnternet Explorer Desteği

RGBA ile background verildiğinde internet explorer 9'dan öncesi bunu desteklemiyor. RGBA kodunuzu bu adresten IE uyumlu hale getirebilirsiniz.

Opacity uygulandığı alanı ve içindeki elementleri birlikte saydamlaştırırken, RGBA sadece background'a saydamlık kazandırır.

2 Nisan 2011 Cumartesi

input type image ve php $_POST

<input type="image" src="xxx.gif" name="laylaylom">

gibi bir submit butonu ile form post ettiğinizde $_POST['laylaylom'] ile değeri alamıyor olabilirsiniz. input type image olan formların değerini alabilmek için değerin sonuna "_x" eklemeniz gerekecek. Yani üstteki örnek submit butonundan gelen kaydı almak için $_POST['laylaylom_x'] iş görecektir. bu sonucu print_r($_POST) ile de görebilirsiniz.


kolay gelsin.

31 Mart 2011 Perşembe

İmamın Ordusu Kitabını İndirebilirsiniz


Geçtiğimiz günlerde yayınlanmasına kısa bir süre kala devlet tarafından yasaklanılan "İmamın Ordusu" adlı kitap internet üzerinden okurlarla buluşuyoruz. Kitabı buradan indirip okuyabilirsiniz.

Nano text editör üzerinde Türkçe karakter

Nano editör ile türkçe karakter desteğini sağlayabilmek için

nano /etc/profile
ile profile dosyasını editliyoruz ve en üstüne

LC_ALL=UTF-
ekliyoruz. ardından reboot ediyoruz ve bitiyor..

shotdown -r now

kolay gelsin

30 Mart 2011 Çarşamba

Linux Lighttpd (network.c.159) Hatası

Lighttpd kurulumundan sonra, başlatmak istediğinizde alacağınız muhtemel hatalardan biridir.

(network.c.159) socket failed: Address family not supported by protocol

Çözümü oldukça basit. /etc/lighttpd/lighttpd.conf dosyanızı açarak ipv6 'yı disable yaparak, yeniden çalıştırın.




Default gelen değer;
server.use-ipv6 = "enable"

Değişiklik sonrası;

server.use-ipv6 = "disable"

ardından lighttpd -f /etc/lighttpd/lighttpd.conf start ile  başlatın.



kolay gelsin.

19 Mart 2011 Cumartesi

Chrome Textarea yeniden boyutlandırma

Chrome üzerinde textarealar yeniden boyutlanabilir görünmekte. Bu da tasarımın bozulmasına sebebiyet verebiliyor. Bunun önüne geçebilmek için basit bir css kodu yeterli. Örnek Kullanım;


textarea { resize: none; }


kolay gelsin.

7 Mart 2011 Pazartesi

Linux üzerinde MySQL (Errcode: 13) Çözümü


Ubuntu server üzerinde yaşadığım bir problemin çözümünü sizlerle de paylaşmak istedim. Almış olduğum hata;

Can't create/write to file '/mnt/sqltmp/#sql_222f_0.MYI' (Errcode: 13)

Bu hatayı mysql temp dosyasını /mnt/sqltmp olarak ayarladıktan sonra almaya başladım. İyi bir araştırmadan sonra çözümün apparmor profiline eklemek olduğunu buldum.

pico /etc/apparmor.d/usr.sbin.mysqld

ile apparmor profil dosyasını açıyor. kurallara,


/mnt/mysql/** rw

Bu satırı kurallara ekledikten sonra appamor'u reload ediyoruz.
sudo /etc/init.d/apparmor reload

ve mysql'e restart atarak işlemi bitiriyoruz.

/etc/init.d/mysql restart


geçmiş olsun -)

20 Ocak 2011 Perşembe

Yaratıcı Reklamlar

Bunun E-Ticaret ile pek ilgisi olmasa da, satış ve pazarlamada kurallar hemen hemen hep aynıdır. Bir ürünü pazara kabul ettirmenin en iyi yolu, tabiki reklam. Fakat öyle reklamlar var ki, diğer sıradan reklamların arasından sıyrılıp, tebessümle izletiyor kendini.. ve işte başarılı bulduğum reklam filmleri...


Eti Gofreti Reklamı



Profilo Küçük Ev Aletleri Reklamı





Radikal Demokrasi


16 Ocak 2011 Pazar

Teknoloji Dergileri ve Apple

Apple'ın son yıllarda geliştirdiği teknolojileri biliyoruz. iPhone, iPad, iPod bunlardan bazıları. Bu ürünleri beğenenler ve beğenmeyenler var. Herkesin kendi tercihidir. Apple'ın bu ürünlerle pazarı hareketlendirdiği diğer firmaları da yenilik yapmaya zorladığı gerçeği yadsınamaz. Ancak teknoloji dergileri okuyucuları için öyle can sıkıcı bir durum var ki; Apple Haberleri



Hangi dergiyi alırsanız alın, hangi RSS'i takip ederseniz edin Apple haberlerinin çoğunluğunu fark etmişsiniz. "Apple yeni bir patent alıyor", "Apple bunu da yaptı" gibi haberler artık bir noktadan sonra sıkıcı oluyor. Dergilere buradan şu çağrıyı yapmak istiyoruz. Bir çok geliştirici firma ve geliştirilen teknoloji var. Sadece Apple firması teknoloji geliştirmiyor. Diğer firmaların, teknolojilerin de haberlerini okumak, yorumlamak istiyoruz.

15 Ocak 2011 Cumartesi

Komedi Dükkanı'nın Gizli Yönetmeni

Bir çoğumuzun uzun zamandır takip ettiği "Komedi Dükkanı" nın gizli yönetmenini hiç merak ettiğiniz mi ? Kendini göstermiyor olması aslında olaya biraz daha heyecan katmakta. Komedi Dükkanı'nın gizli yönetmeni aslında çok genç. Adı, Fırat Doğu Parlak.

Komedi Dükkanı bildiğiniz üzere tiyatro salonunda ve seyircilerle birlikte çekilmekte. Fırat Parlak, komedi dükkanı oynanırken yüzünü şapka ile kapatıyor. Seyircilerin oyun bitiminde kulise hücum etmeleri ise boşa.. Çünkü o, perde daha kapanırken orayı çoktan terk etmiş oluyor.

İşte karşınızda Komedi Dükkanı'nın görünmeyen yönetmeni Fırat Doğu Parlak.

12 Ocak 2011 Çarşamba

ADSL Reloaded

Marmara Üniversitesi tarafından düzenlenen, Telekomda Fiili TEK-EL yarışmasının ikinci gelen videosudur. Türkiye'de Telekom'un tekelciliği ve fahiş fiyatları daha güzel anlatılamazdı..


8 Ocak 2011 Cumartesi

PHP & Memcache

Memcached & Php Nedir ?
Memcached "Danga Interactive" ( http://www.danga.com/ ) tarafından LiveJournal için geliştirilen dağıtık , nesne tabanlı tampon bellek sistemidir ( distributed memory object caching system , biliyorum kötü bir çeviri ).
Proje Live Journal için geliştirilsede , Facebook en büyük destekçisi haline gelmiştir : yazılım üzerinde yaptıkları değişiklikle işlemci kullanım oranını %20 azaltırken, bellek kullanımında %30'luk bir iyileştirme yapmışlardır ( http://developers.facebook.com/opensource.php ) ; aynı zamanda mamcached kurulu en büyük yapı facebook'da bulunmaktadır. ( http://lists.danga.com/pipermail/memcached/2007-May/004098.html , 200 X 16GB 4 Çekirdekli Amd64 Sunucu )

Nerede kullanılır ?
Sık talep edilen bilgileri sunmada ve veritabanını belirli ölçüde rahat bırakmada kullanılır. Hiç şüphe yokki belleğe erişim, diske erişimden daha hızlıdır. Veritabanlarının tamponlama ( caching ) özelliği olsada duruma göre memcached dağıtık yapısı nedeni ile tercih edilebilir.

Web sitelerinde kullanım yerleri olarak ;
+ Giriş işlemlerinde kullanıcı oturumlarının saklaması,
+ Siteiçi aramalarda , çok sık yapılan aramalar için kelimeler ve sonuçlarının hafızada saklanması,
+ Günlük yada haber sitelerinde ilk sayfada çıkan haberlerin hafızda saklanması, örnek verilebilir.

Nasıl ?
Kurulum kullandığınız dağıtıma göre değişmekle beraber, Ubuntu üzerinde
#apt-get install memcached php5-memcache
komutu ile kurulum işlemini gerçekleştirebilirsiniz.
!!! Ubuntu & Php-5 için not : Apt-get kurarken php.ini'de ufak bir hata yapıyor , /etc/php5/apache2/php.ini 'de
-e extension=memcache.so
olan satırı bulup, fazlalık olan "-e "yi silmeniz
gerekiyorr son hali
extension=memcache.so olmalı Apt-get yazılımları yükledikten sonra /etc/memcached.conf dosyasını açıp "-m 64" değerini bulun, varsayılan olarak memcached 64Mb ram kullanmaktadır, mevcut ram miktarınıza göre uygun bir değer girin. Dikkat: bu alana sahip olduğunuz tüm belleği girmek gibi bir hata yapmayın.
Kurulum işlemini apache'yi ve memcached'ı yeniden başlatarak tamamlayın.


<?
// Yeni bir memcache nesnesi oluştur
$memcache = New Memcache();
// Sunucu üzerinde kurulu olan memcached sunucusuna bağlan
$memcache->connect('localhost', 11211) or die("Memcache:> Bağlantı kurulamadı...");
// Sunucu üzerinden "kayit" nesnesini al
$kayit = $memcache->get('kayit');
// Eğer kayit nesnesi daha önceden atanmamışsa değer ata
if( !$kayit )
{
$kayit['sayac'] = 0;
$kayit['zaman'] = time();
// $kayit değişkenini, sunucu üzerinde "kayit" nesnesi olarak
// 10sn için hafızaya ata.
$memcache->set('kayit', $kayit, false, 10);
}
else
{
// $kayit değişkenindeki sayacı arttır.
$kayit['sayac']++;
if( $kayit['sayac']++ == 25 )
{
$memcache->delete('kayit');
echo "Memcache'den , 'kayit' nesnesi kaldırıldı..";
return;
}
// sunucu üzerindeki kayit nesnesini güncelle
// false: değişkenin ziplenerek saklanması istebiyorsa TRUE olmalıdır;
// 10 : değişken güncellenirken, ne kadar süre daha hafızada kalacağıda
// ayarlanabilir
$memcache->replace('kayit',$kayit, false, 10);
}
printf("Zaman : %s , Sayac: %s ", date("h:i:s d.m.Y", $kayit['zaman']), $kayit['sayac'] );
?>

Örnek-1 'de

3..6. Satırlar......:
ilk olarak bir memcache nesnesi oluşturulmakta ardından, memcache kurulu sunucuya ( localhost ) , memcached'ın varsayılan portu olan 11211. port'dan bağlanması sağlanmaktadır.

9. Satır.............:
Sunucu'dan 'kayit' nesnesi alınmakta ve $kayit değişkenine atanmakta.

12..20. Satırlar :
Sunucu'da kayit nesnesi bulunamazsa , yeni bir dizi oluşuturulup bu dizi'de 'sayac' elemanına 0, 'zaman' elemanına o anki zaman atanmakta ve $memcache nesnesinin "set" fonksiyonu ile $kayit dizisi , sunucuda 'kayit' nesnesi olarak oluşturulmakta. Set fonksiyonundaki 10 ifadesi , saniye cinsinden kayıdın sunucuda ne kadar süre ile hafızada tutulacağını belirtiyor, eğer bir değer vermezseniz bu varsayılan olarak 30 gün'dür ve 30 günün sonunda bu nesne silinecektir.

23..32. Satırlar:
Sunucu üzerinde bulunan kayit nesnesini 9. satır'da $kayit değişkenine atamıştık, bu değişken bir dizi ve bu dizi
üzerindeki 'sayac' elemanın değerini bir arttırıyoruz. Eğer bu değer 25'e eşit ise memcached sunucusu üzerindeki kayitnesnesi, $memcached objesinin "delete" fonksiyonu ile siliyoruz. Neden böyle birşey yapma ihtiyacı içerisindeyiz ?
Açıkcası bu gayet sıkıcı bir örnek ve ortama eğlence katmak lazım , bilgisayarımızı camdan aşağıya atamıyorsak bizde
değişkenlere saldırırız :)
37. Satır......:
Sunucuda nesnemiz bulundu , $kayit dizisnde sayac değerini arttırdık fakat bu değer 25'in altında o zaman yapılacak tek birşey kalıyor : yeni değeri güncellemek. $memcache nesnesinin replace fonksiyonu tam bu işe yarıyor ve set ile benzer parametreleri alıyor. 10 değeri bu arada nesnenin hafızada kalma süresini tekrar 10 sn yapıyor. Sanırım işleyiş mantığını anlamaya başladınız. Kullanıcı giriş bilgilerini veritabanı ile olan iletişimi en aza indirmek için memcache ile hafızada tutmak isterseniz aşağı yukarı şunun gibi bir fonksiyon kullanmanız lazım :

function Giris ($kullanici, $parola )
{
$memcache = New Memcache();
$memcache->connect('localhost', 11211) or die("Memcache:> Bağlantı kurulamadı...");
$kayit = $memcache->get( 'giris:' . $kullaniciadi );
if( !$kayit )
{
$sorgu = mysql_query("Select * From Kullanicilar Where kullanici='$kullanici' and parola='$parola' Limit 0,1");
if( mysql_num_rows($sorgu) < 1 )
return FALSE;
$kayit = mysql_fetch_array($sorgu);
$memcache->set('giris:'.$kullaniciadi , $kayit, false, 10);
}
else
{
if( ($kayit['kullanici'] != $kullanici) && ($kayit['parola'] != $parola ) )
return FALSE;
}
return TRUE;
}

Kodun yaptığı kabaca , memcached sunucusunda kullanıcı bilgilerinin olup olmadığına bakmak, yoksa veritabanına bağlanıp kullanıcı bilgilerini almak ve kayıt dönerse ( = kullanıcı bilgileri doğru ise ) bunu memcached'da bir nesne olarak atamak. Eğer memcached üzerinde kullanıcı bilgilerini bulursa onun üzerinden kontrolleri yapmak. Php'nin oturum bilgilerini memcache üzerinde tutmasını sağlayabilirsiniz. Yanlız burada debian/ubuntu kullanıyorsanız ufak bir sorun var : oturum bilgilerini memcached'da tutmanız için php-memcached eklentisinin versiyon numarasının 1.80 yada daha büyük olması lazım ve debian/ubuntu ile eski versiyonlar geliyor. Uzun uzun anlatmak ve hazırda olan bilgileri tekrarlamaktansa , program nasıl derlenir bildiğinizi varsayıyorum ve gerekli bilgileri almanız için sizi http://www.lullabot.com/articles/how_install_memcache_debian_etch adresine yönlendiriyorum. Oturum bilgilerinin memcached üzerinde tutulmasını iki şekilde ayarlayabilirsiniz :
session.save_handler = "memcache"
session.save_path = "tcp://localhost:11211?persistent=1&weight=1&timeout=1&retry_interval=15"
2- .php dosyanızda , session_register'den önce şöyle bir şey ekleyerek :
ini_set('session.save_handler', 'memcache');
ini_set('session.save_path' , 'tcp://localhost:11211?persistent=1&weight=1&timeout=1&retry_interval=15');

 Dökümanı bitirirken bahsetmediğim bir fonksiyon hakkında ufak bir bilgi vermem gerekli: Memcached'ın dağıtık bir sistem olduğunu söylemiştik, php dosyamızın diğer memcached sunucuları ile bağlantı kurması için "addServer" fonksiyonu kullanmamız lazım. 2x1Gb ram ve 1x2Gb ram'i olan 3 makineli bir ağ için örnek :
$memcache = New Memcache();
$memcache->connect('localhost', 11211) or die("Memcache:> Bağlantı kurulamadı...");
$memcache->addServer( 'memc1.local.net' , 11211, TRUE, 10);
$memcache->addServer( 'memc2.local.net' , 11211, TRUE, 10);
$memcache->addServer( 'memc3.local.net' , 11211, TRUE, 20);

memcX.local.net : memcached kurulu olan diğer sunucu
11211 : memcached portu
TRUE : kalıcı (= persistent ) bağlantı yapılacak
10/20 : işte eğlenceli kısım ; yük dağılımı. Büyük rakam = fazla ram = Daha fazla başvurulacak makine.

Sonuç & Notlar Memcached , yoğun trafik alan sunucularınızı biraz rahatlatmak için kullabileceğiniz güzel bir oyuncak bununla beraber ağır çalışma ortamlarında test edildiği için deneyip kendi durumunuzda işe yaradığını görürseniz kullanmamanız için hiçbir sebeb yok. Memcached & Apache yeterli ram olduğu sürece aynı makinede çalışabilir, genel olarak memcached belleğe apache işlemciye yüklenir..

4 Ocak 2011 Salı

Cep Telefonlarında Tek Tip Şarj

Telefon üreten büyük firmalar, şarj aletlerinin tek tip hale gelmesi konusunda nihai anlaşmaya vardı. Uluslararası Cep Telefonu Üreticileri ve Telekom Şirketleri Platformu (OMTP), tüm cep telefonlarına tek tip şarj cihazı uygulamasının 2011 yılı ortalarında başlamasını öngörüyor.

Bu uygulama ile cep telefonu kullanıcılarına büyük bir kolaylık sağlanmasının yanı sıra çevre için de kirliliğin önüne geçilmesi hedefleniyor. Önümüzdeki yıldan itibaren tek bir şarj cihazı markasına bakılmaksızın bütün cep telefonlarında kullanılabilecek.

Avrupa Komisyonu tarafından ilk olarak 2009 yılında ortaya atılan fikir, 14 ayrı telefon üreten firma tarafından da destek gördü. Apple, Samsung, Nokia ve Blackberry üreticisi RIM'in de dahil olduğu firmalar, ortak şarj aleti üretecek. Böylece telefon kullanıcıları, telefonlarını şarj etme sıkıntısı yaşamayacak.

Ortak şarj aletlerinin önümüzdeki aylarda, 2011'in ilk çeyreğinde piyasaya sürülmesi hedefleniyor. Standart şarjlar için USB girişli bir sistem düşünülüyor. Böylece kullanıcılar telefonların bilgisayar aracılığıyla da şarj edebilecek.

AB Komisyonu, sistemin tamamlanarak telefon firmalarına gönderildiğini ve üretimin önümüzdeki aylarda beklendiğini açıkladı. Komisyon, tüm Avrupalıların standart bir alet kullanılmasına destek verdiğini dile getirdi.