Photo
demand-progress:

The NSA “is gathering nearly 5 billion records a day on the whereabouts of cellphones around the world.” (Washington Post)
Join us in protesting the National Security Agency’s wide-ranging invasion of privacy.
Take action →

demand-progress:

The NSA “is gathering nearly 5 billion records a day on the whereabouts of cellphones around the world.” (Washington Post)

Join us in protesting the National Security Agency’s wide-ranging invasion of privacy.

Take action →

Kaynak: demand-progress
Link

Torba Kanun'daki Erişim Sağlayıcılar Birliği, Olması İstenen Trafik Exchange Point mi? .... Ya TNAP?

Torba kanunda hedeflenen erişim sağlayıcılar birliği bir sivil inisiyatif midir? Cevap : hayır. Peki, bu trafiği rahatlatacak ve ucuzlatacak olan trafik değişim noktası mıdır? Cevap yine hayır. Bu bir erişim engelleme ve giderek de trafiği tek noktadan kaydetme kuruluşu olacaktır. Uzmanların yaptığı analiz bu yönde. Bu haliyle de internetin özgürleşmesi bir yana iyice sansürlenmesi ve dinlenmesi anlamına geliyor mu? Birlikte bakalım…

Text

Tumblr’ı markdown kullanarak yazıyor ve kod renklendirmesi için araya html serpiştirmek istemiyorsanız doğru yerdesiniz.

Çeşitli kod renklendiriciler -Syntax Highlighter’a başka ne denir bilemedim- var internette, belki daha başarılı çözümler de vardır ama ben highlight.js yi kullandım. En önemli nedenlerimden biri de otomatik dil tanımlamasının olmasıydı. Yani dilin ne olması gerektiğini belitmeniz gerekmiyor.

Hemen css vs js dosyalarını temamıza yerleştiriyoruz. Tumblr’da statik dosyaları koyacağımız biryer olmadığından yandex’in CDN servisini kullanabiliriz.

<link rel="stylesheet" href="http://yandex.st/highlightjs/7.5/styles/default.min.css">
<script src="http://yandex.st/highlightjs/7.5/highlight.min.js"></script>

Markdown kullanıyorsanız, Tumblr kod bloklarını pre > code şeklinde yazdırıyor. Bu yüzden şöyle bir modifikasyon yapmak gerekiyor:

$(document).ready(function() {
    $('pre code').each(function(i, e) {hljs.highlightBlock(e)});
});

Ve bittii…

Text

Mac Os üzerinde Django ve Vagrant'ı uzun süreden beri kullanıyorum. Önceki Mac Os versiyonlarında da Mavericks üzerinde de genel bir yavaşlık söz konusuydu. runserver dediğinizde veya dosya üzerinde değişiklik yaptığınızda modüllerin tekrar yüklenmesi vs biraz uzun sürüyordu. Fakat son projemde bu durum artık katlanılamayacak kadar kötüleşti.

İlk olarak ramden kaynaklanabilir belki diye düşündüm ve sanal makinanın raminı 1GB a çıkarttım.

# Virtualbox için geçerlidir
config.vm.provider "virtualbox" do |vb|
    vb.customize ["modifyvm", :id, "--memory", "1024"]
end

Tabiki bu derdime derman olmadı, ki zaten production ortamında dahi 512MB ram ile sorunsuz çalışıyordu. Ram benim sorunum değildi.

Daha önce de internette biraz araştırma yapmıştım ama bu yavaşlık sorunu için bir çözüm bulamamıştım, bu sefer daha derin bir araştırma yaptım ve dosya senkronizasyonunun NFS olarak ayarlanması durumunda bu sorunun ortadan kalktığını öğrendim.

NFS mac os üzerinde kurulu olarak geliyor, ekstra bir yapılandırmaya ihtiyacınız yok. Misafir (guest) makine üzerinde NFS yi kurmanız gerekiyor.

Ubuntu Precise (12.04) için:

sudo apt-get -y install nfs-kernel-server

'nfs-kernel-server' paketini kurmanız yeterli.

Ayrıca sanal makinaya private ip adresi vermeniz gerekiyor,

config.vm.network "private_network", ip: "10.0.0.11"

Son olarak ta dosya senkronizasyonu için vagrant’a NFS kullanması talimatını veriyoruz,

config.vm.synced_folder ".", "/vagrant", nfs: true

Bende bir takım sorunlar oluştu ama internette biraz araştırma ile sorun çözüldü. Her tavsiyeyi denedim ama hangisinin işe yaradığını bilmiyorum.

Umarım yavaşlama sorununuza çözüm bulabilmişsinizdir. Buradaki adımlar genel olarak neler yapılacağıyla ilgili bilgi vermek amacıyla hazırlanmıştır, buradakileri değil vagrant dökümanlarını kullanın.

