17 Kasım 2014 Pazartesi

Robin Rawson-Tetley ile Hayvanlar, Barınaklar ve Yazılım Geliştirme Üzerine


For English, click here!

ASM- Animal Shelter Manager, Türkçesi'yle Hayvan Barınak Yönetimi programı, açık kaynak kodlu ve web üzerinden çalışan bir yönetim programı. ASM ile, barınakta bulunan hayvanların yerleşkelerini, giriş-çıkış tarihlerini, tıbbi tedavilerini kayıt altına alabiliyorsunuz; ayrıca geçici yuva , sahiplendirme ve bağış yönetimini de bu programla gerçekleştirebiliyorsunuz. Programda 200'den fazla rapor mevcut.
ASM'in Türkçe arayüzü de mevcut. Hatta Rob'la da ASM'i Türkçe'ye çevirirken tanıştım. ASM, kullandığım en iyi ve çok işlevli açık kaynak kodlu programlardan biri ve barınak yönetimiyle ilgili nadir programlardan. Ben de hem programlama hem de İngiltere'deki hayvanlar, hayvan hakları konusunda kendisiyle röportaj yapmak istedim. Beni kırmadı, kendisine teşekkür ederim.

ASM Barınak Görünümü

Kısaca kendinizden bahseder misiniz?

İngiltere'nin kuzey, sanayi bölgesinde olan Rotherdam'da yaşıyorum. Yazılım geliştirmeye 6 yaşındayken başladım; 16 yaşımdan beri de bu işi profesyonel olarak yapıyorum . ( Şu an 38 yaşındayım). Eşimle; 5 kedi ve 1 köpek ile beraber yaşıyoruz. 20 yıldır, piyano ve gitar çalıyorum, aynı zamanda amatör fotoğrafçıyım.
Robin'in kedisi Romeo. RSPCA 2007 takvim yıldızı

Web sitenizde, bulunduğunuz yerdeki barınakta gönüllü olarak çalıştığınızı okudum. Nasıl gönüllü oldunuz?


ASM, bu şekilde başladı. 1998'de, en yakın arkadaşım bana,yerel barınakta kendisine yardım edip edemeyeceğimi sordu. Ben de gelen-giden hayvanların kaydını yönetmek ve sahiplendirmelerin takibini sağlamak için bir yazılım geliştirdim. Arkadaşıma da barınak sitesini yönetebilmesi ve işletebilmesi için, bazı sistem yönetimi becerilerini öğrettim. Yazılım için barınağa diğer şeylerin yanında bilgisayar donanımı bağışladım.

Web sitenizde, hayvanlar için geçici yuva sağladığınızı okudum. ASM içerisinde de geçici yuva yönetimi özelliği bulunmakta. Programı çevirene kadar bu sistemden haberim yoktu. Ülkenizde, geçici yuva sisteminin nasıl uygulandığını anlatır mısınız?

Oldukça basit - barınakların sınırlı kapasitesi var ya da bazı hayvanların ( özellikle yeni doğmuş kediler ve köpekler), barınakta uygulamayacak, daimi bakıma ihtiyacı oluyor. Bu hayvanlar, geçici yuva olan kişilere veriliyor. Bu kişiler, geçici yuva olmak için gönüllü oluyor ve hayvanlar sahiplendirilecek kadar sağlıklı olana kadar onlara bakıyorlar. Dürüst olmak gerekirse, geçici yuva işleriyle daha çok eşim ilgileniyor; ben de bebek kedilerimiz ve gece beslemelerimiz olduğunda yardım ediyorum.

Hayvan hakları konusunda görüşleriniz nedir?

Ne kadar fazla hak, o kadar iyi! İngiltere, hayvan hakları konusunda dünyadaki en gelişmiş ülkelerden kabul ediliyor; yine de hayvanlara eziyet eden insanlar için çok az ceza var. Bu insanlar, genelde bir kaç bin pound'a kadar ceza ödüyor ve bir daha hayan sahiplenmelerine uygulanabilir olmayan yasak getiriliyor. Hapis cezası almıyorlar- Mikrodalgaya yavru kedi koyanları ve yavru köpekleri boğanları hatırlayalım. ( ve evet, ikisin de olduğunu duydum, çuval içinde donmuş kanala atan yavru köpek yavruları kurtarıldı).

ASM nedir ve kimler içindir? Temel fonksiyonları nelerdir?

