portrait

Interested in things involving computers and computation

Software

  1. Rekha is an effort to evaluate the effectiveness of Android app security analysis tools in detecting known vulnerabilities (and exploits).
    Role: Co-Creator, Analyst, and Supervisor
    Technology: Android, Groovy, R
  2. HiPCUPP is an effort to understand non-technical pain points of HPC users.
    Role: Co-Creator, Analyst
    Technology: Sed and Awk
  3. Ghera is a repository of benchmarks that capture known vulnerabilities in Android apps.
    Role: Co-Creator, Developer, and Supervisor
    Technology: Android, Java
  4. Funcipy is a library to inject common functional programming operations as methods into iterable objects in Python.
    Role: Creator, Developer
    Technology: Python
  5. DyCo4J is an instrumentation based toolkit to collect dynamic information about JVM based code.
    Role: Creator, Developer
    Technology: Java
  6. Pytest-finer-verdicts is a pytest plugin to treat non-assertion failures as test errors.
    Role: Creator, Developer
    Technology: Python
  7. SCP was a PoC implementation of simple communication patterns to connect medical devices and compose medical systems on top of different communication substrates.
    Role: Creator, Developer
    Technology: Java, Vert.x, RTI Connext DDS
  8. Tark explored techniques to mine quantified temporal patterns from sequences of events. The resulting techniques were used in testing related tasks in Microsoft.
    Role: Co-Creator, Developer, and Supervisor
    Technology: F#, .NET
  9. Isolator explored techniques to enforece isolation requirements in concurrent programs.
    Role: Contributor
  10. Indus was a library to analyze and slice concurrent Java programs. The library was downloaded more than 110,000 times until 2016.
    Role: Creator, Developer
    Technology: Java, Groovy, Eclipse
  11. Bandera was a toolkit to automatically verify verify Java programs. The toolkit was downloaded more than 24,000 times until 2016.
    Role: Contributor
    Technology: Java
  12. Cadena was an environment to design, analyze, and synthesize component-based systems using a model-driven approach.
    Role: Developer
    Technology: Java, Eclipse
  13. LYE was a collection of non-intrusive caching-based optimizations for SOAP implementations.
    Role: Developer
    Technology: Java

Courses

  1. Verification and Validation is an advanced graduate level course about software verification and validation taught at Kansas State University in Fall of 2015-2017.
    Role: Creator
    Technology: Python
  2. Software Testing Techniques is an advanced undergraduate level course about software testing taught at Kansas State University in Spring of 2016-2017.
    Role: Creator
    Technology: Python

Code Repositories

  1. BitBucket (Personal)
  2. BitBucket (SecureItI Team)
  3. BitBucket Snippets
  4. GitHub (Personal)
  5. GitHub Gist