Yayınlar

Everest Rampage KB-R8 Linux Sürücüsü

Resim
Bilgisayarda çalışırken genelde dizüstü bilgisayarın kendi girdi aygıtlarını kullanıyorum. Fakat bugün geçiş yaptığım ayakta çalışma masasında bu mümkün olmayacağından daha önce satın aldığım ama pek kullanmadığım klavyelerden Everest Rampage KB-R8'i kullanmaya başladım.



Bu klavye ne yazık ki Linux'ta takar takmaz sorunsuz olarak çalışmıyor. Klavyenin sorunu Linux'tayken Sol Ctrl, Alt, Meta, Sol Shift ve Sağ Ctrl tuşlarının hepsinin kendisini Sağ Shift sanması kısaca. Klavyenin üreticisinden bağımsız olarak geliştirilen aziokbd isimli bir sürücü yardımıyla klavye tüm özellikleriyle ve sorunsuzca çalışıyor.

Sürücünün paketi gördüğüm kadarıyla dağıtımların paket depolarında bulunmuyor ama proje sayfasındaki kurulum yönergeleri kolayca takip edilebiliyor. Örneğin benim durumumda Fedora 32'de aşağıdaki komut ve işlemler işimi gördü.
sudo dnf install kernel-devel kernel-headers sudo dnf groupinstall "Development Tools" "Development Libraries"
hg clone ht…

İnsan Farkları

Başlık "Human ve People Farkı" olsaydı daha açıklayıcı olurdu ama şimdiki halini tercih ettim insan haklarını selamlamak için.

Star Trek: The Next Generation'ın dördüncü sezon on beşinci bölümünü izlerken şöyle bir cümle duydum:
Eğer insanlar yeterince korkarsa her şey olabilir. Bu cümlede ne var diye sizi fazla düşündürmeden açıklayayım. Bu cümleyi kuranın bir Malcorian olması dışında garipsediğim bir durum yok açıkçası.

Malcorian'lar, Malcor III gezegenine özgü insansı bir tür. Kendilerinin en yüksek seviye canlı biçimi olduğuna ve gezegenlerinin de evrenin merkezinde bulunduğuna inanırlardı (ta ki İlk Temas'a kadar). Malcor III, bir şansölye liderliğinde birleşik bir hükümet tarafından yönetilirdi.

Şimdi neyi garipsediğimi anlamışsınızdır sanırım. Malcorian'lar insansı bir tür olsa da bu cümlede insan yerine daha uygun bir ifade kullanılmalıydı bence:
Eğer Malcorian'lar yeterince korkarsa her şey olabilir.
Eğer halk yeterince korkarsa her şey olabilir.

License Classifier

ASLA ve OSLC sanırım artık güncellenmiyor. Şimdilerde lisansları saptamak için ne kullanılıyor diye araştırdığımda Go ile geliştirilen License Classifier ile karşılaştım.

License Classifier, içerdiği lisans türünü belirlemek için metinleri analiz edebilen bir kütüphane ve araç kümesi. Bir dosyadaki lisans metinlerini arıyor ve bunları bilinen lisansların bir arşiviyle karşılaştırıyor. Üzerinde çalışılabilecek dosyalar, içinde tek veya birden çok lisans bulunan LICENSE, COPYING gibi dosyalar olabileceği gibi açıklama satırlarında lisans bilgileri olan kaynak kodu dosyaları da olabilir.

Her sonuçla birlikte lisans eşleştirmesinin ne kadar doğru olduğunu gösteren bir güven seviyesi de veriliyor. 1.0 güven düzeyi tam eşleşmeyi belirtirken, 0.0 güven düzeyi araştırılan metnin herhangi bir lisansla eşleşmediğini gösteriyor.
Yeni Lisanslar Ekleme Projenin kullandığı veritabanına yeni bir lisans eklemek basit. Projenin licenses dizini altında bir metin dosyası oluşturulur. Dosya adı lisansın …

GMP C++ Arayüzü

Bu yazıda kısaca GMP'nin C++ sınıfı tabanlı arayüzünü açıklamaya çalışacağım.

Tüm GMP C dili türleri ve fonksiyonları, gmp.h başlık dosyası extern "C" niteleyicilerine sahip olduğundan C++ programlarında kullanılabilir, ancak sınıf arayüzünün sunduğu aşırı yüklenmiş fonksiyon ve operatörlerin C++'ta kullanımı daha uygun olabilir.

GMP'nin tüm C++ sınıfları ve fonksiyonları gmpxx.h başlık dosyasıyla sağlanır. Derlenecek programlar libgmpxx ve libgmp kütüphanelerine bağlanmalıdır. Örneğin:

g++ mycxxprog.cc -lgmpxx -lgmp
Tanımlanan sınıflar şu şekildedir:
mpz_classmpq_classmpf_class Bu sınıflarla aritmetik işlemlerin yapılabilmesi için standart operatörler ve çeşitli standart fonksiyonlar aşırı yüklenmiştir. Örneğin:


Gerçeklemenin önemli bir özelliği, a = b + c gibi bir ifadede b + c bölümünün geçici öğeler kullanılmadan, karşılık gelen mpz_add öğesine tek bir çağrıyla hesaplanabilmesidir. Doğası gereği a = b * c + d * e gibi ara değerler gösteren ifadeler yine de ge…

GMP: Sınırsız Aritmetik

Resim
GMP, işaretli tamsayılar, rasyonel sayılar ve kayan nokta sayıları üzerinde işlemler için keyfi hassasiyetli bir aritmetik kütüphanesidir.


Hassasiyet konusunda GMP'nin üzerinde çalıştığı makinedeki kullanılabilir bellek miktarı dışında pratik bir sınır yoktur. GMP zengin bir fonksiyon setine sahiptir ve tüm fonksiyonları düzenli bir arayüze sahiptir.

GMP, kriptografi uygulamaları ve araştırmalarında, internet güvenliği uygulamalarında, cebir sistemlerinde, hesaplamalı cebir araştırmalarında yaygın olarak kullanılmaktadır.

GMP, hem küçük işlenenler hem de büyük işlenenler için olabildiğince hızlı çalışacak şekilde tasarlanmıştır. Hız, temel aritmetik türü olarak tam sözcüklerin kullanılmasıyla, hızlı algoritmaların tercih edilmesiyle, çok sayıda MİB için en yaygın iç döngüleri sağlayan yüksek düzeyde optimize edilmiş assembly kodlarının yazılmasıyla ve hız üzerine özellikle eğilinmesiyle elde edilmiş.

İlk sürümü 1991'de çıkan GMP'nin yılda yaklaşık bir kez yeni sürümü çıkar…

fmstream.org

Resim
Metro FM'i artık karnaval.com üzerinden değil de bir süredir kullandığım müzik oynatıcısı Elisa'da dinlemek isteyince yeni haberdar olduğum fmstream.org projesindeki bağlantılarla bu işi hallettim.


Bir radyo akışı dizini olan fmstream.org'un amacı herhangi bir uygulamaya veya eklentiye bağımlı kalmadan, yaygın tarayıcılar üzerinden çalışabilecek ve farklı biçimleri destekleyecek hızlı ve kolay bir radyo akışı oynatıcı oluşturmakmış.

Projenin geliştiricisi, Android'deki en popüler olanlar da dahil çoğu radyo uygulamasının sadece sınırlı sayıda radyo istasyonu ve biçim sunmasından bıkıp kollarını sıvamış. Projede özellikle bir istasyonun akış kaynakları arasında elle seçim yapılabilmesi ve bu sayede bit oranlarıyla örnek hızlarının kontrol edilebilmesi üzerinde durulmuş.

Daha çok bilgi, projenin hakkında sayfasında yer alıyor.

Pi'de Kendi Yerine Yerleşen Dizeler

Resim
Pi'ye karşı özel bir ilgim olmasa da Numberphile'da izlediğim bir videodan sonra izlediklerimi pekiştirmek için kısa bir araştırma yaptım. Pek kimsenin ilgisini çekmeyeceğini biliyorum ama en azından aradan belli bir zaman geçtikten sonra hatırlamamı kolaylaştırsın diye bu araştırmadaki notlarımı buraya koyuyorum.

İlk önce matematikle pek sıkı fıkı olmayanlar için Wikipedia'daki Pi sayısı maddesinden Pi'nin tanımını hatırlayalım:
Pi sayısı (π), bir dairenin çevresinin çapına bölümüyle elde edilen irrasyonel bir matematik sabitidir. İsmini, Yunanca çevre anlamına gelen περίμετρον sözcüğünün ilk harfi olan π'den alır. Pi sayısı, Arşimet sabiti ve Ludolph sayısı olarak da bilinir. Şimdi yazının ortaya çıkmasını sağlayan ve yazının devamını okumanız konusunda sizi teşvik edecek videoyu izleyelim, eğer daha önce izlemediysek:



Videoda Pi'den 3 ve virgülü çıkardıktan sonra kalan parçasında acaba hangi dizelerin (karakter katarlarının) kendi değerine karşılık gelen kon…