Thank you for the invitation!
Are the specific things we should ask you about? or specific subtopics we should bring up?
I am a PhD student at the University of Maryland, doing research in programming languages. In general, I am interested in helping programmers write correct code and I develop tools towards that goal. RbSyn is a research project in that direction---given a type annotation and test cases, RbSyn synthesizes a correct-by-construction method that passes the test cases.
Previously I have worked on RDL, a Ruby type checker. RDL was one of the trailblazer projects to explorer static typing for Ruby. Static types are now a part of Ruby 3, and ideas from RDL has now been integrated in the industrial-grade Ruby type-checker Sorbet by Stripe. In fact, all type annotations of Sorbet for the Ruby standard library have been borrowed directly from RDL.
Prior to my PhD life, I was a software engineer at BrowserStack. BrowserStack is a heavy user of Ruby, and it was my introduction to Ruby in a professional setting.
Are there conference talks, blog posts, etc we can consume that will help us prepare for the episode?
- Github repo's readme
- Demo as a Youtube video
- Research paper from PLDI 2021
- Conference talk for the above
The last two links are academic research related, so might not be suitable for a general audience. The talk is easier to understand version of the paper.
What social media links should we put on the episode page?
My primary content can be found on my website, and I am also on Twitter as @ngsankha.
Is your name hard for us to say? Can you give us some guide on how to say it?
Google translate does a good job of translating my name to my native script. The english pronunciation (on the left) is a good approximation. The pronunciation in my native tongue is shown on the right.
However, I have been using the English pronunciation for the last few years, so I do not mind either pronunciation.