ASM'in amacı, hayvanları önemseyen herkese yardım etmektir. Kullanıcıların çoğunu genellikle, hayvan barınakları, kurtarma ve geçici yuva grupları ( kendi barınakları olmayan ama evlerinde hayvanlara geçici yuva sunan kurumlar/topluluklar), hayvan kontrol birimleri ve polis merkezleri oluşturmaktadır.
ASM'in ana işlevi, barınağa gelen ve barınaktan ayrılan hayvanların takibini yapmak, onların diyetlerini ve tıbbi gereksinimlerini yönetmek, şikayetleri, olayları,hayvan kontrol birimleri için hayvan alma işlerini, eşya kiralarını, lisanslamayı,barınak hesaplarını, para toplama kampanyalarını ve bağışları kontrol etmek, sahiplendirme şanslarını arttırmak için ,sahiplendirilecek hayvanların bilgisini webde yayınlamaktır. Bütün bunların hepsini, tek bir pakette yapmaktadır.

ASM- Yönetim Ekranı

ASM'i, 1998'den beri geliştiriyorsunuz. Neden, hayvan barınaklarıyla ilgili açık kaynak kodlu bir program geliştirmek istediniz?

Bu programı, bir arkadaşım için geliştirmeye başladım. 2002 senesinde, internet bir anda çok popüler oldu. ASM'den para kazanmak gibi bir niyetim asla olmadı ve programı internetten bedava olarak sundum. ( Ayrıca, özgür yazılımın da büyük bir destekçisiyim). Programı, bir çok insan kullanmaya başlayınca, programın bakımını yapmak için sorumluluk hissettim ve o andan itibaren program bugünlere geldi.

Çoğu barınağa bir hayvan getirildiğinde, sonradan o hayvanın nerede olduğunu bulmak problem olabiliyor. ASM, bu problemi çözüyor mu?

ASM, hayvanların barınaktaki yerlerini takip eder. Programın "barınak görünümü" ekranı, hayvanların bulunduğu yerleri bloklara ve alt birimlere böler. Böylelikle, iyi bir genel görünüm sunar. Kullanıcılar, hızlıca bir hayvanı seçip, çeşitli kriterlere göre detaylarını ve nerede bulunduğunu görüntüleyebilirler.

Okuduğum istatistikte, hayvan terk eden insanların çoğunun barınaktan hayvan evlat edinenler olduğu belirtilmişti. ASM'de istatistiksel bilgi sunan bir çok rapor var. Bunlardan bahseder misiniz?

Bu biraz zor  ASM'de hali hazırda 200 adet önceden hazırlanmış rapor var ve bu sayı giderek artıyor. Raporlar, barınağa yılda giriş yapan hayvanları ve sahiplendirmeleri, uyutulan hayvanları, hayvanların uyutulma sebeplerini, barınağa geliş sebeplerini vs sunuyorlar. En çok kullanılan hayvan isimleri, hayvanların geldiği bölgeler gibi bir çok istatistik ve grafik üretilebilir.

Türkiye'de hayvana yapılan eziyet suç değil. Kişilere para cezası veriliyor ve kişinin sabıka kaydına yaptığı eziyet işlenmiyor.ASM, hayvanlara şiddet uygulayan, onları taciz eden insanların listesini tutuyor. Programda, bir kişiye ait 3 tane suç kaydı oluşturulduğunu gördüm. Niye suç sayısı 3 ve ne tür cezalar uygulanıyor?

Varsayılan olarak suç sayısı 3 ama kullanıcılar bunu değiştirebilir. Programın bu kısmı, esasen, Amerika'daki şehir hayvan kontrol merkezleri için. Amerika'da, hayvan kontrolünü uygulamak ve suçlular hakkında cezai işlem yapmak şehirlerin sorumluluğunda. Hayvana karşı işlenen suçlar eyalet/şehir bazlı değişiyor ve bahsedilen suçlar, kullanıcılar tarafından kendi ceza kodlarıa uygun hale getirmek üzere güncelleniyor. (ör: 301 Arabada bırakılan hayvan, 401 sahipsiz, başıboş bırakılan hayvan, vs)
Kaynak:ASPCA

ASM'i randevu sistemi olarak kullanabilir miyiz? Ör: "Bir köpeğim var ve kısırlaştırma operasyonu için bu uygulamayı kullanarak randevu almak istiyorum." Bu yapılabilir mi?

Evet. ASM'de günlük işlerin yönetimi için bir özellik var. Ayrıca, gelecek sürüm için klinik arayüzü geliştirmeyi planlıyoruz.

ASM'i geliştirirken kullandığınız teknolojileri anlatır mısınız?

