WiNGS Lab Projects

WiSense - Detecting non-WiFi devices using a commodity WiFi Card [ video ]

Developed an Android application which runs Airshark to detect non-WiFi interferers (like Bluetooth, Microwave Oven, Game Controller, Analog Phone, etc.) by only using commodity WiFi Cards. The application lets a user visualize the data related to detected devices, logs information regarding the same, and uploads it to Airshark server.
Technologies Involved: Android, Java, MongoDB, PHP, JSON, Eclipse

DriveSense - Sensing Dangerous Driving Behaviors

DriveSense is an Android application which senses how a driver is driving his/her vehicle using all possible sensors of the device. I got involved in this project at a later stage, where I was responsible for fixing some major issues in the application related to its activity life cycle and improving the reliability of uploading of the data to the DriveSense server.
Technologies involved: Android, Java, Eclipse

Recent Course Projects

CollabDraw - Real-time Collaborative Drawing Board [ pdf , ppt , github ]

We developed a strongly consistent, fault-tolerant and highly scalable distributed system which provides a framework for realtime drawing application. It also provides a disconnected mode which allows users to draw on a board in the absence on any backend servers; the clients get in sync when they connect to servers again.
Technologies Involved: Play Framework, Java, Scala, Java Servlets, MySQL, MongoDB

Music Recommendation System - Offline Evaluation of Learning Methodologies [ pdf , github ]

Using the dataset provided by Kaggle for their Million Song Dataset Challenge, we analyzed state-of-the-art techniques which can be used to build a music recommendation system. We compared k-NN, Naive Bayes, user-based and item-based collaborative filtering techniques while evaluating the impact of ensemble methods (bagging) on these learning methodologies.
Technologies Involved: Java, MySQL

TweetBuzz - Identifying Current Buzzwords from Tweets [ pdf , github ]

TweetBuzz is a java-based application which uses Twitter data, i.e., tweets, to analyze the current buzzwords, the topics which are being highly discussed, in a particular domain. The project involved creation of a taxonomy, extracting and linking mentions in the tweets, and creating a tagcloud of the buzzwords.
Technologies involved: Java, XML, Twiiter API, JSOUP, TMDB, Twitter4J, Eclipse

Implementation of Persistent File Cache on Android Operating System [ pdf , ppt ]

Developed a model which modifies Android file cache to behave as persistent storage, thereby increasing system performance and power efficiency. In order to ensure protection of data in memory, we studied and proposed two mechanisms which are- write protecting pages and using transcendent memory (cleancache). [This research project was a part of 'Advanced Operating Systems' course.]
Technologies Involved: Android, Linux Kernel (goldfish 2.6.29, 3.0), C, Java

Earlier Course Projects

Retroactive Data Structures - Design, Implementation and Analysis [ pdf , github ]

It is a model which allows operations on a data structure to be performed in past time. The research project involved algorithm design and implementation of new retroactive data structures, like Fully Retroactive Binary Search Tree, Hash, Priority Queue and other data structures. It also entailed studying their performance against persistent data structures to demonstrate their usefulness.
Programming Languages Involved: C, C++

Programming and Development of Computer-based Games for Education

My summer project involved Game Programming and Development, meant for improving cognitive skills of children with special needs. I studied various research papers on IMS Learning Design (LD) application to model Computer-based Educational Games and developed multiple games for the same.
Programming Language Involved: ActionScript
Technologies Used: Adobe Flex Builder

Web application for Sharing Data over LAN

The project aimed at development of an online portal using which students and faculty may share any kind of data over local network through their accounts on the portal. The project was developed as part of the Software Engineering course curriculum during my undergraduate studies.
Programming Language Involved: Visual C#
Technologies Used: ASP.NET, Visual Studio 2005

Web application for submitting Course and Instructor Feedback Form [ github ]

The project aimed at developing a web portal for students to submit feedback for different courses and faculty online, which besides easing the process, also helped in saving a large amount of paper used for this purpose. Since the database involved was complicated, it helped in learning about many real-time issues that one might face while working with and maintaining large database systems.
Programming Language Involved: Visual C#
Technologies Used: ASP.NET, Visual Studio 2005

Side Projects

Guideo - Indoor Navigation using a Robotic Ball as a guide [ video , link ]

[Event: PennApps Fall 2013 Hackathon, UPenn (Won 'Best use of Speech Technologies' Award)]
Guideo is the ultimate tool for navigating inside buildings, such as shopping malls, corporate offices, universities, museums, etc. It uses Sphero (a robot ball) as a pilot to steer users to their destinations. Apart from voice feedback, Guideo also features the ability to detect obstacles in the path of Sphero while navigating.
Technologies Involved: Android, Sphero Android SDK, Nuance Android SDK, Java, Eclipse

StyleMe - Connecting users to Professional Stylists in real time [ link ]

[Event: Angel Hack Silicon Valley 2013 Hackathon, PayPal HQ, San Jose (Won '2nd' Place and 'Best use of PayPal APIs' Award)]
StyleMe is an iOS application which gives a platform to users to get in touch with professional stylists in real time, via text messages and live video chat.
Technologies: iOS, PayPal iOS SDK, Firebase iOS SDK, Objective C, XCode

BestExchangeRate - Recommending Bank offering best forex rate [ playstore ]

BestExchangeRate is a free Android app which lets users know the banks offering best exchange rates for USD to INR transactions. A user can enter the desired amount and the app finds Banks or other MTOs that provides the best exchange rate for your amount. If a user need to send the money quickly, it also finds the Banks or other MTOs that offers the fastest transfer and the corresponding rate.
Technologies: iOS, PayPal iOS SDK, Firebase iOS SDK, Objective C, XCode

Events Explorer - Capturing (Facebook) Events on Google Maps [ github ]

[Event: Facebook Hackathon 2013, University of Wisconsin-Madison]
We developed an Android application which using GPS services locates where you are and let you know what all (Facebook) events are happening near you using Google Maps. We developed this application in just one day in the Facebook Hackathon event at University of Wisconsin-Madison.
Technologies Involved: Java, Eclipse, Facebook Graph APIs, JSON, Google Maps Android API

Web application for Management of Earned Leaves of the Institute Faculty [ github ]

This project aimed at development of a web based system for Institute’s Accounts Department, which helped them avoid maintaining ledgers and doing manual evaluation of earned leaves of the faculty.
Technologies Involved: Visual C# Technologies Used: ASP.NET, Visual Studio 2005