A scrapbook full of random scripts

Projects title Projects design
These are some of the projects I worked on...
Contribution to Soot Repository
Contributed a new feature to the Soot repository.
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.
Comments Translator
A tool to translate comments in a given source code. I had originally written this tool to translate comments in an SSD simulator's source from Korean to English.
Path Profiling
An efficient Ball Larus path profiler for Java classes. The objective of this tool is to determine how many times each acyclic path in a routine executes.
Tool for Bytecode Analysis
Tool to print out the bytecode instructions that were executed by the Java Virtual Machine. This is useful to analyze the instruction set that was executed during a program run.
PintOS
The objective of this project was to strengthen the functionality of PintOS. 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.
Online Treasure Hunt
A web application developed using PHP. It emulates a treasure hunt where the player crawls the web to decode hints and find solutions to unlock the next level.

The game was updated in 2017 for IISc Opendays 2017.
To play, please visit events.csa.iisc.ac.in/openday2017/questfordnext/
YeNo
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.
Locate!
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.
MD5 Password Cracker
A tool to crack passwords that have been hashed with MD5 using brute force methods.
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.



Please visit github.com/arpith20 for the source codes and other projects that I worked on.

2016 Reading Challenge