Skip to content

Ozgurlukicin.com

Pardus dağıtımının eksiklerinden olan döküman eksikliğini giderme v.b. konularda pardus kullanıcılarına daha iyi destek vermek amacıyla hazırlama kararı alınan Ozgurlukicin.com un çalışmaları devam ediyor.

http://beta.ozgurlukicin.com

adresinde beta durumda olan site beklentileri karşılayacak düzeyde gözükmüyor. Python temelli sitenin en kısa sürede beta dan çıkarak www.ozgurlukicin.com adresinde yayına geçmesini Pardus dağıtımına destek verenler olarak sabırsızlıkla bekliyoruz. Tasarım v.b. konularda düzenlemeler yapılmadan yayına başlaması ise bence hiç doğru olmaz…

GPLv3 – GNU General Public License, version 3

Özgür yazılım dünyasını yakında ilgilendiren GPL v 3 29 Haziran 2007 tarihiyle yerini aldı. Konu hakkında bilgiyi http://gplv3.fsf.org/ adresinden alabilirsiniz.

İşte bundan sonra kullanılacak olan lisans :

Matlab alternatifleri

Sayısal hesaplamalar, simulasyon v.b. konular ile ilgilenen kişilerden Matlab yazılımını duymamış olan yoktur herhalde. Literatürde kendine yer edinmiş olan bu yazılım başarısını kanıtlamıştır. Tek kötü yanı open source bir yazılım olmamasıdır 🙂

Farklı platformlar için sürüme sahip ender yazılımlardan biri olan Matlab Linux altında rahatlıkla kullanilabilmektedir. Yüksek fiyatı ve lisans sözleşmesi benim gibi sizin içinde bir sorun ise o zaman

Scilab
Octave

tam size göredir. Matlab kadar gelişmiş toolboxlara özelliklere sahip olmasalarda bu yazılımlar eminimki mevcut ihtiyaçları karşılyacaktır.

Eğer Pardus dağıtımını kullanıyorsanız scilab contrib deposunda octave ise depoda mevcut. Paket yöneticisini kullanarak bu yazılımları rahatlıkla kurabilirsiniz.

Scilab ve Octave incelendiginde Scilab Octaveden bir adım önde durmaktadır. Vakit bulursam scilab ve octave notlarımı düzenleyip burada paylaşacağım.

ATATÜRK’ÜN GENÇLİĞE HİTABESİ

ATATÜRK’ÜN GENÇLİĞE HİTABESİ

Ey Türk gençliği! Birinci vazifen; Türk istiklalini, Türk cumhuriyetini, ilelebet muhafaza ve müdafaa etmektir.

Mevcudiyetinin ve istikbalinin yegâne temeli budur. Bu temel, senin en kıymetli hazinendir. İstikbalde dahi seni bu hazineden mahrum etmek isteyecek dâhilî ve haricî bedhahların olacaktır. Bir gün, istiklal ve cumhuriyeti müdafaa mecburiyetine düşersen, vazifeye atılmak için içinde bulunacağın vaziyetin imkân ve şeraitini düşünmeyeceksin. Bu imkân ve şerait, çok namüsait bir mahiyette tezahür edebilir. İstiklal ve cumhuriyetine kastedecek düşmanlar, bütün dünyada emsali görülmemiş bir galibiyetin mümessili olabilirler. Cebren ve hile ile aziz vatanın bütün kaleleri zapt edilmiş, bütün tersanelerine girilmiş, bütün orduları dağıtılmış ve memleketin her köşesi bilfiil işgal edilmiş olabilir. Bütün bu şeraitten daha elim ve daha vahim olmak üzere, memleketin dâhilinde iktidara sahip olanlar, gaflet ve dalalet ve hatta hıyanet içinde bulunabilirler. Hatta bu iktidar sahipleri, şahsi menfaatlerini müstevlilerin siyasi emelleriyle tevhit edebilirler. Millet, fakruzaruret içinde harap ve bitap düşmüş olabilir.

Ey Türk istikbalinin evladı! İşte, bu ahval ve şerait içinde dahi vazifen, Türk istiklal ve cumhuriyetini kurtarmaktır. Muhtaç olduğun kudret, damarlarındaki asil kanda mevcuttur.

Mustafa Kemal Atatürk

Enerji Takip

Tekstil v.b. sektörler için enerji giderleri maliyet hesabında oldukça önemli bir paya sahiptir. Bu yüzden enerji tüketimini gözlem altında tutulması, izlenmesi maliyet hesabı yönünden önemlidir.

Tüketimin izlenmesinin yanında gelişmiş enerji sistemleri ile donatılmış fabrikalarda uygulamam izleme ve kontrol yöntemleri ile makine ve ekipmanların daha sağlıklı çalışması sağlanmakta, olası bazı aksaklıklar önceden kestirilebilmektedir.

Gelişmiş enerji izleme ve kontrol sistemlerinin kurulum maliyeti oldukça yüksektir. Bu yüzden küçük sanayici bunlardan faydalanamamaktadır. Bu noktadan yola çıkarak enerji takip sistemi projesine start verdik.

Piyasadaki benzerlerinden farklı olarak sistem izleme yazılımı linux işletim sistemi altında çalışacak ve GPL lisansı ile dağıtılacaktır. Elektronik ekipmanları isteyen şu an testleri devam etmekte olan PCB leri kullanarak kendi yapabilecektir, eğer isternirse elektronik ekipmanlar proje sahibi kişilerden malzeme+ işçilik ücreti ödenerek temin edinilebilecektir.

