Computer science student Daniel Wang and research partner Darya Verzhbinsky were awarded first place at the Symposium on Principles of Programming Languages' Student Research Competition for their program synthesis tool. Wang shares how they got interested in computer science, what is exciting about the field, and advice for students, in this Q&A.
Why did you decide to study computer science, and how did you wind up working with Prof. Polikarpova?
Nowadays I'm really into design and human-computer interaction (HCI) rather than computer science proper. But studying computer science was a natural choice for past me who loved free engineering puzzle games like Manufactoria and KOHCTPYKTOP. To the computer science education crowd: yeah, I'm a big believer that games spark interest in computer science!
Later on I experienced some cognitive dissonance (in short: felt more like a bug fixer than a puzzle solver), so I got curious of alternative ways we approach computing. This brought me to HCI and also the field of programming languages (PL). It was in Professor Polikarpova's intro to program synthesis course where Darya and I started work on (what came to be) Petsy!
What do you enjoy about computer science and CS research?
So, computing is very empowering today! I don't think that purely in the "you should learn to code" kind of way, but in a more user-centric HCI sense:
- nowadays online calculators can interpret plain English (spoken or typed) instead of math symbols,
- nowadays you can translate text by pointing your phone camera at it, and
- nowadays you can find websites that let you autocomplete your cover letter, and your Harry Potter slash fic, and everything in between.
I love seeing things like this! I love how the fruits of computing can be made accessible by making it as easy as possible to specify the task to be done, without needing a manual, and without needing to be taught. In other words, these make computing intuitive.
That's really interesting because computing, and computer science especially, has this reputation of being very counter-intuitive. I've often heard complaints that it's "too" programming- and math-heavy. And again, that has me exploring the intersection of HCI and PL. HCI is exciting because you learn how computing is made accessible and intuitive, and PL is exciting because you explore new ways to make it happen. (like program synthesis!)
Are you involved in any groups/clubs/other activities on campus?
Not now, but I used to dance with KOTX, a kpop dance team!
Any advice for future CS students?
There's no avoiding it: if you want to do CS research, you have to connect with some CS researchers. But that's unhelpful advice if you're like second year me, who was terrified of asking professors for research!
So it felt like getting into CS research was impossible until I learned of ERSP, which is a program that literally brings second years to work on CS research projects with CS faculty. And Professor Alvarado (who leads ERSP) really impressed upon me that professors like herself are there to support students like yourselves, which is really quite the opposite of terrifying!
So yeah check out ERSP! --> ersp.eng.ucsd.edu
Any plans/goals for your future?
Right now I'm waiting to hear back from PhD applications! After that, there's lots of work I want to explore in the intersection of HCI and PL, regarding intuitive and accessible computing.