30 Eylül 2013 Pazartesi

Personal Knowledge Base

Kişisel Bilgi Tabanı

Kişisel bilgi tabanı oldukça yeni bir kavram. İlk kez 2011 yılında Stephen Davies tarafından "Still Building Memex" adlı makalesinde tanıtıldı (1).

"We define a Personal Knowledge Base—or PKB—as an  electronic tool through which an individual can express, capture, and later retrieve the personal knowledge he or she has acquired. Our definition has three components: 
Personal: Like Bush’s memex, a PKB is intended for private use, and its contents are custom tailored to the individual. It contains trends, relationships, categories, and personal observations that its owner sees but which no one else may agree with. Many of the issues involved in PKB design are also relevant in collaborative settings, as when a homogeneous group of people is jointly building a shared knowledge base. In this case, the knowledge base could simply reflect the consensus view of all contributors; or, perhaps better, it could simultaneously store and present alternate views of its contents, so as to honor several participants who may organize it or view it differently. This can introduce another level of complexity. 
Knowledge: A PKB primarily contains knowledge, not information. That is, its purpose is not simply to aggregate all the information sources one has seen, but to preserve the select knowledge that one has learned from those sources. Psychologically, knowledge is the formation of a mental model in one’s own mind that corresponds to the information encountered.
Base: A PKB preserves knowledge for the long haul. It is ideally futureproof: immune to shifts in technology and to disaster. It can be fluidly searched and browsed. It also forms a consolidated, integrated whole, without partitions that might isolate some areas of knowledge from others. This is because it is a reflection of one’s own memory, which, as Bush and many others have observed, can freely associate any two thoughts together, without restriction." (Davies, 2011:81-82)

Son dönemdeki çalışmalarımda (2), (3) yaşam günlüğü cihazları ile kaydedilen günlük bilgisinin yorumlanması, betimlenmesi ve ardından kişisel bilgi yönetimi listeleri halinde özetlenmesi sonucunda elde edilen veritabanının Davies'in kişisel bilgi tabanı kavramıyla daha anlaşılır ve geliştirilebilir olduğunu düşünüyorum. Önümüzdeki günlerde Kişisel Bilgi Tabanlarıyla ile ilgili ayrıntılı bir yayın yapmayı planlıyorum. 


(1) Davies, S. "Still Building the Memex." Communications of the ACM, vol. 53, issue 2, pp.80-88, Feb. 2011.
(2) Mutlu, M.E. (2013a), "Öğrenmenin Üç Boyutu ve Öğrenme Deneyimlerinin Oluşması", 22. Ulusal Eğitim Bilimleri Kurultayı EBK2013,  5-7 Eylül 2013, Eskişehir.  http://kisiselogrenmeortamlari.blogspot.com/2013/09/three-dimensions-of-learning-and.html
(3) Mutlu, M.E. (2013b), "Genişletilmiş İnformel Öğrenme Modeli ve Öğrenme Deneyimlerinin Yönetimi için Bir Yöntem", 22. Ulusal Eğitim Bilimleri Kurultayı EBK2013,  5-7 Eylül 2013, Eskişehir.  http://kisiselogrenmeortamlari.blogspot.com/2013/09/expanded-informal-learning-model-and.html




28 Ağustos 2013 Çarşamba

Life Events

Yaşam Olayları

Kişisel bilgi yönetimi çalışmalarında kişiler kendilerine ait bilgi envanterini Olaylar, Kişiler, Yerler, Davranışlar, Duygular, Özellikler ve Varlıklar şeklinde yedi temel kategoride toplayabilmektedirler. Daha önceki çalışmalarımda bu yapılara yer vermiştim (1). Bu kategorilerden "Olaylar" kategorisi üzerinde değişik amaçlarla gerçekleştirilmiş çok sayıda çalışma bulunmaktadır. Bireylerin yaşamları boyunca başlarına gelebilecek başlıca olaylara ait hazır listeler batı ülkelerinde "psikoloji", "e-Devlet hizmetleri", "insan kaynakları yönetimi" ve "vergi mevzuatı" alanlarında yaygın olarak kullanılmaktadır. Bu yayında "Yaşam Olayları" listelerine ait bu türden örnekleri ele alacağım.

Psikolojide Kullanılan Stress Ölçekleri

1967'de psikiyatrist Thomas Holmes ve Richard Rahe stresin hastalıklar üzerindeki etkisini belirlemek amacıyla bir araştırma yapmışlar ve 5000'den fazla hasta ile görüşerek son iki yıl içerisinde yaşadıkları önemli olayları belirlemeye çalışmışlardır. Bu araştırma sonucunda 43 yaşam olayının hastalıklar üzerinde belirli oranlarda etkisi olduğu ortaya çıkmıştır (2). Bu çalışmadan sonra başka yaşam olaylarının etkilerini inceleyen çok sayıda çalışma yapılmıştır. Psikolojide kulanılan bu ölçeklerin genel bir değerlendirmesi 1982'de Mark Tausig tarafından yapılmış ve 118 farklı yaşam olayı ele alınmıştır (3). 

 e-Devlet Portalları

Avustralya e-Devlet portalı vatandaşları için "Life Events" isimli bir sayfa sunmakta ve bu sayfada doğumdan ölüme olası bütün yaşam olaylarına yer vererek vatandaşların bu olaylarla ilgili olarak e-Devlet sitesinde yapabilecekleri eylemlere yol göstermektedir (4). Benzer bir hizmeti de Canada'nın Nova Scotia eyaleti de vermektedir (5).

Vergi ve Finans Uygulamaları

