arşiv

1, 2010 için arşiv

Python Projesi

Pazartesi, 29 Mar 2010

İstanbul’da Boğaziçi Ses Hizmetleri adlı şirketin sahibi Salih Arık, şirket bünyesinde yürütülen bir proje için Python programcısı aradıklarını haber verdi. Projeyle ilgili ayrıntılı bilgileri Salih Bey’den alabilirsiniz, ancak projenin genel olarak VoIP üzerine olduğunu söyleyebilirim.

Proje ve ücret konularını görüşmek için 0532 404 33 68 numaralı telefondan Salih Arık‘ı arayabilir ya da saliharik [at] hotmail.com adresinden kendisine yazabilirsiniz.

Uncategorized , , , ,

Ubuntu Lucid Lynx’te Pencere Düğmeleri

Cuma, 26 Mar 2010

Ubuntu kullananların bildiği gibi, Ubuntu’nun yeni sürümü olacak olan Lucid Lynx’in ilk betası kısa bir süre önce duyuruldu. İkinci betaya doğru hızla yol alınırken ben de yavaş yavaş Lucid Lynx’e taşınmaya karar verdim ve bu sürümü ilk kez bugün deneme fırsatı buldum.

Lucid’in benim açımdan en önemli özelliği Python 2.6.5′in öntanımlı Python sürümü olarak gelmesi ve depolarda da Python 3.1.2′nin yer alması…

Genel olarak Lucid Lynx’i beğendiğimi söyleyebilirim. Ancak Ubuntu’nun bu sürümünde pek çok kişinin hoşuna gitmeyecek bir yenilik var. Pencereler üzerindeki, normalde sağ tarafta duran büyütme-küçültme-kapatma düğmeleri bu sürümde sol tarafa alınmış… Dediğim gibi, bu değişikliği pek çok kişi yadırgayacaktır. Ama neyse ki pencere düğmelerini eski haline getirmenin yolu var. Eğer pencere düğmelerini, eskiden olduğu gibi sağ tarafa almak isterseniz şu yolu takip edin:

1. ALT+F2 tuşlarına basın.

2. Açılan pencerede “gconf-editor” komutunu verin (tırnaklar yok).

3.  apps > metacity > general yolunu takip edin.

4. Sağ taraftaki menüde “button layout” anahtarını bulun ve buna çift tıklayın.

5. Oradaki değeri “menu:minimize,maximize,close” olarak değiştirin (tırnaklar yok).

6. “Tamam”a basıp pencereyi kapatın.

Eğer çarpı tuşunu küçültme ve büyütme düğmelerinden biraz ayırmak isterseniz yukarıdaki değeri “menu:minimize,maximize,spacer,close” şeklinde yazabilirsiniz. Buradaki “spacer” parametresi kapama düğmesini öteki düğmelerden ayıracaktır.

GNU/Linux , , ,

rstab 0.2

Çarşamba, 17 Mar 2010

Birkaç gün önce duyurduğumuz rstab modülünün 0.2 sürümü bugün çıktı!… Bu sürümde rstab modülü tamamen farklı bir çehreye bürünmenin yanısıra, yepyeni özellikler de kazandı.

rstab’ın en son sürümünü incelemek, indirmek ve nasıl kullanacağınızı öğrenmek için http://www.istihza.com/rstab/rstab_modulu.html adresini ziyaret edebilirsiniz.

Bu modül, özellikle reStructuredText ile çalışanların işini bir hayli kolaylaştıracaktır. rstab modülü yardımıyla numaralandırılmış ve numaralandırılmamış tabloların yanısıra, sabit veya değişken sütun genişliğine sahip tabloları da rahatlıkla oluşturabilirsiniz.

İşinize yaraması ümidiyle…

Python, Yazılım , , , ,

rstab Modülü

Pazar, 14 Mar 2010

reStructuredText belgeleriyle haşır neşir olanların çok iyi bildiği gibi, rST tabloları oluşturmak tam bir eziyettir. Mesela şu tabloya bir bakın:

