Research taste

Learning to do research is not just about learning to use the essential techniques in the field. It also involves developing a taste of what directions are worth exploring and what directions are not.

I am still in the middle of my PhD, but looking back, the past few years have already changed me in the way I look at different research directions. Continue reading




但如果真的这样安排时间,那么在第一阶段往往就会遇到问题。 Continue reading


How to proceed when being stuck
(Reflection on my programming experience)


我想实现某个功能A,却又对它有畏惧之心。这程序整体都有点费脑子,几乎每个功能都需要递归操作树、图等数据结构。而想加的这个功能A呀,尤其复杂。要实现它,就要一口气设计那么多算法、数据结构和函数接口,那么多的新代码交错在一起,想想调试的场面就头疼:那么多东西不知对错,出了问题该改哪里好呢?恐怕要重写一遍吧。 Continue reading

Why junior PhD students are miserable

I hope that elaborating on why we sometimes felt bad can help us feel better in the future.

People tell me that PhD students are miserable for a large portion of the time. They are the happiest when they first arrive at the graduate school. Then they become miserable. They boost their moods every now and then, such as when they pass their qualifications, their papers get accepted, etc., until they become numb. Continue reading

Controlled experiments for a language design project

Last fall, I conducted my first user study to evaluate my first programming language. Looking back, the study was more adventurous than I had thought. I am grateful that it ended with interesting results.

The language design involved a new language construct. I wanted evidence on how this construct affects developers. As a young student entering the field, I was more excited about how people directly use this language than indirect descriptions of code shape. Why don’t we try controlled experiments with human developers, like how people evaluate tools? I did not think much at first. Continue reading

Nature of research vs. schoolwork

My recent experience on designing quizzes made me realize why and in what ways research feels different from schoolwork. Most people would agree that they differ. Quizzes are extreme versions of schoolwork, and that’s exactly why this experience helped me think.

My experience convinced me that quiz questions have to restrict student creativity. To be practical, quiz questions are designed to be solvable in a short time. To be easy to grade, the questions had better have exactly one solution, or at least, have clear rules about answers being right or wrong. To detect student capabilities rather than noise, the questions had better be well-defined and be directly related to the quiz materials.* Continue reading