Bireylerin yaşamlarındaki temel olaylar ödeyecekleri vergileri ya da alacakları vergi iadelerini etkilediği için "yaşam olayları" vergi mevzuatına da girmiştir. Örneğin bir vergi hesaplama yazılımı olan Intuit Turbo Tax yaşam olaylarını girerek ödenecek vergiyi belirleyecek etkileşimli bir araç sunmaktadır (6). Bir Kanada kredi kurumu müşterilerine "Life Events Planner" adı altında çevrimiçi bir finansal planlama arcı sunmaktadır (7). Bir Yeni Zelanda firması da başlıca yaşam olayları karşısında gereksinimi duyulacak finansal ipuçlarını sağlayan bir rehber yayınlamaktadır (8).

İnsan Kaynakları Yönetimi

ABD'de kurum ve kuruluşlarda çalışanlara ya da vatandaşlara ait bazı yaşam olayları ücretlerde değişiklik yarattığı ya da başka desteklere olanak sağladığı için "nitelikli yaşam olayları - qualified life events" olarak tanımlanmakta ve bu yaşam olayları insan kaynakları departmanları ya da sosyal hizmet uzmanları tarafından izlenmektedir. Yale Üniversitesi ile Ohio State Üniversitesinin insan kaynaklarıyla ilgili sitesindeki nitelikli yaşam olaylarına yönelik açıklamalar buna örnek verilebilir  (9, 10). Yazılım firmaları belediyeler ve sosyal hizmet kurumları için bu alanda kullanılan hazır yazılımlar sunmaktadır (örneğin IBM -Cúram Life Event Management) (11).

Yaşam Olaylarıyla Karşılaşma

Bireyler kendileri için önemli yaşam olaylarını bazen yaşamayıp sadece şahit olmuş ya da duymuş olabilirler. Yine de bu olaylar kendileri için unutulmaz olaylar arasında değerlendirilebilirler. Bazı kamu kurumları yaşam olaylarının bu türden farklı biçimlerde maruz kalınmasını değerlendirmeye alırlar. Örneğin ABD Savaş Gazileri Departmanı gazilerin savaş ortamında karşılaştıkları önemli yaşam olaylarıyla ilgili olarak "Happened to me", "Witnessed it", "Learned about it", "Not Sure", "Doesn’t apply" gibi durum seçeneklerinden birisini işaretlemesini istemektedir (12).

Sonuç

Yaşanan, şahit olunan ya da hakkında bilgi sahibi olunan yaşam olayları özellikle yaşam günlüğü uygulamalarında bireylerin zaman çizgisinde önemli kilometre taşları olarak kullanılabilir.  Bu amaçla yaygın olarak kabul gören yaşam olayları envanteri kullanmak kolaylık sağlayacaktır.

Kaynaklar
(1) http://kisiselogrenmeortamlari.blogspot.com/2012/08/life-experiences-recorder.html
(2) http://en.wikipedia.org/wiki/SRRS
(3) Mark Tausig, Measuring Life Events, Journal of Health and Social Behavior , Vol. 23, No. 1 (Mar., 1982), pp. 52-64
(4) http://australia.gov.au/life-events
(5) http://www.gov.ns.ca/snsmr/life-events/

31 Temmuz 2013 Çarşamba

Lifelogging Literature

Yaşamgünlüğü Literatürü


Geçen yıl Mendeley'de yaşam günlüğü alanında 70-80 civarında yayından oluşan bir liste oluşturmuştum. Aynı zamanda https://meminmutlu.wordpress.com/personalis/lifelog/ sitesinde bir wiki sayfası açmıştım. Bu hafta Lifelogging konusundaki kaynakçamı güncellemeye başladım. İlk aşamada Mendeley'de "Lifelog" anahtar kelimesi içeren 120 yayını bir araya getirdim. Önümüzdeki günlerde bu listeyi eksiksiz hale getireceğimi umuyorum. Bu amaçla tarih sırasına göre en eski yayınlardan başlayarak çapraz kaynakça taramasına başlayacağım. Ardından bu alandaki bloglar, projeler, konferans ve çalıştayları eksiksiz olarak listelemeye çalışacağım. 

80'ler ve 90'larda de Steve Mann'in gerçekleştirdiği giyilebilir bilgisayar denemeleri ile 2000'lerdeki Gordon Bell'in MyLifeBits projesi günümüzdeki yaşam günlüğü çalışmalarının temeli sayılmaktadır. Bu arada Vannevar Bush'un 1945'deki "As we may think" isimli makalesi ile Ivan Sutherland'ın 1968'de yayınlanan "A head-mounted three dimensional display" isimli bildirisi yaşam günlüğünün kavramsal temellerini ilk kez ortaya koyan şaşırtıcı çalışmalardır. Diğer taraftan Edward O. Thorp ile Claude Shannon tarafından kumar tahminleri için geliştirilen ve ayakkabı içerisine saklanan ve 1961'de Las Vegas'da denenen aygıtın ilk giyilebilir bilgisayar olduğu düşünülmektedir.

2000 yılı öncesine ait saptayabildiğim tarihi yaşam günlüğü çalışmaları bunlar. Belirlediğim yayınları yıl yıl bir wiki sayfasında yayınlamaya çalışacağım.


V. Bush (1945). As We May Think, The Atlantic Monthly, 176(1), pp. 101-108, 1945; http://www.theatlantic.com/magazine/archive/1945/07/as-we-may-think/303881/

Sutherland, I. E. (1968). A head-mounted three dimensional display. In Proceedings of fall joint computer conference, part I (pp. 757-764). ACM, Washington, DC, 1968. Thompson Books