+----------+----------+----------+----------+
| İSİM     | SOYİSİM  | ADRES    | MESLEK   |
+==========+==========+==========+==========+
| Ferhat   | Gider    | İstanbul | Yazar    |
+----------+----------+----------+----------+
| Ahmet    | Erden    | Ankara   | Çevirmen |
+----------+----------+----------+----------+
| Mehmet   | Artır    | İzmir    | Çizer    |
+----------+----------+----------+----------+
| Kezban   | Güler    | Adana    | Mühendis |
+----------+----------+----------+----------+
| Selin    | Güleç    | Bursa    | Öğretmen |
+----------+----------+----------+----------+
| Selim    | Gelir    | İzmit    | Esnaf    |
+----------+----------+----------+----------+

Gördüğünüz gibi, rST tablosu oluşturmak için kol kuvvetini devreye sokmak gerekiyor. rST tablolarının bu durumu nedeniyle ben rST belgeleri hazırlarken olabildiğince tablo kullanmaktan kaçıyorum. Ama geçen gün, yakında istihza.com’a ekleyeceğim bir makale üzerinde çalışırken tablo oluşturmam gerekti. Ben de bunun üzerine bu sorunu kökünden çözecek bir şeyler yapmaya karar verdim ve “rstab” adını verdiğim bir modül yazdım.

rstab modülünü http://www.istihza.com/rstab/rstab-0.1/anakaynak/rstab-0.1.tar.gz adresinden indirebilirsiniz.

Bu modül, bir liste içine demet halinde girilmiş verilerden rST tabloları oluşturur. Nasıl mı? Mesela yukarıdaki tabloyu rstab modülüyle oluşturmak için şöyle bir betik yazmamız yeterli olacaktır:

from rstab import *
 
kişiler = [("İSİM", "Ferhat", "Ahmet", "Mehmet",
                    "Kezban", "Selin", "Selim"),
 
           ("SOYİSİM", "Gider", "Erden", "Artır",
                       "Güler", "Güleç", "Gelir"),
 
           ("ADRES", "İstanbul", "Ankara", "İzmir",
                     "Adana", "Bursa", "İzmit"),
 
           ("MESLEK", "Yazar", "Çevirmen", "Çizer",
                      "Mühendis", "Öğretmen", "Esnaf")
          ]
 
Tablo(kişiler).tablo_oluştur()

Gördüğünüz gibi, ilk iş olarak rstab modülünü içe aktarıyoruz. Kullanım kolaylığı açısından rstab modülünü from rstab import * şeklinde içe aktarabilirsiniz. Modülü içe aktardıktan sonra, tablo içeriğini oluşturacak verileri hazırlıyoruz. Yaptığımız şey esasında basit bir liste oluşturmaktan ibarettir. Her sütunu ayrı bir demet olarak gösterdiğimize dikkat edin. Mesela kişiler adlı listedeki ilk demetimiz şudur:

("İSİM", "Ferhat", "Ahmet", "Mehmet",
 "Kezban", "Selin", "Selim"),

Bu demetin ilk öğesi (yani “İSİM”), sütunun başlığı olacaktır. Geri kalan öğeler ise sütunun geri kalanını meydana getirecek.

Tablodaki sütun başlıklarını ve sütun içeriklerini yukarıdaki şablona göre oluşturabilirsiniz.

Tablo içindeki verileri hazırladıktan sonra şu satırı yazıyoruz:

Tablo(kişiler).tablo_oluştur()

Burada “rstab“ modülü içindeki “Tablo“ adlı sınıfın “tablo_oluştur()“ adlı fonksiyonunu çağırdık. Ayrıca “Tablo“ sınıfına parametre olarak, yukarıda oluşturduğumuz “kişiler“ adlı tabloyu verdiğimize dikkat edin.

Artık betiğimizi çalıştırabiliriz.

Yalnız unutmamamız gereken şey, rstab modülünün bir Python 3 betiği olduğudur. Dolayısıyla bu modülü çalıştırabilmek için Python’un 3.x sürümlerinden birini kullanmalısınız.

