Bilgisayar alanından hareketle yaşamla ilgili her şeyi paylaşmaya çalışan arkadaşların oluşturduğu kollektif bir günlüktür.
Mutluluk
Varsayılan Q klavyeyi F klavyeye dönüştürme
Win2000 ve WinXP üzerinde, kayıt defterine girip şu değerleri yapıyorsunuz:
[HKEY_CURRENT_USER\Keyboard Layout\Preload] anahtarında ilk kaydı şöyle yapıyorsunuz
"1"="0001041F"
[HKEY_USERS\.DEFAULT\Keyboard Layout\Preload] anahtarında ilk kaydı şöyle yapıyorsunuz
"1"="0001041F"
0001041F değeri F klavyeyi
0000041F değeri ise Q klavyeyi belirtiyor
Ubuntu ve 3B Masa üstü
Masaüstümün ekran görüntüsü:
Videolar: Youtube Xgl Beryl Araması
Kurulum için: Install Beryl on Ubuntu
Haydi kızlar Elektrik Elektronik Mühendisliğine
Gmail'de aynı anda iki anlık ileti ekranı
SQL Biçimlendirici
Durum Tabanlı Çıkarsama (Case Based Reasoning)
Sunumu nasıl hazırladım: Bu ve önceki sunumu Latex Beamer kullanarak yaptım. Makaleleri ve sunumları artık sürekli Latex ortamında yazıyorum. İşimi çok kolaylaştırıyor. Diğer kelime işlem programlarındaki saçmalıklarla (biçimlendirmenin istediğiniz gibi olmaması) uğraşmak zorunda kalmıyorum (Hazır Latex sınıfları kullanarak biçimlendirme kolaylaşıyor). Yazma ortamı olarak Texmaker kullanıyorum. Debian ve Ubuntu'da güzel bir şekilde (Texlive altyapısını kullanıyor) çalışıyor. Ayrıca Lyx'te kullanabilirsiniz.
Bağlantılar: Ubuntu Texlive ve Texmaker kurulumu (İngilizce)
İnce bir Latex 2e Kitabı (Türkçe)
The beauty of LaTeX
LaTeX vs. MS Word
Ubuntu, Anjuta ve OpenGL
Aşağıdaki aşamaları izleyerek OpenGL örnek kodumu çalıştırmayı başardım:
- İlk olarak OpenGL geliştirmesi yapabilmek için gereken paketi (freeglut3-dev) Synaptic paket yöneticisinden (veya sudo apt-get install freeglut3-dev komutuyla) kurmak gerekiyor. OpenGL geliştirmemiz için gereken başlık ve kütüphane dosyalarını bu paket kuruyor.
- Daha sonra Anjuta'yı açıp örnek bir kod yazıyoruz (Yazının sonunda bu kodu bulabilirsiniz)
- Anjuta'da derleme işini yapıyoruz (F9 tuşu veya menüden Build->Compile) ve derlemenin başarıyla tamamlandığını görüyoruz.)
- Çalıştırabilmek için önce Build komutunu (F11 veya menüden Build->Build) kullanmalıyız. Büyük ihtimalle hata verecektir. Çünkü uygun kütüphane ayarlarını yapmamız gerekiyor.Menüden Settings->Compiler and linker options açarak Libraries kısmına sırasıyla glut, GL ve GLU kütüphaneleri yukarıdaki metin kutusuna yazarak ve Add düğmesine basarak ekliyoruz. Şimdi Build dediğimizde hatasız çalışacaktır.
- Çalıştır dediğimizde (F3 veya Build->Execute) mavi üçgen içeren ufak bir pencere görmelisiniz (Bakınız aşağıdaki resimdeki ufak pencere).
Yukarıdaki penceredeki üçgeni görüyorsanız tebrikler, Linux içerisinde OpenGL kullanmaya başlayabilirsiniz.
Kaynak Kod:
#include <GL/gl.h>
#include <GL/glut.h>
void init(void);
void display(void);
int main(int argc, char *argv[])
{
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_DOUBLE|GLUT_RGB);
glutInitWindowSize(250,250);
glutInitWindowPosition(100,200);
glutCreateWindow("Ýlk OpenGL/GLUT Programým");
init();
glutDisplayFunc(display);
glutMainLoop();
return 0;
}
void init(void)
{
glClearColor(0.0f ,0.0f ,0.0f ,0.0f);
glColor3f(0.0f,0.0f,1.0f);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluPerspective(45.0f,(GLfloat)250/(GLfloat)250,0.1f,100.0f);
}
void display(void)
{
glClear(GL_COLOR_BUFFER_BIT);
glBegin(GL_TRIANGLES);
glVertex3f( 0.0f, 1.0f, -10.0f);
glVertex3f(-1.0f,-1.0f, -10.0f);
glVertex3f( 1.0f,-1.0f, -10.0f);
glEnd();
glutSwapBuffers();
}
Bağlantılar: http://www.cs.mcgill.ca/~msuder/557/tutorial/tutorial.html
Bağımlılık
Evet benim var, sürekli takip ettiğim mutlaka açık olan siteler var. Önceden bu sayı daha fazlaydı. Sürekli olarak (günde en az bir kere) baktığım siteleri (özellikle haber ve günlük şeklinde olanları) google reader yardımıyla tek sayfada toplamayı başardım. Bu Firefox üzerinde tab çokluğu ve siteleri sürekli açma sıkıntımı aşmama yardımcı oldu. Şimdi en azından 4 tab (gmail, reader, pandora ve okunması gereken ama zaman bulunamayan en az 1 yazı) sürekli açık olarak kalıyor. Arada sırada da her ne kadar nefret etsem de milliyet'i açmadan duramıyorum. Bu bağımlılıktan da kurtulmayı istediğimi pek söyleyemem. İnternet o hale getirdi ki artık haberleri okumasam çıldıracakmışım gibi hissediyorum :P (tamam bu biraz abartı) Gerçi benim durumum da iyi sayılır. En azından msn bağımlılığım yok :)
RADIUS Server Nedir?
Daha çok internet servis sağlayıcıları tarafından kullanılsalar da, kendi kullanıcılarına hesap açma ve yetkilendirme yapabilmek için merkezi bir kontrol kurulmak istenen tüm ağlarda kullanılabilir. Geniş Wi-Fi (kablosuz) ağlarda da sıklıkla kullanılır.
RADIUS, UDP protokolü üzerine dayalıdır. 1812 nolu UDP portunu kullanır.
RADIUS için geliştirilmiş özgür yazılımlardan biri FreeRADIUS. Bu yazılımla yapabileceklerinizin bir kısmı şöyle:
- Kişi bazında yetkilendime yapılabilir.
- Gruplar tanımlanıp, farklı erişim hakları verilebilir.
- Yapılan girişlerin kaydı tutulabilir.
- Sisteme o an bağlı kullanıcı listesini gösterebilir.
- Tek kullanıcının aynı anda iki bağlantı yapması engellenebilir.
- Proxy kullanımını destekler
Kaynak: www.freeradius.org
Quilapayun
Hele şu davulların gümbürtüsü beni çoşturuyor.
Normalde sadece Inti Illimani'yi biliyordum. Ama bir şekilde Quilapayun adını duydum. Müziklerini bulma şansım olmamıştı ama Pandora'da kendime güzel bir (Inti Illimani, Quilapayun ve Gustavo Santaolalla temelli) kanal oluşturdum sürekli dinliyorum. Çok hoşuma gidiyor Güney Amerika halk müziği....
Pandora Profil Sayfam
DMZ senaryoları
Birincisi "three-homed firewall configuration" olarak adlandırılıyor ve bir makina üzerine 3 ethernet kartı takılmasını gerektiriyor. Şekilde bu yapı görülebilir.
Her ağ kartı ayrı bir ağa bağlanmak için kullanılıyor.
Ağ kartı 1 iç ağa bağlanır.
Ağ kartı 2 DMZ ağına bağlanır.
Ağ kartı 3 Internet'e bağlanır.
Bu yapıda DMZ ve iç ağ tek bir yerden yönetilebilir ancak saldırılara karşı çok güçlü değildir.
Diğer yöntem ise "Back-to-Back Firewall Configuration" olarak bilinir ve iki ayrı sunucunun "firewall" olarak kullanılmasını gerektirir.
Bu yapı öncekine göre, saldırılara karşı daha dayanıklıdır. Bunun yanında ağ yönetimde daha detaylı çalışmalar yapabilmenizi sağlar. Ancak daha karmaşık bir yapıda olması nedeniyle,kurulum ve gerekli ayarların yapılıp sistemin devamlılığını sağlamak daha zordur.
Kaynak: http://www.samspublishing.com/articles/article.asp?p=25488&seqNum=8&rl=1
DMZ ( De-Militarize Zone / Silahsızlandırılmış Bölge )
Cevap : DMZ ( De-Militarize Zone / Silahsızlandırılmış Bölge ) ;
Ağınızda Internet'den erişimi olması gereken web, posta gibi sunucular bulunabilir. Bu sunuculara erişimi iki yoldan vermeniz mümkündür:
· Silahsızlandırılmış bölge uygulaması (DMZ - Demilitarized Zone)
· İç ağınızda bu servislere doğrudan filtreleme yaparak.
DMZ, güvenlik duvarı tarafından daha az korunan, daha fazla erişime izin verilen bir bölgedir. Güvenlik duvarına üçüncü bir ağ çıkışı eklenmesi ve Internet'e servis verecek olan makinaların buraya konulması ile oluşturulur. Örneğin DMZ'deki makinalara NAT uygulanmayabilir, tahsisli IP numaralarına sahip olabilirler. Güvenlik duvarı, telnet, ssh gibi kimi protokollerin buraya erişimini filtreleyerek DMZ bölgesindeki makinalara güvenlik sağlar. Dikkat edilecek nokta, DMZ'de bulunan makinaların daha fazla erişime (ve dolayısıyla saldırıya) açık olmasıdır. Buradaki makinalar dikkatli kurulmalı, güvenliğe aykırı protokoller vs. burada yer almamalıdır.
Kaynak : http://www.cozum.com.tr/billiond.asp#dmz
Python ve Kabuk (Shell) Programlama
#!/usr/bin/python
import commands,sys,os
def DU(girdi):
try:
#Parametre olarak verilen dizinin boyutlarini bulacagiz
#Boyut 1024 byte'in katlari seklinde
for dizin in girdi:
komut = commands.getstatusoutput("du -ks '"+dizin+"'")
#komut[0] komutun durumunu, komut[1] ciktisini sakliyor
print komut[1]
except:
print "Unexpected error:", sys.exc_info()[0]
raise
#Programi calistiralim
if(len(sys.argv)>1): DU(sys.argv)
else: DU(["/home/emre"])
sys.exit()
Yukarıdaki kodu (aşağıdaki resimdeki satırların içte olması gibi yazmalısınız python buna göre blokları (mesela for döngüsü) belirlemektedir) mesela DiskUsage adında bir dosyaya yazın (nano DiskUsage diyorsunuz açılan yere kodu yapıştırıp CTRL+X ile çıkıyorsunuz ve kaydetme sorusuna Evet (Yes'te olabilir) diyorsunuz. Dilerseniz gedit veya kwrite tarzı editörler kullanabilirsiniz.).
Daha sonra chmod +x DiskUsage komutunu çalıştırın. ./DiskUsage komutuyla yukarıda yazdığınız komut çalışacaktır. Komuta argüman verip dilediğiniz bir klasörün kullanım bilgilerini de inceleyebilirsiniz. Erişemediğiniz klasörler için sudo komutu işe yarayabilir.
Aşağıda komut satıri resmini inceleyebilirsiniz:
Elbette siz de diğer betik dilleri (mesela ruby falan) için bunu deneyebilirsiniz.
Kaynaklar:
http://www.ibiblio.org/g2swap/byteofpython/read/index.html
Dive Into Python For Loops
Linux altında pratik programlama
"Sağ tarafta Oz dizisinin 1. sezonunun 7. bölümü oynuyordu."
Çok Bilinmeyenli Denklemler
"Yürüdüğüm bütün yollar yokuş çıktı"