PHP Hata Arama/Kontrol Listesi

2000 senesinde Michael M. Krznaric php temellerini anlattığı dokümanın sonunda bir liste vermiş, söylediğine göre mail listelerine gönderilen sorulardan derlemiş, doküman basit temel şeyleri anlatıyor fakat bu sondaki listeyi çevireyim istedim, hataların nerelerde olabileceğini, ne kadar iyi bilirseniz o kadar rahat edersiniz.

Şahsi bir giriş notu, eğer bulamıyorsanız, biraz dinlenin, sonra bir arkadaşınızı çağırın, kodu anlatın, anlatırken büyük ihtimal bulabileceksiniz…

Parantez içlerindekiler benim notlarım, belge 2000 senesinde yazılmış, artık çoğu şeyi editörler yapabiliyor.

  • (),[] and {} ayraçlarını kontrol edin.
  • “” içindeki “‘ları kontrol edin, “‘lar \ ile kaçılmazsa çalışmaz.
  • Fonksiyon adları gibi ayrılmış kelimeleri kontrol edin, myslq_num_rows() çalışmaz mysql_num_rows() çalışır. (Editörler yapabiliyor)
  • Yazdığınız kodun sözdizimini www.php.net/manual ya da lokal manual dokümanlarınızdan kontrol edin. (Editörler yapabiliyor)
  • Eğer fonksiyon içinde global değişkenler kullanırsanız global deyimini kullanın, (Global kullanımını hiç tavsiye etmem)
  • setCookie() fonksiyonu kullanıyorsanız, fonksiyonu çağırmadan önce herhangi bir output vermediğinizden emin olun.include/require edilen dosyalarda <? or <?php açılış etiketlerinden önce/sonra boşluk olmadığını kontrol edin.
  • Eğer SQL sorgunuz başarısız olursa, onu print edip, sözdizimini kontrol edin.
  • Eğer SQL sözdizimini doğru görünüyorsa, komut satırı, phpmyadmin veya herhangi bir db query aracı ile çalıştırın.
  • Eğer halen çalışmıyorsa, db kullanıcısının doğru yetkilere sahip olduğunu kontrol edin.
  • Eğer bir fonksiyonun yeniden tanımlanamamasi ile ilgili bir hata alıyorsanız, dosyanız 2 kez include ediliyordur. include_once() kullanmayı deneyin (Ç.N. include_once’ın performansı normal include’dan düşüktür, includelarınızı kontrol edip düzene sokmanız daha iyi olur).
  • PHP değişken isimlerinde büyüklük duyarlıdır, yani $Foo ile $FOO ayni değişken değildir (Ç.N:Fonksiyon isimleri tarihsel nedenlerle büyüklük duyarlı değildir).
  • Sınıf metod ve özelliklerine $this->$foo() ve $this->$variable şeklinde erişilmez. $this->foo() ve $this->variable şeklindedir. (bunu yazan eleman dinamik değişken kullanırsa çalışır)
  • İşin içinden çıkamıyorsanız, forumlarda, mail, irc listelerinde çözüm arayın. Soru sorarken olabildiğince fazla bilgi vermeye çalışın, yapmak istediğiniz şeyleri, o zamana kadar yaptıklarınızı, takıldığınız bölümleri ne kadar iyi anlatırsanız yanıt alma ihtimaliniz o kadar artar, bir de lütfen “Acil yardım, help me” türü mesajlar atmayın, pek hoş karşılanmaz, eğer işiniz o kadar acil ve önemli ise bu işi bilen birileri ile çalışın.

10 Az Bilinen İşletim Sistemi

Zamanında windows üzerinden çalışan bir BeOS ile karşılaşmıştım fakat fazla kullanamamıştım, ikonlarının güzelliği halen aklımdan çıkmış değil.

Qnx diye de tek disketlik bir işletim sistemi karşısında ağzım açık kalmıştı, tek diskete sığıyordu, üzerinde görsel yazılımları vardı, ayar falan yapmadan internete çıkabiliyordunuz.

Aşağıdaki bilgiler http://royal.pingdom.com/2008/09/26/10-amazingly-alternative-operating-systems-and-what-they-could-mean-for-the-future/ adresinden alınmıştır, birebir bir çeviri değildir, çeviri hataları bana aittir.

AmigaOS 4.1

Eylül 2008’de AmigaOS 4.1 versiyonu piyasaya çıktı. Bilgisayar piyasasına hemen hemen ilk giren AmigaOS, birçoklarının güzel anılarının olduğu bir işletim sistemidir. Yeni versiyonu da oldukça modern bir sistemdir.

AmigaOS sadece belirli PowerPC donanımı üzerinde çalışabiliyor. Yapımcısı ACube halen pazarlama ve dağıtım çalışmalarını sürdürüyor.

Kod : Kapalı
Lisans: Patentli
Platform: PowerPC
Durum: Ticari olarak satılıyor

AmigaOS hakkında adresinden bir inceleme yazısı okuyabilirsiniz.

Haiku

Haiku BeOS işletim sisteminin (Palm Inc. tarafından satın alındı ve geliştirmesini bıraktı), açık kaynaklı olarak yeniden oluşturulmasıdır. Başlangıçta adı OpenBeOS’du fakat 2004’de ismini değiştirdi.

Haiku, BeOS için yapılan yazılımlar ile uyumludur.

Kod : Serbest ve Açık Kaynak
Lisans: MIT
Platform: x86 ve PowerPC
Durum: Pre-Alpha

Haiku web sitesi

MorphOS

MorphOS, PowerPC işlemcilerde çalışmak için tasarlanmış hafif, medya merkezi bir OS’dur. AmigaOS’dan esinlenmiştir ayrıca Amiga uygulamalarını çalıştırmak için emulasyon sağlar.

