Caner Tosuner

Leave your code better than you found it

Smart Home Project

Summary

Smart Home project provides users to control the electronic devices via it’s desktop application and mobile application. User can create scenarios which are “Arrive” and “Leave” scenarios and they can create feature events about sensors or electronic devices which are time-based and the system perform these events according to the different device types. All the actions process on the system are logged in the database and reports to the user.

 

 

Desktop Application

There is a laptop which is connected to the arduino and it receives and sends data from cloud system to arduino board or arduino board to cloud system. Users can access the in time data that comes from arduino board and it is displayed on a page which works on desktop application. They can create “Arrive” and “Leave” scenarios or they can create feature events using that application.

 

 

Cloud

 In the cloud side all data and necessary files are stored on azure cloud services. All the tables in the database have been developed by using MS-SQL, and using Entity Framework technology insertion, deletion and update operations performed. There is a virtual machine runs on azure and it communicates with mobile application and desktop application the process the commands.

 

 

 

 

Mobile Application

 There is an application which works on Windows Phone operating system. Users who has Windows Phone device can install the application and login. After processing some security functions they can easily display the device status and values of the sensors that are in smart home system.

 

Use Case Diagram

 

Android'den fazla C# kodu yazılan Google Hackathon'u :)

     ODTÜ Teknokent, Google Türkiye ve Amerika Birleşik Devletleri Büyükelçiliği iş birliği ile 16-17 Mayıs 2013 tarihinde Orta Doğu Teknik Üniversitesi’nde gerçekleşen “Social Entrepreneurship Hackathon” adlı yarışmaya Kadir Has Üniversitesi'ni temsilen 5 arkadaş katıldık.

         Aslında üniversitede ki hocam Selçuk Öğrenci bana ilk "Android hackathon var gitmek ister misin ?" diye sorduğunda ilk başta "tabi hocam hemen giderim, nerede ne zaman ?.. " gibi konuştuktan sonra kendi kendime bi sordum "Caner hayırdır ?.. Markette 16 tane uygulamam ver derken bu android market değil Windows Phone abicim..." falan filan derken bu düşüncemi sonrasında Selçuk hocamla da paylaştım ama o yinede benden katılmamı ve şakayla karışık takımın "Core" denen şeysi olmamı söyledi :)

Bende emir büyük yerden deyip tamam hocam elimden gelen neyse üstüne dahasını katarak arkadaşlara yardım edeceğimi söyledim. Neyse 15 Mayıs günü yola çıktık ve yaklaşık 6-7 saat içerisinde gece 23:15 gibi Ankara'ya vardık. Ankara dışından gelen öğrenciler TEDAS Misafirhanesi'nde konaklayacak diye söylemişlerdi bizde geceyi orada geçirdik.Sabah ODTU Kültür Merkezine geçtik ve orada açılış konuşmasının olacağı salona gittik. Google Türkiye ekibinden, ODTU Teknopark ekibinden, ABD Büyük elçiliğinden ve Teknoloji bakanlığından gelen konuşmacıları dinledikten sonra 2-3 saatlik bir ara verdik ve sonradan 22 saat sürecek olan non-stop coding yani Hackathon başladı. Arkadaşlarla geliştirmeye karar verdiğimiz uygulamanın adı "EBS" Engelli Bildiri Sistemi'ydi. Ne yapacaktı EBS ; aslında içinde biraz Twitter biraz Instagram olan bir uygulama gibi düşünebiliriz.

        Engelli vatandaşlara hizmet verecek olan uygulamanın ana işlevi şu şekilde olacak; diyelim ki engelli bir   vatandaşımız sokakta yolda giderken kendisine engel teşkil eden bir durumla karşılaştığında uygulamasını açıp lokasyon bilgisine göre bulunduğu yerin Belediyesi'ne Fotograf, Açıklama, Yer Bilgilerini göndererek engel hakkında bildiri/şikayet yapabiliyor olacaktı. Sağtarafta bulunan fotoğrafı uzun bir süre önce internette görmüştüm örnek olacağını düşünerek paylaşmak istedim. Bu vatandaşımızı örnek alacak olduğumuzda ;

        Engelli vatandaş bu karşılaştığı engel karşısında uygulamasını açıp sorumlu belediyeye sorunun fotoğrafını çekip, açıklamasını yazıp gönder butonuna basacak ve bu bildiri Belediye nin sahip olduğu Web arayüzüne düşüp görüntülenecek Belediye tarafından görüntülenecek ve sorun giderildiğinde o şikayeti yapan vatandaş mail yoluyla "Sorun giderilmiştir" şeklinde bilgilendirilecek.

    Aslında fikir bence gayet güzeldi çünkü etkinliğin adı Sosyal Girişimcilik olduğundan uygulamanın içeriği hem Sosyal olmalıydı ve toplumsal bir soruna parmak basıyor olması gerekiyordu. 

Yazılımsal olarak neler gerekli diye düşündüğümüzde ;

  1. Öncelikle Server'da tutulan Sağlam bir Database 
  2. Mobil uygulama ile iletişimi sağlayıp bütün ihtiyaçlara cevap verecek iyi bir WebService,
  3. Belediyeler tarafında gelen bildirimleri görüntülemek için kullanılacak fonksiyonel bir Web Sayfası.
  4. Ve tabi son olarak da Android uygulaması :)

        1, 2 ve 3. şıklar benim yapacağım konulardı. İlk olarak MS-SQL kullanarak kullanışlı bir Database geliştirdim ve bu Database'i Azure Cloud servisimde sakladım. Sonrasında WCF kullanarak json formatında yayın yapan bir adet Web Service geliştirdim. En son olarak da ASP.Net kullanarak belediyeler için bir adet Web Sayfası geliştirdim. Şaka gibi ama bütün bunlar 6 saat içerisinde bitmişti Hackathon bu olsa gerek Smile.

Android uygulaması üzerinde çalışan arkadaşlar o sırada geliştirmeye devam ediyorlardı. 22 saatin sonunda maalesef arkadaşlar Android uygulamasını tam istediğimiz haliyle yetiştiremediler Frown Sunumumuzu yaptık ve sıralamaların açıklanmamıştı ve birincide olamamıştık.

Aslında bi ara şey diye düşünmedim değil; "Acaba çok mu fazla Microsoft'u işin içerisine soktum ?.." çünkü baktığımızda üstte saydığım gibi yazılımsal olarak 4 adet görev yada geliştirilecek yapı vardı ve bunlardan 3 tanesinde tamamiyle Microsoft'un izi vardı, MS-SQL Database, WCF WebService ve Asp.Net Web Sayfası :) Etkinlik sonunda arkadaşlarla oturup bi baktığımızda şaka maka Android kodundan fazla C# vardı işin içerisinde Cool 

Ama her şeye rağmen gayet güzel ve eğlenceli bir hackathon oldu, kişisel deneyim olarak bir çok şey kazandım gibi zira önümüzdeki sene Microsoft'un her yıl düzenlediği Imagine Cup yarışmasına katılmayı düşünüyordum ve bu deneyim benim için gerek sunum noktasında, gerek takım olarak çalışabilme konusunda gerekse işin sosyallik kısmında son derece katkıları oldu diye düşünüyorum. Umarım Selçuk hoca bize ilerleyen zamanlarda da bu tür görevler paslar ve bizde okulumuzu (1. olamazsakda) en iyi şekilde temsil etmeye çalışırız Laughing