Yukarıdaki betiği deneme.py adlı bir dosyaya kaydettiğinizi varsayarsak, şöyle bir komut işimizi görecektir:

python3 deneme.py
Bu komutu verdiğinizde şöyle bir çıktı alacaksınız:
+----------+----------+----------+----------+
| İSİM     | SOYİSİM  | ADRES    | MESLEK   |
+==========+==========+==========+==========+
| Ferhat   | Gider    | İstanbul | Yazar    |
+----------+----------+----------+----------+
| Ahmet    | Erden    | Ankara   | Çevirmen |
+----------+----------+----------+----------+
| Mehmet   | Artır    | İzmir    | Çizer    |
+----------+----------+----------+----------+
| Kezban   | Güler    | Adana    | Mühendis |
+----------+----------+----------+----------+
| Selin    | Güleç    | Bursa    | Öğretmen |
+----------+----------+----------+----------+
| Selim    | Gelir    | İzmit    | Esnaf    |
+----------+----------+----------+----------+

Artık bu tabloyu kopyalayıp, rst belgelerinizde kullanabilirsiniz. Bu tablo, HTML çıktısında şöyle görünür:

İSİM SOYİSİM ADRES MESLEK
Ferhat Gider İstanbul Yazar
Ahmet Erden Ankara Çevirmen
Mehmet Artır İzmir Çizer
Kezban Güler Adana Mühendis
Selin Güleç Bursa Öğretmen
Selim Gelir İzmit Esnaf

Eğer tablo çıktısını komut satırından kopyalamak yerine bir dosyaya kaydetmek isterseniz şu komutu verebilirsiniz:

python3 deneme.py > tablo.txt

Bu komut, tabloyu tablo.txt adlı bir dosyaya kaydedecektir.

Modülle ilgili sorularınız için kistihza [at] yahoo [nokta] com adresinden bana ulaşabilirsiniz.

Python, Yazılım , , , , ,

Martinamca’dan bir istihza.com Tabelası

Pazar, 14 Mar 2010

Özellikle Inkscape üzerine yaptığı çalışmalarla tanıdığımız Martinamca istihza.com için bir tabela (banner) hazırlamış:


Bu tabelayı sitenize eklemek için şu kodu kullanabilirsiniz:

<a href="http://www.istihza.com" target="_blank"><img title="Python Programlama Dili için Türkçe Kaynak" src="http://img704.imageshack.us/img704/6326/istihzacom.png" border="0" alt="Python Programlama Dili için Türkçe Kaynak" /></a>

Emeği için Martinamca’ya teşekkür ederim.

istihza.com , , , ,

math Modülü

Perşembe, 11 Mar 2010

Bildiğiniz gibi, istihza.com‘da math modülü adlı bir makale yer alıyor. Sitemizin en önemli parçalarından biri olan bu makale Sevgili Dostum Kürşat Örsel tarafından yazıldı. istihza.com’daki çok önemli bir boşluğu dolduran bu makaleyi yazdığı için Kürşat Örsel’e teşekkür ediyorum.

Kürşat Örsel bugün bu makaleyle ilgili güzel bir haber verdi bana. Kendisi makaleyi genişletip buna yeni fonksiyonlar eklemiş. Ben de Kürşat Örsel’in yaptığı bu eklemeleri büyük bir memnuniyetle ilgili bölüme yerleştirdim. Böylece ortaya math modülünü anlatan muazzam bir makale çıkmış oldu.

Kürşat Örsel’e bütün emekleri için teşekkür ederim.

Sevgiler,

Fırat Özgül

istihza.com ,

Bsod arşiv düzenleyici

Perşembe, 11 Mar 2010

istihza.com‘daki Python Programları bölümü, bildiğiniz gibi, sitemizin takipçileri tarafından Python programlama dili ile geliştirilen programları tanıttığımız bir alan. Bugün bu alana yeni bir program daha eklendi.  Ömer Sinan Ağacan tarafından geliştirilen bu programın adı BSOD Arşiv Düzenleyici. İsmini Windows’un meşhur “Blue Screen of Death”inden alan bu program isminin düşündürdüğünün aksine GNU/Linux üzerinde geliştirilmiş… Peki bu program ne işe yarıyor?