Kod : Kapalı Kaynak
Lisans: Karışık patentli ve açık
Platform: Pegasos, ve Amiga modelleri, EFIKA

MorphOS web sitesi

AROS Research Operating System

AROS, hafif açık kaynaklı bir sistemdir, AmigaOS 3.1 ile uyumlu ve gelişmiştir.
Proje 1995 yılında başladı bugün hem PowerPC hem IBM uyumlu PC donanımlarında çalışabilmektedir. Eski Amiga uygulamalarını çalıştırabilmek için emulatör sağlar.

Kod: Açık Kaynak
Lisans: AROS Public License
Platform: x86 ve PowerPC
Durum: Pre-Alpha

AROS web sitesi

ReactOS

ReactOS, Microsoft Windows yazılımları ile uyumlu olabilecek bir sistem olarak tasarlanmıştır.
Proje 1998’de başladı ve bugün birçok Windows programını çalıştırabilecek durumdadır. ReactOS çekirdeği sıfırdan yazıldı fakat sistem Windows uygulamalarını çalıştırabilmek için Wine kullanır.

Kod: Serbest ve Açık Kaynak
Lisans: Çeşitli serbest yazılım lisansları
Platform: x86 (geliştirme safhasında)
Durum: Alpha

ReactOS web sitesi.

Syllable Desktop

Syllable serbest, açık kaynaklı bir sistemdir. 2002 yılında AtheOS ve AmigaOS’dan türemiştir.
Ev ve küçük ofis kullanıları için hızlı ve hafif bir sistem olmayı amaçlamıştır.

Kod: Serbest ve Açık Kaynak
Lisans: GNU General Public License
Platform: x86
Durum: Alpha

Syllable web sitesi.

SkyOS

SkyOS Robert Szeleney ve gönüllüler tarafından yazılmış, kapalı kaynak bir projedir. OS tasarımı üstüne, deneysel olarak başlamıştır. Ortalama bir bilgisayar kullanıcısının kolayca kullanabilceği bir masaüstü OS olmayı amaçlamaktadır. İyi bilenen uygulamalar, Firefox gibi, SkyOS üzerinde çalışmak için uyarlanmışlardır.

Kod: Kapalı
Lisans: Patentli
Platform: x86
Durum: Beta

SkyOS web sitesi.

MenuetOS

MenuetOS, MeOS olarak bilinir, çok küçük, hızlı tamamen assembly ile yazılmış bir işletim sistemidir. Grafik bir desktop, ağ, birçok özelliği tek bir 1.44 MB’lık diskete sığdırmıştır.

Kod: 32 bit sürümü Açık Kaynak, 64 bit sürümü Kapalı, Serbest Kullanım (freeware)
Lisans: Menuet Lisans
Platform: x86
Durum: Beta

MenuetOS web sitesi.

DexOS

DexOS, PC’den ziyade oyun konsolları üzerinde çalışmak için açık kaynaklı olarak tasarlanmıştır. Kulladığı arabirim video, oyun konsollarından etkilenmiştir, sistemin kendisi oldukça küçüktür (söylendiğine göre bu da MenuetOS gibi tek diskete sığıyormuş). OS birkaç farklı aygıttan kendini yükleyebilir. Yapımcısı olabileceği kadar hızlı olmasına çalışmaktadır.

Kod: Serbest ve Açık Kaynak
Platform: x86

DexOS web sitesi

Visopsys

Visopsys, programcı Andy McLaughlin’nin hobi projesi olarak 1997 yılında başladı, açık kaynaklı ve ücretsiz bir sistemdir. Visopsys ismi Visual Operating System kısaltamasından gelmektedir.

Kod: Açık Kaynak
Lisans: GPL
Platform: x86
Durum: Kullanılabilir

Visopsys web sitesi

10 yılda haber siteleri pek değişmemiş

Bir arama yapıyordum ve eski bir haber sayfasına ulaştım. Günümüzle karşılaştırdığımda haber sitelerinin o kadar da gelişmemiş olduklarını düşündüm, daha fazla reklama yönelik günümüz haber siteleri.

Şüphesiz altyapıda 98’den beri bir çok teknolojik yenilik oldu ama bunun gelişme anlamında yansıması o kadar çok olmamış. Günümüz haber sitelerini incelersek daha net bakabiliriz.

10 yılda neler değişmiş;

  • Üyelik sistemleri gelmiş. Bu sayede haberleri saklayabiliyoruz, yorum yapabiliyoruz.
  • Paylaşmaya yönelik bazı fonksiyonlar, siteler çıkmış.
  • Seslendirme kabiliyeti kazanmışlar
  • Sitenin, yazıların tasarımını, renklerini değiştirebilme fonksiyonları çıkmış
  • İlişkili diğer haberlere ulaşım sağlanmış

Bu maddelere baktığımızda aslında hepsinin bir şekilde o yıllarda da yapılabilir olduğunu görüyoruz. Özellikle gazete patronlarının sahip olduğu imkanlar düşünülünce.

Başka neler olabilirdi sorusu zor bir soru zaten kolay bir cevabı olsaydı birileri yapıp bu sektörde öne geçerdi. Benim aklıma gelen haberin istatistiği ya da geçmişi ile ilgili güzel bir çalışma yapılabilirdi. 10 yılda öyle bir veritabanı kurabilirlerdi ki, Fenerbahçe Spor Kulübü ile ilgili bir haberde, geçmiş ilgili bütün haberlere de ulaşabilirdim ya da bir kavşakta trafik kazası oldu ise o kavşakta olan trafik kazalarının haberlerine, istatistiğine ulaşılabilirdi. Araştırmacılar için oldukça yararlı sistemler ortaya çıkmış olurdu.