27 Nisan 2012 İnternet Kesintisi Ardından Çalışmayan İnternet

Reset attım düzeldi olayın özeti bu ama bunları yazmam geretiğini hissediyorum. Canı okumak isteyen varsa okumaya devam etsin.

27 Nisan 2012 akşamı ülke genelinde bir internet kesintisi yaşandı. Birkaç saat sonra düzelen problem birçok TTNET ADSL kullancısında bendeki gibi kalıcı hasar bıraktı. 3 gündür internetim yok. İşin ilginç tarafı modemde herhangibir ayar değişikliği de yapmamış olmam ve modemde (AirTies WAR-141 model bir ADSL2 modemin var) herhangibir bağlantı sorununun görülememesi.

Aklıma ilk gelen şey aleti açıp kapatmak oldu ama nafile. Sonra da hard reset atmayı düşündüm ama yıllar önce modemi kurarken bir kere girdiğim TTNET şifresini de o an için hatırlayamadığım için bunu denemek istemedim zira   şu anda 30 Nisan 2012 akşamı ve şu ana kadar en az 10 kere aramış olmama rağmen  müşteri hizmetleri bilgi veremiyor. Cuma akşamki aksaklık her ne ise TTNET’in kendi iç sistemini de çökertmiş durumda. Hal böyle olunca TTNET şifremi de öğrenemeyeceğimden hard reset ihtimalini sona bıraktım. Zaten dediğim gibi bağlantılarda herhangibir problem görünmüyor ama buna rağmen internet çıkışı yok. DNS ihtimalini düşünüp AirTies modeme telnet bağlantısı ile girdim ve /etc/dproxy.conf dosyasına google DNS’leri ekledim, gene yok bağlantı. Bu arada AirTies denen firmanın ön tanımlı olarak TTNET DNSlerini gömmüş olması ve modem ayarlarından bu adreslerin değiştirilmesi opsiyonunu kapatmış olması ne kadar etik bir durum o da tartışılır. Zira ben modemi gidip TTNET’ten almadım. Parasını verdim mağazadan aldım. Telnetle DNS değiştirme yöntemi de bir sonraki kapama açma sonrasında yinelenmesi gereken bir yöntem, alet eski IP leri geri yüklüyor hatırlatırım.

Sonra oturdum ADSL başvurusu yaptığım günü düşündüm ve olaylar dizisi bana şifremi hatırlattı. Girdim hard reseti attım alete ve internet geldi.

Ama Türkiye’nin internet tekeli olan TTNET’in 3 gündür içinde bulunduğu aciziyet bu blogda kelimelerle tarif etmem mümkün değil. Zaten kesintinin nedeni ile ilgili şu ana kadar duyduğum iki teori var ikisi de mide bulandırıcı… Bunlardan birinden birisinin doğru olması durumunda bu şirkete bireysel ve kurumsal olarak her ay kazandırdığım parayı düşünmek ise acı verici… Hepimize GEÇMİŞ olsun…

LaTeX Beamer Uzun Kaynakça Bölümleri

Akademik Latex beamer sunumlarının sonunda bulunan kaynakça bölümünü şayet kaynakları tek tek elle girmeyip bibtex kullanarak yerleştiriyorsanız, kaynakların bir slayd’a sığmadığı durumlar çoğunlukla karşınıza çıkacaktır.  Bunun için beamer frame’ine şu küçük eklemeyi yapmak yeterli olmaktadır:

\begin{frame}[allowframebreaks]

\end{frame}

[allowframebreaks] opsiyonu sayesinde kaynakçanız ne kadar uzun olursa olsun beamer kaynaklar listesini gerekli sayıda frame’e ayırmaktadır.

>TexMaker Free Cross Platform LaTeX Editor

>Latex dokümanlarını hazırlamak için güzel bir editör arayanlar için texmaker ücretsiz ve güzel bir çözüm sunmakta. Her platformda çalışması da tercih edilmesi açısından önem arzetmekte. 


İndirmek için bu link kullanılabilir:


http://www.xm1math.net/texmaker/download.html

Mac OSX gibi ya da Linux gibi Unix türevi işletim sistemlerinde kullanılan platformun 32 ya da 64 bitlik olmasına göre indirilece kurulum paketi ile programı sisteminize kurmanız çok kolay. 


Sisteminizin 32 bit mi 64 bit mi olduğunu anlamak için terminal penceresinde


