Programlama ile etiketlenmiş yazılar (19) görüntüleniyor..
Subversion, Bazaar ve GIT Üzerine..

rocketraptiye'yi Bazaar üzerinde sunduğumu daha önceki yazılarımdan birinde söylemiştim. Işık Üniversitesi Kulüpler Sunucusu'nda, Parkyeri'nde, Arch Linux Türkiye projelerinde ve kendi yaptığım işlerin bir kısmında Subversion tercih ediliyor. Bunun dışında bir çok sürüm yönetimi sistemi var elbet ve bunlardan en önemlilerini (GIT, Mercurial) araştırdıktan sonra Bazaar kullanmaya karar verdim. Bu yazıda bu konuyla ilgili dikkatimi çeken ve önemli bulduğum şeyleri paylaşmaya çalışacağım. Bir çok insanın sürüm yönetimine kavram olarak yabancı olduklarını düşündüğümden çok kısa bir şekilde onu da açıklamak istiyorum.



Sürüm Yönetimi Sistemleri Nedir?



İngilizce'de Version Control System (VCS) olarak geçen, dilimizde iyi anlatabilmek için yukarıdaki gibi uzun olan sürüm yönetimi, bazı yerlerde revizyon yönetimi gibi de kullanılıyor. Sürüm Yönetimi'ni, yazılımın aşama aşama geliştirildiğini düşünürsek, bu aşamaları ...

Yazının devamını okumak için tıklayın..

mod_python ve sqlite3 ile problem mi yaşıyorsunuz?

raptiye'deki temel hataları bitirdikten ve kodda tatmin edici bir duruma geldikten sonra kodu yayınlamak için çalışmaya başladım. SVN sunucusunu nihai adresi olan https://svn.raptiye.org/ 'a taşıdım. (şimdilik ulaşıma kapalı ve evet; yalnızca HTTPS üzerinden ulaşılabiliyor) Proje yönetimini kolaylaştırmak ve katkıcı kazanma ihtimaline karşılık Trac kurmaya karar verdim.

Bir süre önce raptiye'de sqlite3 ile kullanmayı düşündüğümü yazmıştım ancak tüm denemelerime rağmen boş sayfa görmekten kurtulamamıştım. Trac kurunca da aynı şey olmaya başladı. irc.freenode.net üzerindeki #archlinux, #django, #python, #slicehost ve #trac kanallarında da net bir çözüm bulamayınca umudumu kesmeye başlamıştım. Çözüm olur umuduyla tüm yaptıklarımı video halinde kaydedip insanlara da göstermiştim..

Az önce Trac sitesinde kaçırdığım bir nokta vardır düşüncesiyle gezinirken şöyle bir şeye rastladım ve deneyince gerçekten de sorunumun büyük ihtimalle bundan kaynaklandığını buldum. Olay şu.. Sisteminizde yüklü olan expat sürümü ile, Python içerisinde dahili olarak gelen pyexpat paketinin sürümü birbirini tutmadığında Apache, expat kullanan ...

Yazının devamını okumak için tıklayın..

Serialization/Deserialization @ Python

Şu aralar Raptiye.Org'u baştan yazmaya çalışıyorum. Mayıs 2005'te günlüğü açmışım. Aslında sitenin yayınına başlaması daha da öncelere dayanıyor. Alan adı kayıtlarına göre 16 Şubat 2004 oluyormuş bu tarih.. Günlüğün açıldığı tarihin yıl dönümünde; yani önümüzdeki ay siteyi yeni haliyle açmayı düşünüyordum. Ancak yoğunluk nedeniyle sarkacak sanırım... Yine de sarkmaması için elimden geleni yapmaya çalışacağım. (Bilgisayarım, bilgisayarım, bilgisayarım....)

Sitenin baştan yazılmasıyla ilgili yazdığım bir yazıda Ali Servet DÖNMEZ adlı arkadaşım WordPress'in XML olarak verdiği çıktıyı neden kullanmadığımı sormuştu. Yeni site projesinde veritabanı tabloları farklı olacağından yalnızca istediğim bilgileri almak adına SQL kullanmayı düşünüyordum. XML fikri ilginç gelince WordPress'in neler sağladığına bakmaya başladım. Tüm veriyi tek bir XML olarak veriyordu ki; bu da benim işime pek gelmiyordu. Daha önce Python'la yazdığım bazı XML okuma örneklerinde DOM kullanırken, bu kez serialization/deserialization methodları hali hazırda var mı diye araştırmaya başladım. Üşenip IRC'de (freenode #python) sorunca ElementTree ...

Yazının devamını okumak için tıklayın..

Google Apps Engine

Akşamüstü ofiste can sıkıntısıyla Google Reader'a saldırırken Google Apps Engine'le ilgili bir yazıya rastladım ve sitesini incelemeye başladım. Gece 4'lere kadar oturup raptiye'yi yazdığım şu günlerde, Google'ın Django ile büyük benzerlik gösteren bir geliştirme ortamı yaratması beni epey heyecanlandırdı. (işte tam bu noktada Campfire gibi etkinlikler düzenleyen bir şirketimiz olmadığı için kıskançlık narâları atıyorum ofiste..) Siteyi incelerken bir yandan ürünü ne kadar iyi tanıttıklarını, bir yandan Python'un yaratıcısıyla karşılıklı geyik yapabilecek kadar şanslı olduklarını düşünüp kıskanıyordum. Google'ın böyle bir şey için öncelikli olarak Python'u tercih etmesi boşuna olmasa gerek..

Bu arada adamlar Campfire'ın tamamını Youtube'a 6 parça halinde yüklemişler ve siz ilk bölümü izledikten sonra otomatik olarak bir sonraki bölüme geçiliyor. Hızlı bir bağlantınız olduğunda kesintisiz izleyebilir hale geliyorsunuz. Bu da gerçekten çok heyecan verici..! Düşünsenize.. Dünyanın bir diğer ucunda 3 gün önce (7 Mart 2008) gerçekleştirilen bir etkinlikte dünyanın ...

Yazının devamını okumak için tıklayın..

JMeter

testBizler Türk'üz.. Yaptığımız her şey doğrudur ve doğru sonuçlar verir. Bizi kesseniz acımaz. Türk'e bir şey olmaz. Türk'ün yazdığı kod sonsuza dek çalışır, sonsuza gelince "yerim lan sonsuzu" der yoluna devam eder. Türk'ler aslandır, kaplandır, kartaldır, kanaryadır.. En iyi yemekleri Türk'ler yapar, en iyi futbolu Türk'ler oynar...........................dememek lazım..

Genelde yaptığımız şeylerin doğru olduğunu varsayar ve onları kontrol etmeyi (eşeğimizi sağlam kazığa bağlamayı) pek de umursamayız. Eğer bir yazılımcıysanız, yazdığınız kod doğru çalışıyorsa genellikle sorun yoktur. Peki ya çalışmıyorsa ? Sorun çıkmadan müşteriyi sorun çıkabilme ihtimaline karşı tolere edebilirsiniz. Ancak hatalarda (ve bunun düzeltilme süresinde) ne deseniz boş.. Eğer bu işte iyiysek, yazılım bizim için bir prestij meselesi olmalı.... "Kodumu yazarım, paramı alırım" mantığından kurtulmamız lazım. Özellikle aynı proje üzerinde birden fazla kişi çalışıyorsa test yapmak kaçınılmaz bir durumdur.

Parkyeri'nde aktif olarak geliştirme yaptığımız projeler için test maddelerimiz (bizim deyimimizle test kâselerimiz) var. Test ...

Yazının devamını okumak için tıklayın..