Thorp, E. O. (1998). The invention of the first wearable computer. In . Digest of Papers. Second International Symposium on Wearable Computers, 1998 (pp. 4-8). IEEE.



30 Haziran 2013 Pazar

Windows Phone "Tracker" Apps

Windows Phone “Tracker” Uygulamaları

Windows Phone 8 için geliştirmekte olduğum LifeLoggingCCPhone uygulamasını Windows Phone Store’a yüklemeden önce şu anda benzer ne gibi uygulamaların bulunduğunu görmek amacıyla
www.windowsphone.com sitesindeki uygulamaları taradım.


Windows Phone 8 ortamı için geliştirilmiş olan ve "Lifelogging" anahtar kelimesi içeren her hangi bir uygulama bulamadım. Buna en yakın terim olan "Tracker" ile tarama yaptığımda ise çok sayıda uygulamayla karşılaştım. 24 Haziran 2013 tarihindeki taramada toplam 699 uygulamadan oluşan bir liste elde ettim. Bu listede hem Windows 7 ve alt sürümleri hem de Windows 8 uygulamaları olduğundan dolayı aynı uygulamanın birden çok sürümü de bulunabilmektedir. Uygulamaların listesi ve ilk aşamada oluşturduğum sınıflandırmaya https://meminmutlu.wordpress.com/personalis/windows-phone-tracker-apps/ adresinden erişilebilir.

İlk aşamada oluşturabildiğim uygulama grubu sayısı 56. Fakat daha detaylı bir çalışmayla bu sayı hiyerarşik olarak düzenlendiğinde daha da artacaktır. Örneğin “Spor” grubu spor dallarına göre alt gruplara ayrıştırılabilir.

Spor
Yakıt
Proje Yönetimi
Fitness
Etkinlik
Adres
Sağlık
Arkadaş/Sosyal
Avlanma
Diyet
Yolculuk/Seyahat
Son kullanım tarihi
Finans
Dua/Meditasyon
Bahçe
Kadın Sağlığı
Otomobil
Faaliyetler
Bebek
Zaman/Kronometre
İnternet Kullanımı
GPS
Skor Kartı
Taşınma
Telefon
Araçlar
Günlük
Lig/Takım
Pet Bakım
Rutinler
Oyun
Eğitim
Bağlantılar
Doğa/Olayları
Duygu Durum
Navigasyon
Bira/Viski
Sayaç
SMS
Ulaşım
Varlıklar
Veri Toplama
Kargo
Sorun
Gözlem
Media
Fırsatlar
Tanımlamayanlar
Alışveriş
Haberler
Uydu/Uzay İstasyonu
Tarih/Randevu/ajanda
Uçuş
Ekip Çalışması
İş-Görev-Çalışma
Geliştirme

Uygulama listesindeki uygulamaların her ne kadar adında ya da açıklamalarında “Tracker” sözcüğü geçse de aralarında kişisel bir durumun izlenmediği uygulamalar da bulunmaktadır. İlk aşamada bu uygulamalar ayıklanmamıştır. Kişilerin akıllı telefonlarla neleri izlemeye değer bulduklarını genel olarak değerlendirdikten sonra ayıklama yapmak daha doğru olacaktır.

Örneğin, televizyon dizilerinin yayın tarih/saatlerini izlemek amacıyla kullanılan bir uygulama eğer izlenen bölüm hakkında bilgi kaydına olanak sağlıyorsa, o uygulama kişisel bir durumun (bir televizyon dizisinin bir bölümünün belirli bir tarih ve saatte izlendiği bilgisi) kaydedilmesi amacıyla kullanılabilmektedir.

Bir uygulama kişinin kendisine ait olmayan bir bilgiyi kaydetmek amacıyla kullanılmasına rağmen yine de dolaylı olarak kişisel bir durum kaydedilmiş olabilir. Örneğin bebek gelişimini izleme uygulamalarında anne kendisine ait hiçbir bilgi kaydetmese bile girilen tarih ve saatlerde bebeğiyle ilgilendiğine dair bir durum bilgisini kaydetmiş olmaktadır.

İçerdiği uygulama sayısı açısından öne çıkan türler şunlardır:  Spor (47), Fitness (16), Sağlık (31), Diyet (50), Finans (83), Kadın Sağlığı (13), Bebek (14), GPS (35), Telefon (20), Lig/Takım (19), Oyun (55), Ulaşım (24), Kargo (13), Medya (15), Alışveriş (16), Uçuş (18), Yakıt (20), İş-Görev-Çalışma (9), Etkinlik (12), Arkadaş/Sosyal (13), Yolculuk/Seyahat (23), Zaman/Kronometre (34), Skor Kartı (17), Araçlar (12), Varlıklar (9), Haberler (9).

En fazla uygulamanın “Finans” grubunda olduğu görülmektedir. Bu alanda harcama, borç alma-verme, nakit akışı, bütçe denetimi, fatura takibi, para cüzdanı izleme, hesap-bahşiş paylaştırma gibi uygulamalar bulunmaktadır. Finansal faaliyetlerin çoğu rutin işlemler olsa da hayatımızdaki önemli pek çok olayın mutlaka finansal bir boyutu vardır. Eğer sürekli olarak kullanılırlarsa bu uygulamalarla kişi kendisine ait daha sonra hatırlayabileceği çok sayıda “yaşam günlüğü” bilgisini kaydetmiş olur.   

