23 Aralık 2013 Pazartesi

İnternet Konferansı - 2013

9-11 Aralık'ta  İstanbul Üniversitesi'nde düzenlenen İnternet Konferansı'na katıldım. Hafta içine denk gelmesi ve derslerimin olması nedeniyle sadece son gününe katılabildim. Konferansta 2 panel dinledim. Aynı zamanda sunum yapmak için konuşmacı olarak katıldım. Etkinliğin son günü sanırım yoğun kar yağışı nedeniyle katılım oldukça azdı.

Sunumu Galatasaray Üniversite'sinden Tülin ile birlikte yaptık. Aslında Tülin ile daha önceden hiç görüşmemiştik. Geçen yıl Gnome Opw'ye katıldığından listede e-postalarını görüyordum. Tülin geçen yaz Opw'de Linux çekirdeği projesinde staj yaptı.

Konferansta "Linux Çekirdeğine Nasıl Katkı Verilir?" başlığı altında sunum yaptık. Tülin ile birlikte sunum yapmayı Necdet hoca önermişti, bizde kabul ettik :) Sunuma birlikte hazırlanma fırsatımız olmadı. İnternet üzerinden bir kaç kez görüşüp değineceğimiz yerleri belirledik.

Sunumda anlattıklarımızı bildiri olarak yayınladık. Bildiriye buradan ulaşabilirsiniz. Aynı zamanda diğer sunumların bildirilerine buradan bakabilirsiniz.

LPI 102 Sınavı

Bu yılın başlarında Lpi 101 sınavına girip geçmiştim. Dün Lpi 102 sınavına girdik. Bence sınav hiç kolay değildi :) Aslında kolay olmadığını düşünmemde geçen yıla göre az çalışmış olmamın da etkisi var. Geçen yıl bölümden sınava katılan arkadaşlarımla bir sınıfta toplanıp, konulara hepimiz hazırlanıp sonra her hafta bir kişinin o konuyu bize sunmasıyla ilerlemişti. Necdet hoca konuyu anlattığımız sınıfta olup, onun da ek bir şeyler anlatmasıyla konular ilerliyordu. Lpi 102'de böyle yapamadık malesef. Topluca çalışmadık, bireysel hazırlandık. Biz 102 sınavına girerken, 101'e girmemiş olan arkadaşlardan da 101 sınavına katılanlar oldu. Sınava hazırlanma sürecinde en çok X yapılandırmasından ve yönetimsel görevler konusundan (kullanıcı ekleme, silme, grupları yönetme) çok sıkıldım :) Bu yüzden ilk ağ yapılandırması konusundan çalışmaya başladım.

Geçen yıl örnek soru çözmeye çok vakit bulamamıştım. Aslında örnek soru derken Lpi sınav sorularını,sınava girdikten sonra herhangi bir yerde paylaşmak ve çoğaltmak yasak. Ama Lpi konularını içeren sorular hazırlanmış o soruları çözdüm. Çünkü çok fazla komut oluyor ve parametreleri akılda tutmak örnek soruyla daha rahat olabiliyor. Ya da eğer bir komutun tam ne işe yaradığını anlamadıysak soruda görmemiz yardımcı olabiliyor. Bunun için aşağıda linkini verdiğim sitelere baktım. Aslında bu siteleri Tuğçe önerdi, Tuğçe sınıf arkadaşım. Bir de son gece buraya baktım, buradaki bazı sorular kolay ama bazıları gerçekten zor :) Bir de konu dağılımındaki ağırlıklar nasıl diye merak edenler için burası var.

[1] http://www.penguintutor.com/quiz/
[2] http://www.gocertify.com/quizzes/linux-practice-questions/linux-lpi102-lx0102-quiz.html

Bu yıl sınava daha az hazırlanma fırsatı bulmamla birlikte geçersem Lpi 201'e daha fazla çalışacağımı düşünüyorum.

Aslında sertifika almak her şey değil tabi, neticede insan 3 ay sonra bile sınava çalıştığı zamanki kadar ayrıntılı hatırlayamaz her şeyi. Ancak Linux üzerinde çalışırken nelerin daha fazla yapılabildiğini bilmek (ne gibi araçların olduğunu anımsamak) proje geliştirmeyi kolaylaştırır. Eğer sadece neler yapılabiliyor Linux'ta diye açıp bir kitaba baksam muhtemelen baktıktan sonra hatırlayacaklarım bir sınava hazırlandıktan sonra hatırlayacaklarımdan oldukça az olacak. Linux'a olan bakış açımı geliştirdiğini düşündüğümden Lpi konularına çalışmayı seviyorum.

2 Aralık 2013 Pazartesi

Watchdog İle Bildirim Alma

Bu yıl bitirme projemin bir kısmında watchdog kullandım. Watchdog ile makinemizde meydana gelen çeşitli değişiklikleri izleyebiliriz. Ben sadece dosyalar üzerindeki değişiklikleri izlemek için Pyhon modülünü kullandım.

Benim düşüncem Watchdog'un kullanıma hazır denilebilmesi için eksikleri var. Çünkü dosyalar üzerindeki değişiklikleri izleme işlemini Watchdog'u başka bir yazılım ile bütünleştirerek yapmak çok sağlıklı değil. Örneğin, eğer var olan bir dosyayı değiştiriyorsak o dosya için sırasıyla "Silindi, Oluşturuldu, Değiştirildi" bilgisini döndürüyor  (editörden bağımsız olarak) . Oysa tek döndürmesi gereken bilgi "Değiştirildi" olmalı. Aynı zamanda dosya taşıma işleminde, eğer izlemediğimiz bir yerden dosyayı izlediğimiz alana taşıyorsak "Oluşturuldu" ya da "Taşındı" bilgisini döndüremiyor. 

Burada Watchdog için istenen özellikler, hatalar listelenmiş. Belki dönem içerisinde bende kaynak kodu incelerim. Benim yukarıda bahsettiğim eksikliklerin bir kısmı için Github'a yama gönderilmiş. Ancak ben yamaları koda eklediğimde doğru çalışmadı.

Bu yılki projemde Watchdog'u kullanmam dışında, Necdet hoca "/etc"yi izleyip orada meydana gelen değişiklikleri e-posta gönderen bir betik yazmamı istedi. Bunun için yazdığım kodda oldukça kısa. Buradan ulaşabilirsiniz.