ASM, bir kaç dönemden geçti. 1998'de MySQL üzerinde Visual Basic 6 prototipi olarak başladı. 2000'de MySQL üzerinde JAVA/Swing uygulaması olarak yeniden yazıldı. 2007'de, network üzerinde ASM kurmakta zorlanan insanlar için, sheltermanager.com'u yazmaya başladım. PostgreSQL ve aplet üzerinde JAVA/Swing kullanıcı arayüzünü geliştirdim.

2011'de ASM'i, HTML 5 uyumlu bir web uygulaması haline getirmek için yeniden yazmaya başladım. Mobil donanımlarla ilgili gelişmeleri görüyordum ve JAVA/Swing arayüzü gelecekte kullaınşsız olacaktı. ASM3'ü Python üzerinde geliştirdim; mobil arayüz için JQuery kullandım. PostgreSQL'in sürümü yükseldi ama mevcuttaki en iyi açık kaynak ilişkisel veritabanı olarak kaldı. ( ama kurulumu zor, bu nedenle açık kaynak sürümdeki varsayılan veritabanı MySQL)

Yeni HTML 5 arayüzü 2012'de uygulamaya alındı. O zaman itibariyle, maaşımı karşılamaya yetecek kadar sheltermanager.com abonemiz olmuştu. Limited şirketi kurduk ve ben de tam zamanlı işimden, tamamen ASM üzerinde çalışmak üzere ayrıldım.

Programın lisanslama koşulları nedir?

ASM her zaman GPL ile lisanslandı. Önce versiyon 2 sonrasında 3 ile. İyi bir özgür yazılım savunucusuyum ve 2000'den beri kendi makinalarımda  daima özgür yazılım kullanıyorum.

Web sayfanızda, Eric Raymond'ın "Cathedral ve Bazaar" isimli kitabını tavsiye etmişsiniz. Bunu görünce, Richard Stallman'ın ODTÜ'ye geldiğini hatırladım. Kim bu kişiler? Sizi nasıl etkilediler?

Richard Stallman

Benden daha iyi ifade edecekleri için, en iyisi, özgür yazılım üzerine olan sözlerini kendilerinden okumanız. 
ASM için özgür yazılımı tercih etmemin, iyi bir nedeni var - çok daha iyi bir model ! Parayı, müşterilerimize sunduğumuz hizmetlerden sağlıyoruz- destek, yedekleme planları, uygunluk vs.
Yazılımı ücretsiz sağlamak,  bir nevi reklam - yazılımı kendileri kurduktan sonra güncellemeler ve diğer şeyler için bize başvuran bir çok müşterimiz var ve bulut versiyonuna geçiyorlar. Ya da biri kendi barınağına programı kuruyor; fakat sonra ayrılıyor ya da programın bakımı için vakitleri olmuyor. Bu şekilde de bize gelen müşterilerimiz var.
Ücretsiz yazılım aynı zamanda geleceğe yatırımın bir şekli. Kullanıcılar, kendilerini baskı altında hissetmiyorlar çünkü verilerini istedikleri zaman (bize sormadan) sunucularımızdan alabilirler ve kendi makinalarına kurabilirler.Bize bir şey olsa bile, verilerini alabilir ve kullanabilirler, ASM üzerinde başka bir yazılım geliştirebilirler. Bu iyi bir satış yöntemi ve bence, bugünlerde insanlar gelecek hakkında daha dikkatliler.

Linus Torvalds'a göre "yeterince göz varsa, tüm hatalar sığdır". Yazılım geliştirme yaşam döngünüz hakkında ne söyleyebilirsiniz? Koda ekleme yapan bir ekibiniz var mı?

Dünyanın çeşitli yerlerinde bu işle ilgilenen ve fonksiyonalitenin ya da çevirilerin geliştirilmesi için katkıda bulunan bir ka kişi var (senin gibi!). Geliştirmenin çoğunu ben yapıyorum ve şu aralar yeni bir çalışanımızı eğitmekle meşgulüm.

Kullandığınız yazılım geliştirme ortamından bahseder misiniz?

https://launchpad.net/ kullanıyoruz. Sıklıkla, yazılım geliştirme ortamını kendimizin tutacağı bir yere taşımayı düşünüyorum.Ama, launchped işini yapıyor ve ihtiyacımız olan özelliklere sahip, şu anda vaktimizi ASM'i geliştirmek için harcamak daha iyi bir seçenek.

Anasayfanızda, kullanıcıların ASM ile ilgili isteklerini size ilettiklerini ve programın bu şekilde geliştiğini belirtmişsiniz. Kullanıcılar, size nasıl ulaşabilir? E-posta vs.