Uygulama sayısının fazla olduğu diğer bir grup ise “Oyun” uygulamalarıdır. Bu yanıltıcı bir durumdur. “Tracker” sözcüğü her türlü oyun içinde geçebilecek bir sözcük olduğundan dolayı bu uygulamaların çoğu kişisel izleme özelliği olmayan sıradan bilgisayar oyunlardır. Yine de bu grup içerisinde bireylerin sahip oldukları oyunları ve performanslarını izlemeleri amacıyla geliştirilmiş izleme uygulamaları da bulunmaktadır. Bilgisayar oyunlarının gençlerin zamanlarının önemli bir bölümünü kapsadığı düşünülürse, bu kayıtlar “yaşam günlüğü” açısından önem kazanmaktadır.

Üçüncü grup “Diyet” uygulamalarından oluşmaktadır. Bu uygulamalarla bireyler ağırlıklarını kaydederek izleyebilirler, kalori hesabı yapabilirler. Bazı uygulamalarda yiyecek ve içecek bilgileri de kaydedilebilmektedir. Bu uygulamalar sürekli kullanıldığında (eğer yemekte bulunan diğer kişilere ait bilgi de kaydedilmişse) önemli bir “yaşam günlüğü” kaynağı olabilir.

Dördüncü grup “Spor” uygulamalarından oluşmaktadır. Bu grupta yürüyüş vb. doğa sporlarının GPS ile izlenmesi, hemen her spor türü için kişisel ve ekip gelişiminin izlenmesi gibi uygulamalar bulunmaktadır. Bu uygulamalar yardımıyla haftanın doğa sporları yapılan birkaç saatinin gerçek zamanlı kaydı tutulabilir.

En fazla uygulamanın olduğu beşinci grup ise GPS uygulamalarını barındırmaktadır. Bu uygulamalar genel amaçlı olarak bireylerin konumlarını belirlemekte, kaydetmekte ve harita üzerinde göstermektedir. Bu gruptan seçilebilecek uygun bir uygulama ile tüm zamana ait gerçek zamanlı konum bilgisinin kaydı tutulabilir.

Altıncı uygulama grubunda zaman takibi ve kronometre gibi uygulamalar yer almaktadır. Özellikle “freelance” ya da saat hesabı çalışanların projelere harcadıkları zamanları belirlemeleri için yararlıdırlar. Özellikle serbest çalışanların ne zaman ne yaptıklarına dair ayrıntılı bir kayıt havuzu oluşturulabilir.

Yedinci grup ise “Sağlık” uygulamaları grubudur. Bu uygulamalarla kişiler sağlık durumlarını kaydederek izleyebilirler. Bunların arasında sigara kullanımını izleme, ilaç takibi gibi uygulamalar da bulunmaktadır. Bu uygulama grubu ile kişinin zaman ekseninde yer alan önemli bir olay-durum bilgi kümesinin kaydı gerçekleşir.

Bir başka uygulama grubu ise “Ulaşım” grubudur. Çeşitli şehirler için geliştirilmiş otobüs, metro, feribot vb. toplu ulaşım araçlarının harekat saatlerine erişilebilmektedir. Eğer ulaşım aracını kullanma bilgisi de kaydediliyorsa bu bilgi bir yaşam günlüğü bilgisi olarak kişinin zaman eksenine yerleştirilebilir.

İzleyen grup “Yolculuk/Seyahat” uygulamaları grubudur. Bu uygulamalarla seyahatlar planlanabilir, GPS ile izlenebilir, iş ve özel seyahat harcamaları izlenebilir. Tarih, saat, olay ve konum bilgisinin kaydı ile önemli bir yaşam günlüğü verisi elde edilir.
“Yakıt” uygulamaları otomobillerinde harcadıkları yakıtı izlemek isteyen kişilere yöneliktir. Daha çok finansal amaçlarla kullanılmasına rağmen üstteki “Yolculuk/Seyahat” grubu için söylenenler bu grup için de geçerlidir.

“Telefon” uygulamaları ağırlıklı olarak arayan telefonun konumunu belirlemeyi amaçlamakla birlikte kullanılan telefon operatörünün bu hizmeti vermesi gerekmektedir. Eğer saptanan bilgi kaydedilebiliyorsa yaşam günlüğü açısından destekleyici bilgi olarak kullanılabilir.

İlginç bir grup ise “Lig/Takım” uygulamaları grubudur. Kişilerin ilgilendikleri spor karşılaşması liglerini ve spor takımlarını izlemeleri için geliştirilmiştir. Alaska köpek yarışlarından basketbol takımlarına kadar çeşitlilik göstermektedir. Çoğu yetişkin spor karşılaşmalarını izlemek için önemli zaman harcar. Bu zaman bilgisinin kaydedilmesi yaşam günlüğü açısından önemli veri sağlar.

“Uçuş” uygulamaları havayolu tarifeleri ve uçuş bilgilerini izlemek amacıyla kullanılabilir. Uygulamaların çoğunda uçuş numarası ve tarih girilerek kalkış ve varış konumu ve saatlerine erişilebilmektedir. Gerçekleştirilen uçuşa ait bilgi kaydedildiğinde destekleyici bir yaşam günlüğü verisi elde edilir.

“Skor Kartı” uygulamaları kişilerin amatör spor etkinliklerinin puanlarını kaydetmelerini ve izlemelerini sağlar. Bilardodan golfe kadar her türlü karşılaşmada kullanılabilecek uygulamalar bulunmaktadır. Bu bilgi kaydedildiğinde kişinin boş zamanlarını değerlendirmesiyle ilgili yaşam günlüğü verileri elde edilir.

“Fitness” uygulamaları kişilerin fitness programlarını oluşturmaları ve izlemelerine olanak sağlar. Haftada üç gün ve günde iki saat olan standart bir fitness programı ile haftada yaşanan 6 saate ait verinin kaydedilmesi sağlanabilir.

