İçeriğe geç

Ahmet Sezgin Duran Yazılar

PirateBox Ekşınları – Vol 2 – Kurulum

Bir önceki yazıda PirateBox nedir, ne değildir tarzı konulardan bahsetmiştim. Şimdi sırada kurulum var. Kurulumu önceki yazıda da bahsettiğim gibi, MR3020 router’ında yaptım. Dolayısıyla başlamadan önce bu cihazın bazı özelliklerine değinmek şart:

  • 150 MBps’e kadar kablosuz aktarım hızı
  • 3G/4G modem desteği (LTE/HSPA+/HSPA/UMTS/EVDO)
  • Oldukça küçük bir boyut, kolayca taşınabilir.
  • 3 farklı işleyiş modu: 3G/4G Router, WISP istemcisi ve erişim noktası (Access Point; ethernetten gelen internet bağlantısını yaymak için)

router_usb

PirateBox Ekşınları – Vol 1 – Nedir, Yenir Mi?

Geçenlerde, birkaç gün öncesi oluyor bu, Youtube’da GNU Sohbetleri adında yeni açılmış bir kanalın PirateBox videosunu izledim. PirateBox adındaki bir donanım-yazılım bütününden (gerçi donanım pek sayılmaz) bahsediliyordu. Aslında daha önce bu zımbırtının ne olduğunu duymuştum fakat, sohbetin güzel ve açıklayıcı olması (bkz: pilavlı sohbet) olaya dikkatimi vermemi sağladı.

piratebox

OpenVPN Sunucusu Kurulumu ve İstemci ile Bağlanma

Twitter’ın ülke içinden erişiminin engellenmesi, ardından DNS’lerin banlanması derken sonunda gelebileceğimiz en saçma noktaya geldik: Twitter artık IP bazlı bir şekilde engellendi. Bu ne demek? DNS değiştirmek artık bir çözüm değil. Çare VPN… (bkz: çare drogba)

VPN’lere ben şahsen biraz mesafeli duruyorum zira servis sağlayıcıların ne şekilde ve ne kadar süreyle kayıt yaptığı pek belli değil. Kimin ne sıktığına da kolay kolay güvenemeyeceğimden, kendime ait bir sunucuya OpenVPN kurdum ve şimdilik sıkıntısız bir şekilde erişim sağlayabiliyorum. Böylelikle tüm erişim kayıtları direkt olarak benim elimde bulunuyor. Bu yazımda, sunucu kurulumu ve istemci ile bağlantı yapılmasını anlatacağım.

Ubuntu 13.10’da ADB ile Turkcell T40’a Ulaşmak

Dün aldığım Turkcell T40’ı hemen kurcalamaya başladım. Asıl ihtiyacım, Android uygulama geliştirme olduğu için doğal olarak DDMS’e (Dalvik Debug Monitor Server) dalıp cihazı incelemeyi ve geliştirdiğim basit uygulamaları çalıştırmayı denedim. Tabi hatalar hemen baş gösterdi 😀

Sıkıntılı durum şuyduki, ADB (Android Debug Bridge) sunucusu cihazımı düzgün bir şekilde tanımıyordu. sdk/platform-tools klasörü içinden adb’yi manuel çalıştırdığımda da bir şey değişmedi:

GNU/Linux’da SSH Zamanaşımını Engellemek

VPS’de çalışırken en nefret ettiğim olaylardan birisi SSH sunucusunun zamanaşımından (timeout) dolayı bağlantıyı koparmasıydı. Ta ki sinirlerimi bozan bu olayı nasıl engelleyeceğimi öğreninceye kadar.

Debian/Ubuntu temelli sistemlerde, SSH daemon yapılandırma dosyasına sadece 3 satırlık bir ayar ekleyerek bu durum hallolabiliyor. Bunu yapmak için /etc/ssh/sshd_config dosyasını yetkili kullanıcı olarak açmakla başlayın:

Ruby’de Proc ile Lambda Farkı

