1
0
Fork 0
website/content/index.markdown
2021-03-20 16:48:09 -04:00

6.3 KiB

I'm a 4th year Computer Science PhD student at the Ohio State University. Over the duration of my PhD, I have been researching topics in Programming Languages such as data race detection, and transactional persistent memory. Research that I led or assisted resulted in several publications, which are listed below. I also had the opportunity to teach the course Advanced C Programming, and serve on the Artifact Evaluation Committees of several conferences.

Outside the school, I build web and mobile applications for fun. Over the years I have learned and used many programming languages and technologies, including JavaScript, TypeScript, React, React Native, Python, Java, C, C++, Clojure, and Haskell. All my projects are open source, and are available on my Github page.

I am an avid Linux user, having been using it full time for the last 7 years. I manage several small personal servers, and have experience with Bash scripting, writing SystemD services, and building and using Docker containers.

Highlighted Projects

## image-survey

A web application to run surveys where users compare 2 images to pick the one they prefer. Uses a Python backend utilizing asyncio capabilities with the Sanic web server and SQLite. The front end is a React app, written in JavaScript and Material-UI.

Github Demo

## WorkTime

Work-in-progress offline-first mobile app for productivity and time management. Uses React Native with TypeScript, and a PouchDB database on the client side. Currently planning to add a backend supported by CouchDB to provide synchronization capabilities.

Github

## Crafty

A transactional persistent memory library, written in C. Provides transactional data storage capabilities to programs by utilizing existing hardware transactional memory support of processors, combined with the new non-volatile memory hardware. Allows programs to store and access data efficiently, and without the need for additional concurrency synchronization. This is the corresponding implementation for one of my publications listed below.

Github

## Crafty

A transactional persistent memory library, written in C. Provides transactional data storage capabilities to programs by utilizing existing hardware transactional memory support of processors, combined with the new non-volatile memory hardware. Allows programs to store and access data efficiently, and without the need for additional concurrency synchronization. This is the corresponding implementation for the publication of the same name listed below.

Github

## SDP & WDP data race detectors

Data race detection for Java programs using predictive dynamic data race analyses. Predictive race analysis looks at a single execution of a program to detect races that may occur in many other executions. Our analyses use data and control flow dependence to find more data races compared to other analyses. This is the corresponding implementation for my publication "Dependence Aware, Unbounded Sound Predictive Race Detection".

Github

Publications

## Crafty: Efficient, HTM-Compatible Persistent Transactions
Kaan Genç, Michael D. Bond, and Guoqing Harry Xu
ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI 2020), Online, June 2020

Talk Paper Extended Paper Implementation [Poster](/extra/Crafty Poster.pdf)

## Dependence Aware, Unbounded Sound Predictive Race Detection
Kaan Genç, Jake Roemer, Yufan Xu, and Michael D. Bond
ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA 2019), Athens, Greece, October 2019

Talk Paper Extended Paper Implementation [Poster](/extra/DepAware Poster.pdf)

## SmartTrack: Efficient Predictive Race Detection
Jake Roemer, Kaan Genç, and Michael D. Bond
ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI 2020), Online, June 2020

Paper Extended Paper

## High-Coverage, Unbounded Sound Predictive Race Detection
Jake Roemer, Kaan Genç, and Michael D. Bond
ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI 2018), Philadelphia, PA, USA, June 2018

Paper Extended Paper

Activities

PLDI 2021 Artifact Evaluation Committee member

ASPLOS 2021 Artifact Evaluation Committee member

OOPSLA 2020 Artifact Evaluation Committee member