Bir diğer grup ise “Alışveriş” uygulamalarıdır. Bu uygulamaların çoğu alışveriş sitelerindeki bir ürünün fiyatını takip etmeyi sağlar. Genellikle bir firmanın “istemci” uygulamalarıdır. Finans ve varlıklar gibi gruplardaki uygulamalardan elde edilen bilgileri desteklemek amacıyla kullanılabilir.

“Medya” uygulamaları kişilerin kitap, film, dizi film gibi etkinlikleri izlemeye alması ve durum, tarih, saat ve yorum bilgilerini kaydetmelerini sağlar. Kişilerin medya ortamlarında geçirdikleri süre günde en az birkaç saat olabilmekte ve böylece önemli bir yaşam günlüğü verisi üretilmektedir.

“Bebek” uygulamaları hamilelik takibi,  yenidoğan bebeklerin günlük olarak izlenmesi çocuk gelişimini izleme gibi uygulamaları içerir. Annenin hayatının önemli bir dönemine ait detaylı bir yaşam günlüğü verisi sağlar.

“Kadın Sağlığı” uygulamaları özellikle kadınların adet dönemlerini takip etmeleri için kullanılır. Kadınların yaşam günlüğü zaman ekseninde bulunması gereken bir veri kümesidir.
"Arkadaş/Sosyal” uygulamalarıyla bir sosyal ağ üzerinden kayıtlı arkadaşların gerçek zamanlı olarak bulundukları yer izlenebilir. Etkileşimlere ait yaşam günlüğü verisini türetmek amacıyla kullanılabilir.

“Kargo” uygulamalarında kargo şirketlerinin sağladıkları izleme numaralarıyla bireyler kargolarının durumlarını izlemeye alabilirler. Finans, alışveriş ve varlıklar uygulamalarını destekleyici veriler elde edilebilir.

“Etkinlik” uygulamaları ile kişiler günlük etkinliklerini planlayabilirler ve gelişmeleri kaydederek izleyebilirler. “İş-Görev-Çalışma” uygulamaları ile kişiler çalışma hayatına yönelik iş, görev ve faaliyetleri planlayabilir, kaydedebilir ve izleyebilirler. Bu uygulamalar ile kişiler kendi 9-5 zaman dilimlerine yönelik yaşam günlüğü verisini kaydedebilirler.

“Varlıklar” grubundaki uygulamalar ile sahip olunan maddi varlıklar kaydedilebilir ve izlenebilir. Diğer gruplarla desteklendiğinde zaman eksenindeki pek çok kilometre taşı belirlenebilir.

“Haberler” grubundaki uygulamalar ise kişinin abone olduğu haber kaynaklarından gelen haberleri izleyebilmelerine olanak sağlar. Eğer bireyin okuduğu-seyrettiği haberlere ait içerik kaydedilebilirse kişinin zaman eksenine paralel olarak bir dış dünya bilgisi ekseni de oluşturulabilir.

“Araçlar” grubu ise çok sayıda işlevi barındıran araç setlerini içerir. Bu setlerde bir ya da birkaç izleme işlevi de bulunabilmektedir. Bu uygulama grubu, tüm izleme işlevlerini içeren olası bir süper izleme setinin tasarımına yönelik ilham vermektedir.

Sınıflandırma listesinde az sayıda uygulamanın yer aldığı ama “yaşam günlüğü” açısından önemli gruplar da bulunmaktadır. Bunlar arasında “Duygu Durum” bilgisinin kaydedildiği uygulamalar, “Dua/Meditasyon” etkinliklerini yönetmek için kullanılan uygulamalar, “Proje Yönetimi”, “Avlanma”, “Bahçe Bakımı” uygulamaları, Kuaför vb. İzlemek için kullanılan “Faaliyetler”, “Taşınma” etkinliklerini izleme, “Günlük” uygulamaları, “Pet Bakımı”, sık tekrar edilen faaliyetleri yönetmeyi sağlayan “Rutinler”, “Doğa Olayları”, “Sorun” izleme, “Tarih/Randevu/Ajanda” ve “Ekip Çalışması” uygulamaları bulunmaktadır.

Bu çalışmada grupların genel değerlendirmesine yer verildi. Eğer gruplardaki uygulamalar kendi başlarına ele alınarak “yaşam günlüğü” bağlamı açısından değerlendirilirse ele alınması gereken bir dizi özellik bulunmaktadır.

İlk göze çarpan özellik “izlenen” bilginin kaydedilip kaydedilmediğidir. Bu özellik uygulamanın “Life Logging” uygulaması olarak kullanılıp kullanılmayacağını belirlemektedir.
İkinci özellik izlenen bilginin akıllı telefon tarafından kendiliğinden mi, yoksa kullanıcı tarafından elle (manuel)  olarak mı kaydedildiğidir. Bazı durumlarda kayıt süreci hem otomatik hem de manuel kayıt içerebilir. Ya da bilginin bir bölümünün kendiliğinden (örneğin konum, tarih ve saat bilgisi gibi), bir bölümünün ise kullanıcı yorumu şeklinde manuel olarak girilmesi gerekebilir.

Üçüncü özellik kaydedilen bilginin akıllı telefon tarafından işlenerek özetlenmesi-raporlanmasıdır. Bazı uygulamalarda bilgi bir algoritma ile izlenerek kullanıcının yönlendirilmesi, uyarılması ya da bilgilendirilmesi sağlanmaktadır. Örneğin diyet ve spor uygulamalarının çoğu bu şekildedir.