Evet, kullanıcılar Launchpad veya e-posta ile bize ulaşabilirler.

Hayvanlar için geliştirdiğiniz başka programlar var mı? Onlar da açık kaynak kodlu mu?

Yıllar önce geliştirdiğim bir sahiplendirme sitesi vardı. Maalesef, zamanının ilerisindeydi ve gereken ilgiyi görmedi.Açık kaynaktı. Her yaptığım, açık kaynaktır. Kaynağına ulaşamadığım hiç bir şeyi kullanmak istemem ve başkasının da kullanmasını istemem.
Aynı arkadaşım için klinik/veterinerlik paketi geliştirdim. Oradaki bazı şeyler, ASM ilaç/envanter modülünde kullanıldı.( ve ileride klinik arayüzünde kullanılacak). O paketin adı, "Evette".

Kod kalitesini nasıl sağlıyorsunuz?

Her yamayı içime sinene kadar yeniden yazıyorum ve kodlama standartlarımız sağlanıyor ! Çok fazla yama olsaydı, bu yöntem işe yaramazdı; ama şimdilik çalışıyor.

Hatayla karşılaştığımızda, size nasıl haber vereceğiz?

Launchpad ya da e-posta ile bize ulaşabilirsiniz.

ASM'in kullanmak için iki seçeneği mevcut: sizin çalıştırdığınız (hosted) ya da kurulan (installed). Linux dünyasından habersiz ve Windows insanı olan biri olduğumu varsayalım. ASM'i nasıl kurabilirim?

Windows'u desteklemiyoruz, bu sorunun kolay kısmı! Eğer Debian tabanlı bir Linux dağıtımınız varsa, deb dosyasını indirin ve kurun. İçinde MySQL ve gereken diğer şeyler var. İhtiyacınız olan tek şey, MySQL'de bir veritabanı yaratmak; sonrasında sitedef.py dosyasını güncelleyip, içine veritabanı bilgisini eklemek. Yapmanız gerekenleri anlatan "README" dosyasını bulacaksınız. Diğer unixler, sizden python ortamını kurmanızı isterler. (pip kurulumunda sonra yapmanız gerekenler README dosyasında var).
Eğer eski ASM2 Java/Masaüstü yazılımını ( Windows ve Mac sürümleri mevcut) kullanmak isterseniz, kurulum programı mevcut. ASM2, HSQLDB kullanmakta ve her şey JAVA'da. ASM2, ASM3'teki tüm özelliklere sahip değil, ve ASM3 gibi  masa üstü uygulaması olduğundan tabletlerle ve akıllı telefonlarla çalışmaz.

ASM'in sayfasında, geliştirme için yıllar boyunca süren bir yol haritanız olduğunu söylemişsiniz. Yol haritasına nasıl katkıda bulunabiliriz?

Evet, hepsi Launchpadde tutulmakta. Dönüm noktası, sheltermanager-backlog. Genellikle, iki sonraski sürüm dönüm noktalarını da orada takip ediyoruz. Sürümler hazır olduğunda kullanıma da hazırlar, ama yılda 3-4 sürüm çıkarmaya çalışıyoruz.

Sıkça, Avrupa'da sokak hayvanı olmadığını duyuyoruz. Bunun yanında Bob ve hikayelerini biliyoruz. Gerçekten sokakta hayvan yok mu? Sokak hayvanları öldürülüyor mu?

Diğer Avrupa ülkelerini bilemiyorum ama İngiltere'de bol miktarda sokak hayvanı var.Dünyanın her yerinde kötü hayvan sahipleri var. Fakat kesinlikle sokak hayvanları öldürülmüyorlar. İngiltere'de sokak hayvanları RSPCA tarafından toplanıyorlar ve tıbbi yardım görüyorlar ve yeniden yuva sahibi yapılıyorlar. ( ya da çok hastalarsa ya da agresiflerse ötenazi ile öldürülüyorlar; maalesef bu oluyor). Bir kere evde bakılıp sokağa atılmış kediler için bir çok barınağın yakala, kısırlaştır ve olduğu yere bırak uygulaması var. Sanırım,bu Amerika'da da çokça yapılan bir uygulama.

Okuyuculara iletmek istediğiniz bir mesajınız var mı?

Kesinlikle ! Lütfen, pet shoplardan hayvan almayın. Barınaklarda sizleri bekleyen muhteşem, istenmeyen ve masum, umutsuzca yuva bekleyen hayvan var. Çoğunun zamanı kısıtlı.


Hiç yorum yok:

Yorum Gönder