uname -a 


Komutunu çalıştırmanız ve i386 etiketini görmeniz durumunda 32bitlik versiyonu, X86_64 etiketini görmeniz durumunda ise 64bitlik versiyonu kurmanız yeterli olacaktır.


Ubuntu 11.10 da synaptic paket yöneticisi zaten bunu sizin için otomatik olarak gerçekleştirecektir. MAC OSX kullanıyor olmanız durumunda da yukarıdaki linkten paketi indirip açıp uygulamayı Applications klasörüne yerleştirmeniz yeterli olacaktır. 



MAC OSX EKRAN GÖRÜNTÜSÜ





UBUNTU EKRAN GÖRÜNTÜSÜ




>PHP ile İmajları Yeniden Boyutlandırma

>Web sayfanızda kullanıcı tarafından yüklenen imajları yeniden boyutlandırmak istediğinizde veya thumbnail oluşturmak için kullanabileceğiniz basit ve temel işlemleri içeren bir PHP fonksiyonu yazalım. İlk olarak imajı yüklemeyi sağlayan basit bir form gerekli:

<form enctype=”multipart/form-data” method=”post”>
<input type=”file” name=”image”>
<input type=”submit” value=”Yükle”>
</form>

Bu form sayesinde kullanıcı istediği imajı seçerek yükleme işlemini başlatabilecektir. Form onaylandıktan sonra kullanacağımız PHP fonksiyonunu yazalım.

<?php

// İmajın yükleneceği klasör atanıyor.
$dir = ‘images/’;

// İmajın adını belirliyoruz. Şu anda imaj orjinal adı ile kaydediliyor. Farklı bir isim vermek de mümkün.
$image = $_FILES['image']['name'];

// İmajın adresini bir değişkene atıyoruz. İmaj bu adresten okunup kaydedilecek.
$filename = $_FILES['image']['tmp_name'];

// Yeni yükseklik ve genişlik değerleri atanıyor.
$h = 200;
$w = 200;

// İmajın jpg uzantılı olduğunu varsayıyoruz.
$simg = @imagecreatefromjpeg($filename);

// Yeniden boyutlandırmak için orjinal genişlik ve yükseklik değerleri alınıyor.
$currwidth = imagesx($simg);
$currheight = imagesy($simg);

// İmaj yatay mı yoksa dikey kadrajlı mı diye kontrol ediliyor.
if($currheight > $currwidth){
$zoom = $h / $currheight;
$newheight = $h;
$newwidth = $currwidth * $zoom;
}else{
$zoom = $w / $currwidth;
$newwidth = $w;
$newheight = $currheight * $zoom;
}
// İmaj boyutlandırılıyor.
$dimg = imagecreatetruecolor($newwidth, $newheight);

// İmaj kopyalanıyor
imagecopyresampled($dimg, $simg, 0, 0, 0, 0, $newwidth, $newheight, $currwidth, $currheight);

?>

Bu aşamada kullanılabilinecek iki kod bulunmaktadır: imagecopyresampled ve imagecopyresized.
imagecopyresampled daha smooth bir şekilde oluştururken, imagecopyresized daha sert çizgilerle imajı oluşturur. İlk komut daha yaygın olarak kullanılmaktadır.

Son olarak

<?php

// İmaj oluşturuluyor. 100 parametresi, jpg quality değerini belirler.
$ok = imagejpeg($dimg, “$dir”.$name, 100);
// cache temizleniyor.
@imagedestroy($simg);
@imagedestroy($dimg);

?>

Bu kod temel olarak kullanıcıdan gelen imajları yeniden boyutlandırarak upload etmenizi sağlar. İhtiyaca göre daha da geliştirmeye açıktır. Aşağıda bu kod ile yüklenmiş örnek imajları görebilirsiniz.

Orjinal imaj:

imagecopyresized ile yüklenmiş olan imaj:

imagecopyresampled ile yüklenmiş olan imaj:

>LaTeX BiBTeX Accents

>Latex ile çalışırken bibtex kullanıyorum bir süredir. Diğer işletim sistemlerinde test etme şansım olmadı ancak MAC OSX’te derleme yaparken .bib dosyası içerisinde kullanılan aksanlı karakterlerin doğru şekilde derlenemediğini gördüm. Örneğin;


Ibañez 


Yazmak için 


Iba\~{n}ez ya da Iba\~nez 