Proje için google code altında bir sayfa oluşturduk. Gelişmeleri bağlantıdan takip edebilirsiniz. http://code.google.com/p/enerjitakip/

pardus ve mod_python

apache ve mod_python u pisi deposundan kurduktan sonra

/etc/apache2/modules.d/16_mod_python.conf

dosyasının içeriğini aşağıdaki şekilde değiştirelim

  LoadModule python_module modules/mod_python.so
    
      AddHandler mod_python .py
      PythonHandler mod_python.publisher
      PythonDebug On
    
  DirectoryIndex index.py

bundan sonra
/var/www/localhost/htdocs/

dizini altına python isimli bir dizin oluşturalım ve eğer apache çalışıyorsa

#sudo service apache restart

komutunu verelim. çalışmıyor ise

#sudo service apache start

ile apache yi başlatalım.

Şimdi sıra test etmeye geldim.

hello.py isimli bir dosya oluşturalım ve dosya içine aşağıdaki kodu yazarak bu yeni dosyayı oluşturduğumuz python klasörü altına kaydedelim.

def hello(name=None):
if name:
return 'Hello, %s!' % name.capitalize()
else:
return 'Hello there!'

şimdi gezinti aracımızı açarak adres satırına
http://localhost/python/hello.py/hello

yazalım.

Hello there!
yazısını görüyorsak sorun yoktur. :)

python ile kredi kartı no kontrolü

Daha önce kredi kartı numarasının kontrolü için luhn algoritmasından bahsetmiştim. Luhn algoritmasını python ile yazacak olursak aşağıdaki şekilde yapabiliriz.

def kontrol(kartno):
toplam = 0
hanesayisi = len(kartno)
tekcift = hanesayisi & 1
for sira in range(0, hanesayisi):
hane = int(kartno[sira])
if not (( sira & 1 ) ^ tekcift ):
hane = hane * 2
if hane < 9:
hane = hane - 9
toplam = toplam + hane
# return toplam
return ( (toplam % 10) == 0 )

kartno=raw_input("Kredi kartı numarasını gir  :")
if  kontrol(kartno) :
print kartno, 'nosu geçerli'
else:
print kartno, 'nosu geçerli değil'

python ile mysql’e bağlanma

Python ile MySQL e bağlanmak için sistemizde MySQLdb kütüphanesi olmalı. Bu kütüphane ile mysql veritabanı üzerinde işlem yapmak oldukça kolaylaşıyor. Aşağıda basit mysql örneği gözükmektedir.

try:
import MySQLdb
except ImportError:
sys.exit( "MySQLdb modulu gerekli - bulunamadi" )
''' MySQLdb nin sistemde varlığını kontrol ederek bağlıyoruz'''
db_hostname="benim_sunucum"
db_database="benim_veritabanım"
db_username="benim_veritabani_kullanici_adim"
''' vertabanı tanımlamalarını yapıyoruz'''
dbcon=MySQLdb.connect(host=db_hostname,user=db_username,db=db_database )
'''veritabanına bağlantı kuruyoruz'''
cursor=dbcon.cursor()
sql = """SELECT * FROM benim_tablom"""
cursor.execute(sql)
'''sql soruusunu işletiyoruz'''
data = cursor.fetchone()
field = cursor.description
'''sql sorgusu sonucu donen verinin ilk satirini aliyoruz'''
cursor.close()
dbcon.close()
'''veritabanı bağlantısını sonlandırıyoruz'''
print data
'''veriyi yazdırıyoruz'''

Kredi kartı numara doğrulama

Gelen bir epostada kredi kartı numarası nasıl doğrulanır şeklinde bir soru vardı.

Cevap : Luhn algoritmasıdır. Bir çok kişiye bu anlamsız gelebilir. Bunu basit bir örnekle açıklamayalım

16 Haneli bir kredi kartı numaramız olsun

6 7 6 2 0 5 0 1 2 1 5 2 6 3 8 4
Kart No 6 7 6 2 0 5 0 1 2 1 5 2 6 3 8 4
adım 1 6×2 6×2 0x2 0x2 2×2 5×2 6×2 8×2
12 12 0 0 4 10 12 16
adım 2 1+2 1+2 0 0 4 1+0 1+2 1+6
3 7 3 2 0 5 0 1 4 1 1 2 3 3 7 4
adım 3 3+7+3+2+0+5+0+1+4+1+1+2+3+3+7+4
46
adım 4 mod10(46) = 6

Adım 1 : Sağ taraftan başlayarak çift haneli sayıları iki ile çarpıyoruz

Adım 2 : Adım birde bulduğumuz yeni sayının haneler toplamını buluyoruz

Adım 3 : Yeniden oluşmuş olan 16 haneli sayımızın haneler toplamını buluyoruz

Adım 4 : Adım 3 de bulunan sayının mod 10 değerini buluyoruz

Adım 4 sonucunda bulunan değer 0 ise bu sayı Luhn algoritmasını
gerçekliyordur. Yani elimizdeki kredi kartı numarası
geçerli bir kredi kartı numarasıdır diyebiliriz.

Bunun için basit bir php script ise aşağıdaki şekilde yazılabilir.

< ?php

$sayi="12231231131";

$odd = !strlen($sayi)%2;

$toplam = 0;

for($i=0;$i<strlen($sayi);++$i) {

$n=0+$sayi[$i];

$odd=!$odd;

if($odd) {

$toplam+=$n;

} else {

$x=2*$n;

$toplam+=$x>9?$x-9:$x;

}

}

if (($toplam%10)==0){  echo $sayi." için luhn algoritmasi geçerli";}

else {echo $sayi." için luhn algoritmasi geçerli değil";}

?>
Back To Top