A scrapbook full of random scripts

Projects title Projects design
These are some of the projects I worked on...
Contribution to Soot Repository
Added a new feature to Soot. The insertOnEdge API adds instrumentation(s) to the Chain in a manner such that the resulting CFG of the program will contain the instrumented code (toInsert) on an edge that is defined by point_source and point_target. For more details, click here.
Path Profiling
An efficient Ball Larus path profiler for Java classes. This determines how many times each acyclic path in a routine executes.
A tool to print out the bytecode instructions that is being executed by the machine. Such a tool may be useful to analyze the instruction set that was executed during a program run.
Pintos is an operating system framework that supports very basic features. The objective of this project was to strengthen its functionality and this involved working on various aspects of an operating system including Threads, User Programs, Virtual Memory and File Systems.
For more details on how to get started with PIntOS, read my blog post here.
Null Dereference Analysis
Given a Java program, this tool performs interprocedural pointer analysis on a user-specified method to verify a given dereference as safe or potentially unsafe.
Answering questions takes time. But there are many questions for which we’d require an answer in an instant for it to be relevant. To solve this problem, we made an app called YeNo. Developed as an OnePlus Hackathon project, this application lets users ask questions to any person at a particular location for which the answer can either be a yes or a no. Is there a queue at Starbucks? Is it raining in Electronic City Bangalore? Does McDonalds in Delhi serve veg burgers? This application lets one get answers to such questions (and lots more) in an instant from people who probably are aware of their surroundings. Answering questions just requires a person to click either yes or a no on their Android Wear device or the lock screen notification of their phone.
Disaster Management Using Crowdsourcing
During a disaster, information is at a premium. There is an urgent need to know which areas are affected, how they are affected, what the priority problems are and so forth. The advent of modern connected devices, such as mobile phones, has provided a new digital development infrastructure, which may be of significant value to disaster response. When existing surveillance sensors used by a disaster warning and response system cannot provide adequate data for situation assessment purposes, crowd-sourcing information collection can be an effective solution. The goal of this project is to arm people with wireless devices that can be used as mobile human sensors. Eye-witness reports from them are used to complement data from in situ physical sensors and provide the system with more extensive and detailed sensor coverage.
This is a game for Android devices where the user has to pin-point locations, provided to them as text, on the map. The locations are stored on a java server created using Glassfish4. The closer they pin point the location the more points he gets.
Airplane! (Game)
The goal of this game is to fly as far as possible, with only two controls at your disposal, this is one of those "easy to learn, difficult to master situations". You’ll first select a plane and a scene. Click once to start make your little guy take off from an airport, and it’s on!!
This game was made using OpenGL APIs.
Crack MD5 Password
A tool to crack passwords that have been hashed with MD5 using brute force methods.
Automatic Ticketing System
This is an android application which allows us to implement automatic ticketing to the user. All that a user would have to do is tap his NFC enabled phone against a NFC tag present at the entrance of various transport medium (like bus, rickshaw etc.). The GPS of the phone will be used to measure the distance traveled by him and will be accordingly charged from his online account. The need to carry cash (and change) and various other problems like corruption on part of rickshaw drivers and conductors can be eliminated.
Online Treasure Hunt
A web application developed using PHP. It is used to emulate an online treasure hunt where people crawl through the web to find out the solution to the question provided.
VTU Results
Getting VTU results is not as easy as it should be considering their servers are down most of the time. This Android application fetches the results from the server as soon as it's available and displays it in a native fashion.
Download from Play Store [mirror]
Dice Application
An Android application that generates a random number when the user shakes their phone. The data from the accelerometer is obtained and processed to determine the shake. The number thus generated, is uploaded to a server and is used for playing snake and ladder game.
Online Discussion Forums
An Internet forum, or message board, is an online discussion site where people can hold conversations in the form of posted messages. It allows people with similar interests, a platform, where they can discuss about the topic that interests them. This forum was created using WordPress web software.

2016 Reading Challenge