Text

Türkiye’de yaşıyorsanız bir VPNe ihtiyaç duyulduğu oluyor. Yabancı sitelerden alışveriş yaparken olsun, Spotify gibi servisler olsun zaman zaman gerekli oluyor. Eğer kendiniz ve yakın birkaç arkadaşınız için basit ve ucuz bir VPN’e ihtiyaç duyuyorsanız OpenVpn'i önerebilirim. Diyebilirsiniz ki zaten çeşitli ucuz yada ücretsiz VPN servisleri var, evet var işinizi görüyorsa sıkıntı yok. Ama bazı servisler mimlenmiş durumda yani sizin bir vpn servisinden bağlandığınızı tahmin edebiliyorlar yada hızları yetersiz gelebilir yada onların ne yaptıklarını bilmiyorum kendi sunucum olsun benim olsun diyorsanız okumaya devam edin.

Daha önceden Point-to-Point Tunneling Protocol (PPTP) sunucusu kurdum. Kurulumu çok karmaşık değil, tüm cihazlar tarafından desteklenen bir protokol. Ekstra bir client e ihtiyaç duyulmuyor vs. Ben MacOs üzerinde sorunsuz kullanıyordum fakat Windows’ta birtakım sorunlar yaşanıyordu aynı şekilde Android üzerinde de çalışıyordu ama Playstore da sorunlar oluyordu ama iTunes store da bir sorun olmuyordu. Belki firewall (iptables) üzerindeki bir yanlış ayardan yada yanlış bir yapılandırmadan mı artık çok kurcalamama rağmen bir türlü çözemedim.

OpenVpn’in kurulumu oldukça basit, her popüler platform için clientleri mevcut fakat bazı eksi yönleri var:

  • Kendi özel yada 3.parti bir client kullanmanız gerekiyor
  • Aynı anda 2 aktif kullanıcıya izin veriyor. Daha fazlası için lisans satın almanız kerekiyor.
  • Ben iOS üzerinde çalıştıramadım, internette araştırırken bazı kişilerin de aynı sorundan müzdarip oldukları gördüm.

Bunlar sizin için sorun değil ise başlayalım :

Sunucu Seçimi

Tercihen Amerika lokasyonlu bir sunucu olması gerekiyor, ben Front Range Hosting üzerinden 128MB ramli bir sunucuyu aylık $1.5 a kiraladım. Tabiki başka seçeneker de var, ServerBear üzerinden VPS servislerini karşılaştırabilirsiniz.

Ben işletim sistemi olarak Ubuntu 12.04 (Precise) 64 Bit seçtim. Front Range Host’ta varsayılan olarak TUN/TAP ve PPP kapalı geliyormuş. Ticket atarak bu özellikleri açmalarını istemeniz gerekiyor. Cevap geldikten sonra yazıya devam edebilirsiniz.

Kurulum

OpenVPN download sayfasından kendi linux dağıtımınıza uygun olanı indirin:

wget http://swupdate.openvpn.org/as/openvpn-as-2.0-Ubuntu12.amd_64.deb

Kurulumunu yapın

dpkg -i openvpn-as-2.0-Ubuntu12.amd_64.deb

Ve openvpn kullanıcısının şifresini belirleyin:

passwd openvpn

Diğer kullanıcıları sisteme eklemek için:

adduser yenivpnkullanicisi

Kurulumu yaptıktan sonra size web paneline ulaşmanız için gerekli bağlantıları veriyor zaten. Admin paneline openvpn hesabı ile giriş yapın. adduser ile eklediğiniz kullanıcıları sisteme ekleyin ve vpn sunucunuz hazır.

Text

Google uzun süreden beri Eposta hizmeti Google Apps’i ücretsiz olarak sunuyordu. Tabi okul yada dernek değilseniz 10 kullanıcı ile sınırlıydı ama bu çoğu kişi için yeterliydi, benim için de. Google Apps Aralık 2012 de ücretsiz sürümüne yeni kayıt almayı durdurunca, yeni açılan sitelerimin mail işini nasıl yapacağımı bilemedim. Çok fazla olmasa da birkaç alternatif bulunmakta.

  • Zoho Mail : Ücretsiz olarak 5 kullanıcı, arkadaşlarınızı referans gösterdiğinizde 20 kullanıcıya kadar ücretsiz olarak çıkabiliyorsunuz. Reklam vs. de yok ve hesaplar 5 GB. Tüm eposta protokollerini (imap, push-mail vs.) de kullanabiliyorsunuz.
  • Windows Live Domains : Zoho’dan daha sağlam bir şirket istiyorum diyorsanız Windows live domains’i kullanabilirsiniz fakat Imap desteklenmiyor (Yakında bu özellik te gelecekmiş). Bu servisi hiç denemediğimden ve sitesinde de ayrıntılardan bahsetmediğinden ayrıntılarınıda bilmiyorum.

