Tekrar merhaba,
Artistanbul’da süre olarak kısa da olsa, dolu dolu geçirdiğim bir aylık stajımdan ve yaptığım, destek olduğum çalışmalardan size bahsetmek istiyorum.
Bir aylık stajım boyunca hazır olan iki ayrı Django projesi üzerinde çalıştım. İlk proje için admin arayüzündeki verilerin istediğimiz Excel dosyası gibi bir standartta dışarı aktarılması (export) için XlsxWriter kullandım.
XlsxWriter, Excel dosyası oluşturmak için kullanılan bir Python modülü. Verileri dışarı aktardıktan sonra Excel üzerinde tekrar uğraşıp istediğimiz standarta getirmektense XlsxWriter kullanmak çok daha kolay. Yazı stili değişikliği, kenarlık değişikliği, renk değişikliği gibi değişiklikleri XlsxWriter kullanarak yapabilirsiniz. Üstelik XlsxWriter merged hücreler, çizelge hazırlama, otomatik filtreleme, veri doğrulama ve bırakma listeleri, büyük dosyalar yazmak için bellek optimizasyon modu ve Pandas ile entegrasyon olanağı sağlıyor.
Diğer Django projesi içinse Redis kullandım. Redis önbellekleme ve mesaj sunucusu için kullanılan açık kaynak (BSD Lisanslı) in-memory anahtar-değer deposudur. Verileri betik (string), hash, liste, küme ve sıralı liste olarak tutar. Python ve daha birçok programlama dili tarafından desteklenmektedir. Veriler bellek (RAM) üzerinde saklanır ve işlenir, bu yüzden epey performanslıdır. Redis belirlenen ayarlamalara göre belli zaman aralıklarında verileri diske yazar ve kalıcı olmasını sağlar. Memcached ile genelde karıştırılır ancak gördüğünüz gibi Redis çok farklıdır:
Redis’in kullanım araçları
Redis’in kullanım amaçlarını şöyle özetleyebiliriz:
- Sayaçlar
- Oturum verileri
- Önbellek sistemi (cache)
- Analiz verileri
- Kuyruk işlemleri
Redis’i proje için tercih etmemizin nedeni işlemci ve disk kullanımını azaltıp, performansı artırması ve veri kaybını önlemesiydi. Redis’in resmi web sitesinden belgelendirmeye ve Twitter örneğine göz atabilirsiniz.
Son olarak şunu söylemeden yazımı bitirmek istemiyorum. Onur‘un “Ecem bugün sana yeni bir şey öğreteceğim” ya da “Bugün yeni bir işin olacak” cümleleriyle heyecanlanıp, her gün hevesle gittiğiniz bir yer Artistanbul. Ege, tmux kullanmanın güzelliğinden bahsederken bir anda masanıza “tmux cheatsheet” kağıdı geliyor ve tmux kullanmaya alışıyorsunuz. Kısacası burada her gün yeni bir şeyler öğrenip, öğrendiklerinizi de uygulamaya döküyorsunuz. Yeni bir şeyler ortaya çıkarmak, yeni bir şeyler öğrenmek ve yaptığınız işten keyif almak, bir staj için az bulunabilecek bir kombinasyon. Bunu sağlayabildiği için Artistanbul ekibine sonsuz teşekkürler…
Onur Güzel
Aramıza katılan stajyerlere gerçek bir proje üzerinde gerçek bir iş yaptırmak, hep dikkat ettiğimiz bir konu. Ecem’e verdiğimiz tüm işler tahmin ettiğimiz sürelerden çok daha kısa zamanda bitti. Görevi verdikten bir süre sonra “Herhalde %40 oranında ilerlemiştir” diye yanına yaklaştığımda “Şu eksiğini de yaptığımda bitmiş olacak” cevabıyla karşılaştım hep. Eğer stajı biraz daha uzasaydı ilk defa bir stajyere gerçek olmayan bir görev vermek zorunda kalacaktım. Daha önce hiçbir stajyerde bu kadar zorlandığımı hatırlamıyorum. 🙂