Tez yazma sürecinde birçok resim bulmam gerekti. Bunların bazılarını makale ve kitaplardan bulduysam da bazılarını internet sitelerinden almak zorunda kaldım. Makale ve kitaplara referans verirken hazır bibtex formatlarını kullanıyorum ancak sitelerden aldığım resimler için bibtex kodunu kendim yazmam gerekiyordu. Ben de bir kod yazdım ve bu işi otomatik hale getirdim. Programa resim URL’ini veriyoruz, o resmi indiriyor, gerekli bilgileri sorup bibtex kaydını bib dosyasının sonuna ekliyor, Latex figürünü de ekrana basıyor. Bize de latex koduna yapıştırması kalıyor. Oldukça kullanışlı oldu. Vakit darlığından dolayı kod karışık oldu biraz ama işi görüyor şu haliyle.
emre@physics Thesis $ python pull.py
Enter the URL: http://biotech.matcmadison.edu/resources/proteins/labManual/images/220_04_113.png
Enter the key (default: 220_04_113): protein_structure
Directory (default: introduction):
Downloading http://biotech.matcmadison.edu/resources/proteins/labManual/images/220_04_113.png
Figure label (default: protein_structure-figure):
Description:Primary protein structure is sequence of a chain of amino acids.@MISC{protein_structure,
howpublished = {\url{http://biotech.matcmadison.edu/resources/proteins/labManual/images/220_04_113.png}}
}\begin{figure}
\includegraphics[scale=0.5]{images/introduction/220_04_113.png}
\centering\caption{Primary protein structure is sequence of a chain of amino acids. \cite{protein_structure}}
\label{Flo:protein_structure-figure}
\end{figure}
When you have lots of always changing python files in a directory or these modules are imported by other modules, you encounter seeing lots of pyc and py~ files together with those files. This is irritating, at least for me. For that reason, I wish if I could remove these residue files with a right click in that directory. I came up with a solution:
I wrote a bash script at the location /usr/bin/cleanpydir
#!/bin/sh rm $1/*.pyc $1/*.py~
Then I gave executable rights for it and installed kservicemenueditor for Pardus 2011 (KDE):
sudo chmod +x /usr/bin/cleanpydir sudo pisi bi http://svn.pardus.org.tr/pardus/playground/maidis/2011/desktop/kde/addon/kservicemenueditor/pspec.xml sudo pisi it kservicemenueditor*
I run the KServiceMenuEditor program and inserted a new event called Cleanpy and addressed the executable as “cleanpydir %u”. For the conditions part, I chose inode/directory and saved my preferences.
Now, I right click on a directory and from the Actions menu, I click on “Cleanpy” which results it cleaning all the pyc and py~ files for that particular directory. There should be lots of different alternatives for this but this is -good or not- a solution. It could’ve been better if I did this by right clicking on an empty space. But there’s no service menu provided on the empty space of a directory. So I have to settle for this.
Dönemin bitmesiyle Pardus 2011′i kurmanın vakti gelmişti. Ancak yedeğini almam gereken birçok fotoğraf vardı. Bu fotoğraflar ise makinemin 10MP çekmesi sebebiyle bir hayli büyüktü. Uzun zamandır düşünmekteydim. Estetik değeri olmayan, yahut içinden kırparak avatar çıkaramayacağım fotoğrafların bu kadar büyük olmasına gerek yoktu. Her seferinde makineden boyut ayarı yapamayacağıma göre hepsini büyük çekip gerektiğinde küçültmeliydim. Ancak bu işi tek tek GIMP ile yapmak kolay olmuyordu. Ben de aylar önce yazmaya başladığım Teleskop adlı programı çalışır hale getirdim. Adı abes gelmiş olabilir, neden böyle bir isim verdim ben de hatırlamıyorum. Yaptığı şey şu: belirlenen bir klasördeki fotoğrafları tek tek gezerek bu fotoğraflardan sadece seçtiklerinizi 1024×768 veya 800×600 boyutuna küçültmekte ya da silmekte. Del, Alt+Z ve Alt+X şeklinde kısayol tanımladım. Küçültme işlemini ImageMagick’e arkaplanda söyleyip hemen sonraki fotoğrafa geçiyor. Böylelikle bekletme yapmamış oluyor. Kendi yazdığım bu program sayesinde diskimde 5-6 GB yer açtım, hoş bir duygu. Yazının devamında bir ekran görüntüsünü bulabilirsiniz.
Programı Python ve Qt4 ile geliştirdim. Resim küçültme işlemi için öncelikle Python Imaging Library kullansam da ImageMagick’in daha başarılı olduğunu görünce işi ImageMagick’e devrettim. Resim hakkında boyut bilgisini ise hala PIL ile temin etmekteyim. Belki daha iyi kütüphane alternatifleri vardır ama vakit kısıtından dolayı uğraşmadım. Hatta belki bu program muadili bir program olabilir ancak denk gelmedim. Program henüz bitmedi ancak iş görür halde. Belki ileriki zamanlarda belirtilen silme, küçültme işlemlerini bir yerde saklayıp en son gözden geçirip işlemleri başlatma gibi bir yöntem izlenebilir. Çünkü bahsettiğim küçültme işlemleri aynı dosya üzerine yapılıyor ve geri dönüşü yok. Ayrıca resim boyutları çok orantısız olursa pencere büyüklüğü bozulabiliyor. Bunlar da zamanla düzelir, düzeltmek isteyen olursa katkılarını beklerim.
Gereklilikler: Python 2.6+, PyQt4, ImageMagick (mogrify komutu), PIL kütüphanesi
Olay
Bugün sahibine güvendiğim ve saygı duyduğum, sağlık ürünleri satan bir siteden sipariş verdim. Saygımdan dolayı da sitenin adını vermiyorum. Kredi kartı bilgilerimi yazdım ve Onayla tuşuna bastım. Veriler gönderilirken fark ettim ki adres çubuğunda HTTPS yerine HTTP yazıyor ve pencerenin altında kilit işareti yok. Hemen dur tuşuna bastıysam da sipariş alınmıştı. Hemen siteye bir e-posta yazarak sistemlerinde SSL olmadığını, bu işlerin doğrudan müşteriyle banka arasında şifreli bir iletim olan SSL üzerinden yapıldığını, SSL olmadığı zaman ise kart bilgilerimin ağdaki insanlar tarafından okunabileceğini ve bu yüzden kartımı iptal etmek zorunda kalacağımı belirttim. Telefonla geri dönüş yaptılar, “hayır SSL var ve kart bilgilerinizi saklamıyoruz” dediler. Şaşırdım, HTTPS’i göremediğimi söylesem de “hayır var” dediler. Dedim 2 kere baktım ama belki yanılmışımdır. Telefonu kapattıktan sonra tekrar baktım, HTTPS yoktu! Ekran görüntüsü gönderdim, “gördüğünüz üzere SSL yok ancak adresi elimle HTTP’den HTTPS’e çevirirsem SSL üzerinden iletim sağlayabiliyorum. Bir arıza olabilir, teknik ekibinize iletmeyi düşünebilirsiniz.” dedim. Gelen cevap:
“SSL siparişinizi tamamladığınız anda kredi kart bilgilerinizi gireceğiniz ekranda çıkar. Arzu ederseniz https://www.abcdefg.com adresine de girebilirsiniz. Sitemize yönlendirileceksiniz.”
Yani görünüşe göre her alışverişte insanların http’nin yanına bir s koyarak girmeleri gerekiyor siteye. Web programcıları bu soruna “kart bilgilerinin girileceği sayfaya gelindiği zaman https’e yönlendir” diyerek bir çözüm bulabilirler ancak onlara ulaşabilmek için müşteri hizmetlerini geçebilmek gerekiyor ki geçemedim. Kredi kartımı da iptal ettirip yenisini istemeyi de ihmal etmedim.
SSL (Secure Socket Layer)
SSL, iki bilgisayar arasında şifreli veri aktarımına imkan tanıyan bir protokoldür. SSL destekli sayfaların adresleri https ile başlar ve pencerenin altında bir kilit işareti görünür. Eğer SSL desteğinin süresi dolmuşsa bir uyarı mesajı verilir. SSL site sahiplerine bir maliyet getirir, bu sebeple alışveriş siteleri ve e-posta hizmetleri (örn: gmail) dışında çokça kullanılmaz. Bu demektir ki SSL’i olmayan bir siteye erişmek istediğinizde gönderdiğiniz verileri ağınızdaki başka insanlar okuyabilir. Sadece web siteleriyle kısıtlı değil, sohbet programlarınızı kullanarak gerçekleştirdiğiniz yazışmalar da öyle.
Güvenliğiniz için alışveriş yapacağınız sitelerin SSL desteğinin olduğuna emin olun. Bunu kredi kartı bilgilerinizi girdiğiniz sayfada denetlemelisiniz. Bir formdaki bilgilerin şifreli bir şekilde aktarılması için o formun bulunduğu sayfanın adresinin https olması gerekmektedir. Gönderimin öncesi de sonrası da şifreli olmalıdır (en sonda ek bir yönlendirme yapılmadıysa):
Güvensiz: http – GÖNDERİM – https
Güvenli: https – GÖNDERİM – https
Internet Kafeler & Kablosuz Ağlar
Internet Kafelerde / şifresi olmayan kablosuz ağlarda gezinirken SSL’siz trafiğinizin başkaları (internet kafe sahibi / ortamda bulunan herhangi birisi) tarafından okunabileceğini unutmayın. Bu sebeple eğer bu tür ağlarda trafiğinizin izlenmesini istemiyorsanız güvenli Internet erişimi olduğundan emin olduğunuz bir başka bilgisayara/sunucuya SSH tünel üzerinden ulaşabilirsiniz. Sistem şu şekilde işliyor.
BİLGİSAYARINIZ – şifreli bağlantı – GÜVENLİ SUNUCU – şifresiz bağlantı – INTERNET
Araya bir aracı girdiği için trafiğiniz biraz yavaşlayacaktır ama güvensiz bir ortamda trafiğinizi izlemek isteyen kişi bilgilerinizi değil, şifrelenmiş anlamsız bilgiler görecektir. Eğer SSL desteği olan bir siteye bağlanıyorsanız SSH tünellemeye gerek yok tabii ki.
Konunun uzmanı olmasam da aklımda kalan bilgileri paylaşmaya çalıştım. Hatam varsa lütfen düzeltin.
![]()
Geçen hafta verdiğim “Linux/Pardus Nedir?” seminerine ilgi bir hayli yoğundu. Yaklaşık 100 kişilik bir katılım oldu, tahmini 20-40 kişi de salon dolu olduğu için seminere katılamadı. Ben 5-10 kişi gelir diye beklerken böyle bir ilgi bir hayli şaşırttı açıkçası. Dinleyici sayısı rekorumu kırmış oldum
Herkes okulda daha önce hiçbir seminerde bu kadar kalabalığın toplanmadığından bahsediyor. Bu durumda seminerin sertifikalı olarak ilan edilmesi, güzel noktalara hoş afişlerin konulması, konuşmacı olarak “Pardus Geliştiricisi” yazılması, çift duyuru e-postası gönderilmesi, sosyal ağlardan duyuru yapılması etkili oldu sanırım. Duyuru çalışmaları son günlere kalsa da yoğun bir çabayla iyi iş çıkarttılar. Semineri organize eden Kadir Has IEEE öğrenci koluna teşekkürlerimi iletirim.
Seminerde geçen senelerde kullandığım sunum dosyasını geliştirerek kullandım. Biraz 3B gösterisi, KNazar ile nazar değdirmece ve Python ile yazılmış aşk şiiri insanları en çok etkileyen öğelerdi. Evet, Python’u da kısaca tanıttım seminerin sonunda. Seyirci beklediğimden pasif olsa da pür dikkat dinlediler, son 5 dakikaya kadar dağılma pek olmadı. Biraz hızlı davranıp 95 sayfalık sunumu 1 saate sığdırdım. Umarım lagalagalup’umdan anlamıştır herkes
Gelecek hafta gibi de Temel Python Eğitimi vermeyi planlıyorum ancak henüz mekan saat tespiti yapılamadı, yapılınca tekrar duyururum.