Yukarıdaki 2 servisin yanında bence öne çıkan, şans eseri bulduğum bir servis, Kurumlar İçin Yandex. Google apps kapandıktan sonra internette araştırırken Google Apps alternatifi olarak hep yukarıdaki iki servisten bahsediliyordu. Yandex’in böyle bir servisi olduğunu bilmediklerinden mi yoksa yazıyı yazanların çoğunun Amerikalı olup Rus şirketi Yandex’i önermek istememelerinden mi bilinmez hiçbir yerde bahsedilmiyor.

Bende yukarıdaki iki servisi kullanmak istemediğimden ve biraz da mail sunucusu yönetimi konusunda deneyim sahibi olmak açısından kendi mail sunucumu kurdum. İlk olarak iRedMail daha sonra onu beğenmeyip Zimbra kullandım. Hatta Zimbra Mail Server İzlenimlerim diye bir yazı da yazmıştım. Tabi yandex’i keşfettikten sonra bu sunucu kapandı.

Kısaca Kurumlar İçin Yandex’in özelliklerinden bahsedeyim:

  • 1000 kullanıcıya kadar çıkabiliyorsunuz. Daha fazlası için bir form yardımı ile arttırılmasını isteyebiliyorsunuz.
  • Tüm eposta protokollerini kullanabiliyorsunuz (POP3/IMAP/SMTP)
  • Sınırsız alan (diyor ama nekadar sınırsız bilmiyorum)
  • Türkçe dökümanlar
  • DKIM desteği
  • Dilerseniz DNS hizmetinden de yararlanabiliyorsunuz.

Söylemem gerekir ki ağır bir şekilde Google fanıydım, hala da öyleyim ama Google Reader ve Google Apps gibi servisleri kapatması hiç hoşuma gitmedi. Hiç açmamış olsa tabi ki lafım yok ama açıp daha sonra kapatması hoş değil bence. Bu sırada da Türkiye ile yakından ilgilenen Google rakibi Yandex’in olması güzel birşey. Bu posta servislerinin kullanımı Yandex’e fayda sağlıyor mu bilmiyorum ama umarım sağlıyordur ve Google karşısında bir nebze de olsa güçlenmesine yardım eder. Çünkü rekabetten tek fayda sağlayacak olan biz kullanıcılarız.

Text

Steve Maguire'nin Hatasız Kodlama kitabını okuyorum şu sıralar. İlk bölümden bir parça:

Kitapta, Microsoft Excel ve Microsoft Word uygulamalarının geçmişi hakkında da bir şeyler öğreneceksiniz. Excel, Microsoft’un grafiksel elektronik tablo uygulamasıdır. Bu uygulama ilk olarak Macintosh için yazılmıştır. Daha sonra Windows için yeniden yazılmış, gözden geçirilmiş ve geliştirilmiştir.

Text