Ruby dilini öğrenirken çok fazla zorluk çekmedim. Tabi her dilde olduğu gibi bunda da başta beyin mıncıklayan, sonradan “Aaa, öyleymiş tabii” denilen kısımlar var. Şahsen ben Ruby’yi öğrenmek için Codecademy‘i kullandım. Bir çok programlama dilini ve meşhur API’leri öğrenebileceğiniz gayet güzel bir site.

Codeacademy’de güzel güzel Ruby’de ilerlerken, Proc ve Lambda kısımlarına geldim. Öncelikle bunlar nedir, ne değildir bir hatırlamak lazım. Proc ve Lambda, tam anlamıyla belli bir kod bloğunu işlev haline getiren araçlardır. Rahatça bunu bir işlev (fonksiyon) gibi düşünebilirsiniz. Yaptırmak istediğiniz işleri, bir bloğa yerleştirip kolayca onu her yerde, belli parametreleri de kullanarak halledebilirsiniz.

Guard-RSpec Sistemini Spork ile Hızlandırmak

Bir önceki yazımda Rails’de RSpec testlerini Guard ile otomatikleştirmeyi anlatmıştım. Başlangıç için iyi bir çözüm fakat geliştirilen proje büyüdükçe yapılan anlık testler yavaşlamaya başlıyor. Tabi her iş için bir gem bulunan Ruby-Rails aleminde, bunun için de bir gem var: Spork

Spork, Ruby yazılımlarının test sistemleri (RSpec, Cucumber, vs.) için geliştirilen bir DRb sunucusudur. Standart şekilde test dosyalarını yükleyip kaldırmak yerine bunları önbellekte tutar ve her testte sunucunun yeni bir fork’unu oluşturur. Sonuç? Hızlı ve güvenli 🙂 Yalnız uyarayım, Spork gemi, Ruby’deki Kernel.fork methodunu kullanıyor ve bu method da sadece UNIX benzeri sistemlerde (Linux, BSD, OSX) çalışıyor. Kısacası bu araç Windows’da çalışmayacak.

Rails’de Guard ile Otomatik RSpec Testi Yapmak

TDD‘ye bulaşmayı pek çok insan istemiyor ama işin içindeki mantığı çözünce de ciddi anlamda yararını görmek mümkün. Özellikle Ruby-Rails eğitiminde az da olsa gördüğüm RSpec çalışması dikkatimi çekti bu konuda. Kendim de araştırıp daha da üstüne gidince, ne kadar önemli bir olgu olduğu konusunda az da olsa bir fikir edinebildim 🙂

RSpec’le ilgili başta sevmediğim şeylerden birisi tek tek testleri çalıştırmakdı. RoR örneklerini çalıştığım sitede, burası, Guard adlı bir gem ile işleri otomatiğe bağlamayı öğrendim. Hatta Ubuntu için bir bildirim gemi de koyunca, tadından yenmedi diyebilirim. Guard’ı kurmak için öncelikle Gemfile dosyasına gerekli bazı gemleri eklemek gerekiyor:

Ve Linux Yaz Kampı 2013 Biter…

Bu yıl Bolu’da Abant İzzet Baysal Üniversite’sinde düzenlenen Linux Yaz Kampı 2013, dün güzel bir tören ve konuşmalarla bitti. Hatta o kadar manidar olan bir şey var ki, 2 hafta boyunca neredeyse hiç yağmur yağmayan Bolu’da tam bitiş günü sağlam bir yağmur yağdı. Sanki gidişimize üzülüyor gibi 🙂

Kampta Ruby-Rails eğitimindeydim. Aslında ilk başta Java eğitimine katılmak istemiştim fakat yeterlilik için istenen Java kodları beni ters köşe yatırdı. Bir çok arkadaşıma danışarak yaptığım kararla, ki çoğu da Türkiye’de Ruby-Rails eğitimi verecek insan sayısının az olduğunu söyledi, Ruby-Rails eğitimine katıldım. Ki sonradan Java eğitimindeki bir arkadaşıma neler yaptıklarını sordum ve tam anlamıyla mindf*ck oldum. Zira o eğitim, kendi seviyemin rahat 3-5 gömlek üstündeydi. Şans 🙂