About me

Since 2016, I am a PhD student at UC Davis, focusing on Empirical Software Research with Prof. Prem Devanbu. I study source code as primarily a means of communication: although one can write programs in myriad ways, programmers choose predictable expressions, using programming languages in ways similar to natural languages. This perspective turns out to be a powerful way to understand real-world coding, allowing me to use methods from computational linguistics, deep learning, data mining and traditional software engineering to understand how people write code and why they write it that way. Among others, I study norms of communications within projects (code and language), have helped build strong algorithms for code completion and defect detection, and have pushed the limits on understanding what part of code is repetitive (and in turn, what part is interesting) and why.

My work in computer science is right on the intersection of the two things I like to study most: mathematics and language, and on the side I often dabble in implementing and analyzing algorithms for a wide variety of problems in both these areas. Ask me about it sometime, or tell me your thoughts; I will always reply to an idea, no matter how odd (no really). Besides this, I enjoy travelling and collaborating with other groups, like the RISE group at Microsoft Research. On the side, I also try to do my share by (sub-)reviewing papers and am always happy to give my opinion on new work.

See also