Caleb Voss, a senior in mathematics and computer science at Rice University, won a 2016 National Science Foundation (NSF) Graduate Research Fellowship after spending his undergraduate years working in the robotics lab of Lydia Kavraki, Rice’s Noah Harding Professor of Computer Science and Bioengineering.
Voss enjoys the creativity found in designing algorithms to solve problems. “You always start with a problem,” he said. “Maybe it changes over time or takes on a life of its own, but there is always a goal you are working for. The amazing part about research is that you never quite reach that goal, there is always more to discover, more to explore.”
Voss credits the research opportunities available to Rice undergraduates as a big part of his successful NSF GRF application. “I worked closely with Dr. Mark Moll, tossing ideas back and forth about the research.”
Moll, a research scientist and adjunct assistant professor of computer science, oversees the open-source library that Voss worked on the summer after his freshman year, and is closely associated with the Kavraki Lab. “He was always available to talk about what I was working on and to give me guidance,” said Voss, who added that Rice faculty members are invested in their students.
“You can definitely tell from the way that Lydia and Mark treated me from the first day,” said Voss, “that they really care about the success of their students, both undergraduates and graduates. They invited me to their weekly meetings, connected me with grad students to talk about their research, and Lydia took me to a conference she was chairing, so I got to see behind the scenes and learn how that works.”
Although his research in the Kavraki Lab focused on robotics algorithms, the work of several graduate students in the lab made Voss consider the more theoretical side of programming. “Their research was drawing on some ideas from formal methods, and that really caught my attention,” he said. “I started looking into programming language theory on my own time.”
His passion for theoretical research was reinforced by several summer experiences, including an internship at Google. Voss said, “I had fun at Google, but I discovered it wasn’t for me. My role there was writing code as a small part of a very large and influential company, but I didn’t feel I was contributing to the world as much as I could in research.”
Programming language theory researchers must justify why their work is relevant. Voss said, “It isn’t sufficient to think only one step ahead. Instead of thinking about how my research fits into our current world, I need to consider how my research will change how the world works. That is when theoretical foundations are powerful and have a lot of impact.”
In his application for the NSF GRF, Voss demonstrated his passion for this type of research. Because he is a dual math and computer science major, he asks questions like what can be proved about programs and how can it be automated. “The mathematician in me likes to talk about how beautiful and elegant computer science is as an outflowing of mathematics.”