Başlık çok açıklayacı olmadı fakat Türkçe`deki tam karşılığını da bulamadım. Konu, php de “if” durum degerlendirmelerinde bir değerin o olmadığı durumları yakalamak istediğinizde bir eşittir ve bir ünlem kullanırsınız değil mi? Bende öyle yaptım ama istediğim sonucu elde edemedim. Kod üzerinde açıklamak gerekirse,

$a = 1;

if ($a =! 3)
{
    echo 'Üç değil!';
}

var_dump($a);

var_dump() un int(1) çıktılamasını beklerdim fakat sonuç şaşırtıcı şekilde bool(false) geldi.

Biraz mantıklı düşününce aslında mantıklı olduğunun farkına vardım yani bunun,

$a = 1;
$a +=2;

den çok ta bir farkı yok. Ama hata ararken bunun olabileği aklınıza gelmiyor işte.

Text

Google Apps’ın paralı olmasından sonra benim gibi kendi sunucularını barındıran insanlar ne yaptı bilmiyorum ama ben kendi mail sunucumu kurma yoluna gitmiştim. Çeşitli servislere göz attım ama aylık mailbox başına $2 civarı bir para istiyorlar. DigitalOcean gibi bir nimet varken çokta fazla kullanmayacağım ama olması gereken mailler için o parayı vermek istemedim. Cimriliğimden falan değil, daha ucuzuna kendi sunucumda barındırarak ekstra araçlara da sahip olmuş oldum. VPN, HTTP Proxy, Torrent Client bunlardan bazıları.

İlk olarak mail sunucusunu kendim yapılandırmayı denedim. 2012 AB konferanslarındayken Postfix kurulumu sunumuna girmiştim. Aslında çok ta ilgimi çektiğinden değil ama uçağıma daha zaman vardı ve gidip havalimanında beklemektense bu sunuma girmeye karar verdim. Zaman geçirmek için girdiğim o sunum birden çok ilgimi çekmeye başladı. Mesela mail sunucusunun host adının gerçek olması ve PTR kaydıyla tutarlı olması gerektiği, yoksa alıcı sunucunun spam server olarak değerlendirip maili kabul etmeyeceği vs. Onları öğrenmemiş olsaydım bir de onlar için boşu boşuna zaman harcamış olucaktım. Biraz zaman geçince artık havalimanına gitmenin vakti gelmişti, istemeyerekte olsa çıktım. Bunu niye anlatıyorsun derseniz, belki çıkmasaydım ve sunumun geri kalanını dinleyebilseydim ve karmaşayı görebilseydim kendi mail sunucumu manuel olarak ayarlamaya çalışmakla 2 günümü ziyan etmemiş olacaktım. Kullanıcı hesaplarını veri tabanına bağlama, sunucuları birbiriyle bağlama vs. manuel yapmak akıllı işi değil -en azından benim için-.

Bununla başa çıkamayacağımı kavradıkran sonra iRedMail'i buldum. Kolay ve anlaşılır dökümanları var. Uzun bir süre de onu kullandım. Çok basit birşey istiyorsanız fazla uğraşmadan kurup kullanabilirsiniz. Tüm popüler linux dağıtımlarını destekliyor. Bir de ücretli sürümü mevcut, söyle ki, ücretsiz versiyondakinden farklı hiçbirşey yok aslında sadece Web UI deki yapabileceklerinizin bir kısmı eksik. Yanlış hatırlamıyorsam mail forwarder eklemek ve catch all mail olarak (bundan tam emin değilim) atama işlemi gibi şeyleri Web UI sini kullanarak yapamıyorsunuz ama veritabanı tablosu çok karmaşık olmadığından manuel olarak kolaylıkla yapabileceğiniz şeyler. Kendi forumunda nasıl yapılacağını açıklamışlar. İşin güzel yanı ise bu yapıyı kendi yaptığınız bir servise bağlayabilirsiniz, yani yeni hesap ekle vs.

Gözümle görmesem bir mail sunucusunun bu kadar ram’e ihtiyacı olduğunu söyleseler inanmazdım… Gerçi ram harcayan spam ve antivirüs filtreleri. iRedMail kullanırken 512mb ramli makinada 1GB swap ile zar zor çalışıyordu ama işimi fazlasıyla görüyordu.

Mail sunucumdaki VPN server windows 7’li bilgisayarlarda bir yavaşlık yaşıyordu. Biraz araştırmadan sonra Global Cynic abinin yazısını buldum ve uygularken iptables ayarlarının içine ettim. Sıfırlayıp tekrar ayarlamak yerine bu sefer bir de Zimbra'yı deneyelim dedim. Zimbra vmware'ın mail sunucu paketi. Ücretli versiyonu da var community versiyonu da. Ücretsiz kurup kullanabiliyorsunuz. Hazır sunucuyu yenilemişken garibin ramini arttırıyım dedim ve 1GB a çıkarttım. Dökümanında yazdığına göre testler için 1GB yeterli, production için en az 2 önerilen ise 4GB. Ben de 1GB ram kullanarak kurulumu yaptım ama bilin bakalım ne oldu? Ram yetersizliğinden bazı uygulamalar çalışmadı doğal olarak. Hemen 1 gb swap alanı açtım ve şuan güzel çalışıyor.

Zimbra bence iRedMail den kat ve kat güzel bir uygulama, çünkü;

  • SSL sertifikasını kolaylıkla ekleyebiliyorsunuz
  • iRedMail in sadece ücretli versiyonunda olan ayarların kat ve kat fazlası burada mevcut.
  • DKMI ayarlarını ikisinde de tarminalden alıyorsunuz ama Zimbranın işleyişi biraz daha kolay.
  • Takvim özelliği var ekstra olarak.
  • Ayrıca istatisikleri de görebiliyorsunuz.
  • Tübitak’ta zimbra kullanıyor : https://mail.tubitak.gov.tr

Şuan için benim ilgimi çekmeyen ama ekstra birçok özelliği var. İlk olarak gözüme çarpanlar bukadar, ilginç özellikleri keşfettikçe listeyi geliştiririm. iRedMail mi Zimbra mı diye düşünüyorsanız ilk olarak Zimbrayı bir deneyin derim.