“BSOD Arşiv Düzenleyici” birkaç kb büyüklüğünde mp3, ogg ve flac formatlarından oluşan müzik arşivlerini başka bir klasöre artist adı/albüm/şarkı adı şeklinde taşımanızı sağlayan bir program.  Bu program bir konsol uygulaması olduğu için, herhangi bir grafik arayüze sahip değil. Dolayısıyla bu programı komut satırından çalıştıracaksınız.

Her zamanki gibi, bu programı http://istihza.com/programlar/icindekiler_programlar.html adresinden indirebilirsiniz.

Programı yazıp bize gönderdiği için Ömer Sinan Ağacan’a teşekkür ederim.

Python, Yazılım , ,

OpenOffice’te Tablo Oluşturmak (Kolay Yöntem)

Pazartesi, 08 Mar 2010

Bugün OpenOffice ile çalışırken (kendi açımdan) yeni bir şey keşfettim.  Bu keşif benim çok hoşuma gittiği için bunu sizinle de paylaşayım istedim!… :)

OpenOffice’te tablo oluşturmanın klasik yöntemini bilenler bilir. O yüzden bunu bir kenara bırakıyorum. OpenOffice’te tablo oluşturmanın bir de klasik olmayan bir yöntemi var. Bakın nasıl?

Boş bir Writer belgesi açıp içine şunu yazıyoruz:

+---------------+------------------+-------------------+

Son “+” işaretini koyar koymaz ENTER tuşuna basıyoruz ve karşımızda üç sütunlu ve tek satırlı bir tablo!… Çok hoş, değil mi?

Bu arada, tablodaki sütunların genişliğini, “-” işaretlerini azaltarak veya artırarak, her bir sütun için ayrı ayrı belirleyebiliyorsunuz.

GNU/Linux ,

Python Kitabı için bir İnceleme Yazısı

Cuma, 05 Mar 2010

Sevgili Emre Şahin, iki hafta önce Kodlab Yayınları‘ndan çıkardığımız Python Kitabı hakkında kendi günlüğünde çok güzel bir inceleme yazısı yazmış. Bu yazıya şu adresten ulaşabilirsiniz:

http://emresahin.org/herkes-icin-python-kitabi/

İlgisi ve desteği için Emre Şahin’e çok teşekkür ederim.

Sevgiler,

istihza

istihza.com, Python , , ,

OpenOffice’te Kalın ve Altı Çizili Metinler

Pazartesi, 01 Mar 2010

OpenOffice adlı yazılım, bazı aksaklıklarına rağmen, bugün Microsoft’un Office takımına karşı en büyük ve en gelişmiş özgür alternatiftir. OpenOffice bazen beni sinirlendirse de kullanmaktan vazgeçmediğim yazılımların başında geliyor…

Geçen gün OpenOffice Writer’da bir yazı yazarken, bir kelimeyi yatık harflerle göstermem gerekti. reStructuredText’ten kalma el alışkanlığıyla, yatık yazacağım kelimenin soluna ve sağına birer tane “*” işareti koyuverdim dalgınlıkla. Tabii OpenOffice’te kelimeleri yatık yazmanın yöntemi bu değil… Ama ben bu yıldız işaretlerini koyar koymaz OpenOffice o kelimeyi kalın harfli bir kelimeye dönüştürdü birdenbire. Birkaç deneme yaptıktan sonra hayal görmediğimi, OpenOffice’in böyle bir özelliği olduğunu anladım. Yani mesela OpenOffice’te “elma” kelimesini *elma* şeklinde yazarsanız bu kelime kalın harflerle gösteriliyor.

Bunu internette araştırdığımda gördüm ki buna benzer başka şeyler de varmış. Mesela “elma” kelimesinin altını çizmek isterseniz kelimeyi “_elma_”  şeklinde yazmanız yeterli oluyor…

Belki siz, “E, n’olmuş?” diyeceksiniz, ama bana nedense çok ilginç geldi bu özellik. :)

GNU/Linux