Bunların dışında uygulamanın hatırlatıcı bir özelliğe sahip olup-olmaması, uygulamanın arka planda gerçek zamanlı olarak çalışıp çalışmadığı, bilgileri telefonda mı yoksa bulut ortamında mı tuttuğu, sosyal ağ oluşturup oluşturmadığı gibi değişik teknik özellikler de ele alınabilir.

Şu anda Windows 8 ortamında çalışan AllMyListsMetro ve LifeLoggingLE uygulamalarıyla genel amaçlı bir yaşam günlüğü deneyimi gerçekleştirmek mümkündür. 2011 yılında Windows Phone SDK 7.1 ortamında deneysel olarak geliştirdiğim AllMyListsPhone uygulamasını dışarıda tutarsak henüz akıllı telefon ortamında çalışan ve kendi başına çalışan bir yaşam günlüğü uygulaması geliştirmiş değilim. LifeLoggingCCPhone uygulaması Windows Phone üzerinde 30 saniyede bir kamera görüntüsü alabilmesine rağmen elde edilen görüntüler Windows 8 Masaüstü ortamında LifeLoggingLE ile değerlendirilebilmektedir.

Gelecekte Windows Phone ortamındaki “Tracker” uygulamaları ayrıntılı olarak ele alınarak aralarında seçilecek kullanışlı uygulamalarla, kapsamlı bir “yaşam günlüğü” uygulama seti elde edilebilir. Böyle bir deneyim sonucunda Windows Phone ortamında çalışan ve bütün “yaşam günlüğü” işlevlerini barındıran bir süper uygulama tasarlanarak geliştirilebilir.

31 Mayıs 2013 Cuma

Hardware of LifeLogging Project

LifeLogging Projesinin Donanımları

"Yaşam Boyu Öğrenme Deneyimlerinin Yönetimi Amacıyla Bir Dijital Yaşam Günlüğü Sisteminin Geliştirilmesi ve Uygulanması" projesinde geliştirme ve uygulama sürecinde giyilebilir yaşam günlüğü kameraları, akıllı telefonlar, tabletler, diz üstü bilgisayarlar ve masaüstü bilgisayarlar kullanılacaktır.  Windows Phone 8 yüklü olan Nokia Lumia 920 model akıllı telefonlar 12 Mart 2013 tarihinde temin edilmiştir. Bu telefonlarda projede geliştirilen LifeLoggingCCPhone yazılımı kullanılacaktır. Uygulayıcılar hareket halindeyken ya da bilgisayarları başında değilken bulundukları ortamı görüntülemek istediklerinde bu yazılımdan yararlanacaklardır.
30 Mayıs 2013 tarihinde ise tümünde Windows 8 Pro işletim sistemi yüklü olan tablet, dizüstü ve masaüstü bilgisayarlar gelmiştir. 

Projede tablet bilgisayar olarak Samsung Ativ Smart PC Pro kullanılacaktır. Bu cihazda projenin uygulama sürecinde LifeLoggingSC, LifeLoggingSCDesktop ve LifeLoggingCC yazılımları yüklü olacaktır. Uygulayıcıların bu tableti mobil durumda iken ya da iş dışında sosyal medyaya erişirken ekran görüntülerini kaydetmek ya da ortamı görüntülemek amacıyla kullanacakları öngörülmektedir.
Projede kullanılacak olan dizüstü bilgisayarlar için Lenovo IdeaPad Yoga 13 seçilmiştir. Bu bilgisayarlarda da LifeLoggingSC, LifeLoggingCC ve LifeLoggingSCDesktop çalışacaktır. Uygulayıcılar bu bilgisayarı iş ortamı dışında seyahat halindeyken profesyonel kullanım anında ekran ve ortam görüntülerini kaydetmek amacıyla tercih edeceklerdir. 
Projede kullanılacak masaüstü bilgisayar olarak Sony Vaio L seçilmiştir. Bu bilgisayar ev ortamında kullanılacaktır ve diğer yazılımların yanısıra AllMyListsLE ve LifeLoggingTransporter yazılımları için kullanılacaktır. Bu yazılımlarla yaşam ve öğrenme deneyimlerini yönetebileceklerdir.
Projede kullanılacak donanımların arasında sadece giyilebilir yaşamgünlüğü kameraları henüz temin edilememiştir. Bu donanım türü için Autographer ya da Memoto marka giyilebilir kameralar düşünülmektdir. Henüz her iki kamera da piyasaya sürülmemiştir.



Uygulayıcılar bu kameraları günlük yaşamlarında içinde bulundukları ortamı kaydetmek amacıyla kullanacaklardır.

Architecture of AllMyListsLE List Management Software

AllMyListsLE Liste Yönetim Yazılımının Mimarisi

AllMyListsLE yazılımının kökenleri 2011 yılında geliştirmeye başladığım Windows Forms tabanlı AllMyLists yazılımına dayanmaktadır. Bu ilk geliştirmeyi WPF tabanlı AllMyListsWPF uygulaması izlemiş, ardından MVVM mimarisini denemeye çalıştığım AllMyListsWPFMVVM yazılımını geliştirmeye başlamıştım. Daha sonra 2012 yılında bir Windows 8 Store uygulaması olan AllMyListsMetro'yu bütünüyle yeni bir mimari üzerinde geliştirdim (https://meminmutlu.wordpress.com/personalis/pim-projects/).