gibi yazımlar olumsuz sonuç vermemesine karşın; 


Iba{\~n}ez 


yazımı doğru sonucu vermekte. Bir bilgi olarak paylaşmak istedim.

>Ubuntu 11.04 + Pidgin + GTalk

>Yanlış bilgi olmasın ama sanırım ethernet yerine  wifi bağlantısı ile internete bağlanmaya başladığımdan beri (10 gündür falan) Ubuntu 11.04 yüklü masaüstü bilgisayarımda pidgin, empathy gibi IM klon programlarını kullanarak GTalk a bağlanamamaya başlamıştım. Programların içerisindeki hiçbir default setting de değişiklik yapmamış olmama rağmen Gtalk bir türlü açılmıyordu. Şu linkte yanıt veren arkadaşlardan birisinin basit önerisiyle bu sorun gerçekten de çözüldü. 

  1. Pidgin-> Accounts -> Manage Accounts  diyip gtalk hesabını seçiyoruz.
  2. Modify -> Advanced sekmesi ne geçiyoruz
  3. Connect server yazan yere talk.google.com yazıyoruz.
  4. Pidgin’i restart ediyoruz
  5. Sertifika kabulu gibi bir uyarı çıkabilir, tabi ki kabul ediyoruz ve GTalk’a yeniden bağlanabiliyoruz.

>GCC + MAC OSX + "Abort Trap" Problemi

>Bir süredir MAC OSX yüklü MacBook Pro model bir laptop kullanıyorum. İşlerim gereği c programlama ve bunları gcc ile derlemek durumundayım. Bu yüzden Xcode ve beraberinde gcc yi sisteme yükledim. Linux bilgisayarımda hiç karşılaşmadığım bir şekilde bu bilgisayarda gcc ile derlediğim kdoun çalışma esnasında “Abort Trap” hatası verdiğini gözlemledim. Özellikle bellek kullanımının çok yüksek olduğu uygulamalarda ki ben bu şekilde bir program ile uğraşıyorum, bu problemin ortaya çıktığını gözlemliyorum. Bu problemin çözümü için derleme satırına şu iki opsiyonu eklemenin problemi çözdüğünü gördüm:


-fno-stack-protector -D_FORTIFY_SOURCE=0

>IEEE PDF eXpress™ LaTeX Linux MacOSX

>IEEE sponsorluğundaki bazı konferanslara bildiri göndermek için hazılanılan bildiri taslaklarının ieee pdf express sistemi tarafından onaylanması gerekiyor. Ben de şu ana kadar birkaç kez bu sistemi kullanmak durumunda kaldım.


Bildirilerimi şayet bir latex template verilmişse latexte hazırlıyorum. Ve genelde eps formatındaki görselleri kullanmayı tercih ettiğimden derleme işlemini latex komutu ile  gerçekleştiriyorum. Ardından dvipdf komutu ile standart bir şekilde pdflerimi oluşturabiliyorum.


Ancak ieee pdf express sistemi fontların pdflere gömülü olmasını istediğinden bu şekilde hazırlanan pdfler embedded font hatası veriyor genellikle. Siz de bu problemle karşılaşıyorsanız şu şekilde düzeltmeyi deneyebilirsiniz.

  1. Latex dosyanızın son haline geldiğinden ve formatının doğruluğundan emin olun. (işlemleri tekrar tekrar gerçekleştirmemek adına)
  2. latex dosyaadi.tex ile derleyin.
  3. Şayet .bib dosyası ile referanslayacaksanız bibtex dosyaadi.aux ile onu da derleyin.
  4. Eğer bir önceki stepte bibtex komutunu çalıştırdıysanız iki kere latex dosyaadi.tex komutu ile derlemeyi yineleyin. İki kere yapmayı unutmayın ama.
  5. dvitopdf dosyaadi.dvi komutu ile dosyanın pdf versiyonunu oluşturun.
  6. pdf2ps dosyaadi.pdf komutu ile dosyanın ps versiyonunu oluşturun.
  7. Son olarak  ps2pdf14 -dPDFSETTINGS=/prepress dosyaadi.ps dosyaadi.pdf komutu ile ieee pdf express sisteminden büyük olasılıkla geçireceğiniz pdf dosyanızı oluşturun.
Ben bu yöntemleri hem ubuntu linux hem de macosx işletim sisteminde denedim ve olumlu sonuç aldım.