2013 yılında "Yaşam Boyu Öğrenme Deneyimlerinin Yönetimi Amacıyla Bir Dijital Yaşam Günlüğü Sisteminin Geliştirilmesi ve Uygulanması" isimli projede yaşam ve öğrenme deneyimlerinin yönetimi için bir yazılıma gereksinimi duyulduğunda  AllMyListsWPFMVVM tasarımını temel alarak AllMyListsLE yazılımını geliştirmeye başladım.(http://personalinformationsystems.blogspot.com/2013/02/development-and-implementation-of.html)

AllMyLists yazılımı bir ana pencereye yerleştirilmiş birer ağaç, ızgara ve zengin metin kutusu denetimleri üzerinde çalışmaktaydı. Tüm kodlar ana sayfaya yerleştirilmişti ve sayfadaki denetimlere ait olaylar ana sayfada işlenmekteydi.

AllMyListsWPF'de denetimler Windows Forms yapısından XAML'e taşınmış fakat işleyiş aynı bırakılmıştı. Tüm kodlar ana sayfada yeralmaya devam etmişti. XAML teknolojisi Windows Forms'un rijid yapısına göre büyük tasarım esnekliği sağlamıştı.

AllMyListsWPFMVVM'de ise denetimlerin kendi kodlarını kendi içlerinde barındıracak şekilde düzenlenmeye çalışılmıştır. Bu amaçla ana sayfada bulunan ve denetimlerin altında çalışması daha mantıklı olan tüm kodlar denetimlere birer method olarak taşınmış ve denetimler de birer "UserControl" haline getirilerek birer kopyaları (ilgili "Grid" ler ve "GridSplitter" lar dışında boş olan) ana pencereye yerleştirilmişlerdir.

AllMyListsLE yazılımına başlandığında ise ilk yapılan işlem tüm veritabanı işlemlerinin ayrı bir sınıfa aktarılması olmuştur. Böylece bütün denetimlerin kullandığı ortak bir veri modeli oluşturulmuştur. Diğer taraftan yazılıma LifeLogging görüntülerinin görüntülenmesiyle ilgili yeni "UserControl" ler eklenmiştir. Bu denetimler görüntülerin yerleştirildiği bir görüntü listesi ile verilen bir güne ait görüntülerin hangi cihaza ait olduğunu belirtmek amacıyla kullanılan bir cihaz listesidir.Diğer taraftan yazılımın yapısı düğümleri kullanıcı tarafından oluşturulan "MyList" ve düğümleri kaydedilmiş görüntü klasörlerinden elde edilen "LifeLog" şeklinde iki ayrı ağaç yapısını işleyecek hale dönüştürülmüştür.

Bir süre sonra "MainWindow" ve kendisine yerleştirilmiş olan "UserControl" ler arasında yoğun bir bağımlılık bulunduğu, denetimlerden ana penceredeki değişkenlere ve yöntemlere erişildiği hatta denetimlerin ana pencere üzerinden diğer denetimlere eriştiği gözlenmiştir. Örneğin kullanıcı ağacın bir düğümünü seçtiğinde, ağaç nesnesi cihaz listesi nesnesine erişmekte, cihaz listesi nesnesinden bir cihaz seçildiğinde ise cihaz listesi nesnesi görüntü listesini etkinleştirmektedir.

Bu durum dolaşıklık oluşturmakta ve nesne yaklaşımlı programlama mantığıyla çelişmektedir. Bu sorunu aşmak amacıyla ayrıntılı bir tarama yapılmış ve yazılımın tümünde sadece ana pencereden üzerinde yerleşik bulunan kullanıcı denetimlerine erişimin bulunduğu, denetimlerden ana sayfanın ya da diğer denetimlerin çağrılmadığı duruma kavuşuncaya değin bir ayıklama işlemi gerçekleştirilmiştir. Bu amaçla denetimlere çok sayıda "Event", "Field" ve "Property" eklenmiştir. Böylece bir denetimin diğer bir denetime doğrudan erişmesi yerine kendisine ait özel bir "Event" ı tetiklemesi, bu "Event" ı yakalayan ana pencerenin hedefteki denetime erişmesi şeklinde bir geçişkenlik kullanılmıştır. Veritabanı nesnesinin ana pencere üzerinde çağrılması yerine denetimlerde gerekli olan yerlerde "Private" veritabanı nesnelerinin tanımlanması yoluna gidilmiştir. 

Yukardaki örnek bu durumda şu şekilde çalışmaya başlamıştır: Ağacın bir düğümü seçildiğinde bir olay tetiklenir. Ana pencere bu olayı yakalar ve cihaz listesini etkinleştirir. Cihaz listesi nesnesi bir öğe seçildiğinde bir olayı tetikler. Ana pencere bu olayı yakalar ve görüntü listesini etkinleştirir. Böylece alt denetimler kendi aralarında iletişimi ana pencere üzerinden sağlarlar.

Nisan sonu, Mayıs ortası arasında yapılan ayıklama sonucunda yaklaşık 450 dolaşık çağrı yazılımdan kaldırılmıştır. Böylece AllMyListsLE yazılımında karmaşıklık ortadan kaldırılmış, basit ve anlaşılır bir mimari elde edilmiştir. Gelinen aşamada denetimlerin veri modeline bağımlılığı dışında diğer nesnelere olan bağımlılığı kalmamıştır. Bir sonraki adımda denetimler ile veri modeli arasında bağımsızlık sağlanacak ve bu süreç yazılımda MVVM mimarisine tam anlamıyla geçilene kadar devam edecektir.

18 Nisan 2013 Perşembe

Transfer Images From SkyDrive Folders To Local Folders

Görüntüleri SkyDrive Klasörlerinden Yerel Klasörlere Taşıma

Önceki yayından günümüze geçen süre içerisinde bir Windows Store uygulaması olan LifeLoggingCC yazılımının masaüstü sürümünü geliştirdim. LifeLoggingCCDesktop olarak adlandırdığım bu yazılım Windows 7 ve Windows 8 masaüstünde çalışmakta ve yerel klasörlere erişebildiği için doğrudan SkyDrive klasörüne kayıt yapabilmektedir. Kamera görüntüsü kaydeden yazılımlar genellikle kamera görüntüsünü önce ekrandaki bir "image" nesnesine yansıtmakta ve bu nesne üzerinden kayıt gerçekleştirmektedirler. Bu durum kullanılan API'lere göre değişen çeşitli sorunlara neden olmaktadır. Bazı durumlarda "image" üzerin başka bir pencere geldiğinde "overlay" gerçekleşmekte ve kaydedilen resimde üstteki pencereye ait parça da görünmekte. Bazı durumda da "image" 'ı içeren pencere küçültüldüğünde görüntü alınamamakta. Bu nedenle LifeLoggingCCdesktop'u geliştirirken image kullanmayan bir çözüm aradım ve OpenCV'yi keşfettim. OpenCV'yi .Net ortamında kullanmak amacıyla EMGU.CV wrapper'inı kullandım. Sonuçta LifeLoggingSC şeklinde çalışan bir uygulama ortaya çıktı.



Bu arada LifeLoggingCC yazılımını LifeLoggingCCPhone'da olduğu gibi görüntüleri doğrudan SkyDrive'a "upload" yapacak şekilde yeniden düzenledim. Bu amaçla Live SDK 5.3 kullandım.

 "Capture" Ekranı

"Images" Ekranı

"Upload" Ekranı

4 Nisan'daki http://personalinformationsystems.blogspot.com/2013/04/data-gathering-from-lifelogging-devices.html sayfasında LifeLogging yazılımlarıyla oluşturulan ve SkyDrive'da biriken görüntülerin yerel klasörlere aktarılması amacıyla LifeLoggingTransporter  isimli bir uygulamanın geliştirilmesi gerektiğini belirtmiştim. Geçen süre içerisinde LifeLoggingTransporter programını tamamladım.

Program kullanıcıya üç seçenek sunmaktadır. Bunlardan birincisi LifeLoggingSC ve LifeLoggingCCDesktop uygulamalarının oluşturduğu ve SkyDrive altındaki Resimler\LifeLogging klasörüne kaydettikleri ekran görüntüleri ve kamera görüntülerinin buradan alınarak yerel Resimlerim\LifeLogging klasörüne taşınmasını sağlıyor. İkinci seçenek LifeLoggingCC ve LifeLoggingCCPhone Windows Store uygulamalarının oluşturduğu ve doğrudan SkyDrive'a "upload" yaptıkları kamera görüntülerinin yerel klasörlere taşınmasını sağlamaktadır. Üçüncü seçenek ise giyilebilir yaşam günlüğü kameralarının görüntülerinin yerel klasörlere aktarılması amacıyla rezerv edilmiştir.


 "Seçenekler" Ekranı


"Birinci Aşama" Ekranı


"İkinci Aşama" Ekranı

Taşıma işlemleri iki aşamadan oluşmaktadır. Birinci aşamada SkyDrive klasörlerindeki görüntüler belirlenmekte ve kullanıcıya raporlanmakta, ikinci aşamada ise görüntüler yerel klasöre aktarılarak SkyDrive'dan kaldırılmaktadır.

Bu düzenlemeler sonucunda proje kapsamında ihtiyaç duyulan yazılımların tümü temel işlevlerini yerine getirecek düzeyde geliştirilmiş oldu. Geliştirilen yazılımların genel durumu aşağıdaki tabloda verilmiştir:




Ortamlar
Programlar
 Kullanılan API
Windows 7
Windows 8 Masaüstü
Windows 8 Store
Windows Phone 8
LifeLoggingSC
.Net 4.0
X
X
1
2
LifeLoggingCC
.Net 4.5 & Live SDK 5.3
X
LifeLoggingCCDesktop
.Net 4.0
EMGU SDK (.Net Wrapper for OpenCV)
X
X
3
LifeLoggingCCPhone
.Net Phone 8 SDK & Live SDK 5.3
X
LifeLoggingTransporter
.Net 4.0
X
X
AllMyListsLE
.Net 4.0
X
X
AllMyListsMetro (Tercihe bağlı)
.Net 4.5
X
1 Windows 8 Store uygulamalarının ekran görüntüsü almaları OS düzeyinde engellenmiştir.
2 Windows Phone 8 uygulamalarının ekran görüntüsü almaları OS düzeyinde engellenmiştir.
3 LifeLoggingCCDesktop Windows 8 masaüstünde çalıştırıldıktan sonra Windows Store uygulamalarına geçildiğinde de ekran kaydetmeye devam etmektedir.

Bundan sonraki aşamada AllMyListsLE yazılımına ağırlık verilecektir. Gerçek görüntüler ile denemeler gerçekleştirilecek, yazılıma Öğrenme Deneyimlerini Betimleme Sihirbazı eklenecek, yazılımın öğrenme deneyimlerinin kaydedilmesi, planlanması ve değerlendirilmesi amacıyla kullanımı araştırılacaktır.

LifeLogging yazılımlarında ise çok kameralı bilgisayarlarda kamera seçimi olanağı sağlanacaktır. Görüntülere konum ve IP bilgisi gömülmesi araştırılacaktır. Ayrıca tüm yazılımların görsel yapısı üzerinde çalışılacaktır. Projenin uygulama aşamasına kadar geçecek sürede yazılımların ayrıntılı kurulum ve kullanım testleri gerçekleştirilecek, dokümantasyonu tamamlanacaktır.