I remember applying for NSF’s Graduate Research Fellowship many years ago and being asked to answer a question describing my experiences “integrating research and education”. At the time, I was baffled by the question, as I hadn’t yet done much teaching. I thought: Aren’t teaching and research orthogonal? I’m told by current students that the question no longer exists in the fellowship application, which I think is unfortunate. That question has stayed with me throughout my career: I regularly re-ask myself questions about integrating research and education.
At least in the United States (and presumably elsewhere, too), university researchers are regularly asked to tie our research back to education: for example, faculty members are regularly asked to describe the “broader impact” of their research, which includes how the results of the research will be incorporated into the curriculum. I’ve learned that this is no accident; to the contrary, I think it is one of the most important (and under-appreciated) things that researchers should be thinking about.
Although researchers are sometimes asked to think about how research can be integrated in the classroom, I’ve also found that efforts in the classroom can also ultimately result in better research. In fact, although many educators are not necessarily researchers, the converse is undeniable: It is no accident that some of the best researchers are also excellent teachers. And, while some strong researchers who are not good teachers do exist, I believe that purposeful teaching effort does in fact result in much better research.
In this post, I’ll describe my views on the relationships between research and teaching, in both directions. I’ll begin with the more “obvious” notions of how our research ultimately affects education and the curriculum and continue to what I think is the less apparent (and more interesting) direction of how our work on education can also make us better researchers. Of course, teaching also helps us develop many “general purpose” skills that are also useful in research, including mentoring and supervisory skills, learning to analyze others’ understanding, learning to give feedback, and so forth. Below, I’ll eschew these practicalities and instead focus on how the relationship between research and education ultimately result in better research ideas.
How Research Affects Teaching
Research results instill fresh material in the classroom. Although some subjects we learn in the classroom are fairly well-established, many areas of computer science (and I would assume certain other fields, too) are rapidly evolving. With the rise of large content and service providers such as Google, Amazon, and Facebook; the proliferation of mobile devices; and the spread of connectivity to developing regions (to name a few developments), computer networking looks almost nothing like twenty years ago, and, while certain principles persist, the constraints of the domain and the applications of the technologies are continually evolving. Students strive for concrete examples and applications of concepts to the world that they know which is, incidentally, different from the world we knew when we were students. New research results represent prevailing theories, the outcome of our cumulative understanding, and the application of concepts to the most relevant problem domains or our time. I find that there is no better way to keep my course material current than to peruse the latest research and update the material so that it reflects current understanding.
Industry tracks research; students should, too. Our understanding continues to evolve as new research results emerge. In many areas, industry aggressively tracks new technologies and research results, and students aim will be more poised to make important contributions in industry if they are well-versed in current technologies. Students periodically thank me for covering a certain topic or concept in the classroom because “someone asked me about it in a job interview”. Certainly, there is a balance between educating our students on the big picture and “timeless” concepts (something I discuss more below), but I find that students are often quite grateful for having some exposure to the concepts and problems that industry is thinking about today. Instilling course material with fresh research results is one important way that instructors can help this process.
How Teaching Affects Research
I think the more surprising notion is that investing effort in teaching well can actually make us better researchers. I sometimes find that certain faculty members are too eager to minimize teaching responsibilities in favor of “leaving more time to get research done”. Now, it is worth acknowledging the source of this angst: many of the administrative aspects of teaching (e.g., grading, responding to student emails, organizational logistics) are incredibly time consuming and do not necessarily offer inherent benefits to research. Nevertheless, I find that the intellectual aspects of teaching are an indispensable aspect of my own efforts to become a better researcher. Below, I’ll explain more abstractly why I think teaching makes us better researchers, and, where appropriate, I’ll describe some of my own concrete experiences in this regard.
To create new knowledge, we must first master the existing body of knowledge. Research is the process of creating new knowledge. Making progress in creating knowledge requires a significant amount of background knowledge, before one can reach the “frontier” of a topic, where the interesting questions are. Herb Simon once attested that it takes about ten years of experience to get to the point of great accomplishment in any one area, simply because it takes a significant amount of time to accumulate knowledge in an area. This necessarily implies that we can’t become great researchers in a subject area merely by taking a class (or even a few classes); we must embed ourselves in that topic area. I find that teaching a subject is perhaps one of the most efficient ways to become embedded in a subject matter, since the process of explaining concepts to students leaves no room for “cutting corners” in my own understanding. The process of building understanding in a particular area allows us to develop a deep understanding the paradigms and theories that currently exist, and how those paradigms and the existing knowledge base might be extended (or amended). Teaching Ph.D. students about a particular subject matter is also a way to bootstrap research, by helping our students get to the frontier of knowledge more quickly than they otherwise would; I sometimes teach seminars on cutting-edge topics (above and beyond my teaching “requirements”) simply because I find the process to be an efficient way of helping students quickly ramp up on a topic where I would like to see more research happening.
On a personal note, I found the process of preparing a Massive Open Online Course (MOOC) on Software Defined Networking over the past summer tremendously helpful in solidifying my own knowledge in this budding topic area. This particular sub-field has seen rapid developments over the past five years, and I had found it difficult to take the time to deeply understand many of the latest developments. I found that teaching the course was a wonderful “forcing function” to familiarize myself with new technologies and ways of thinking, and to gain hands-on experience with tools that had been recently developed. My hands-on experience with development tools helped me in two ways: First, I was able to suggest better tools for my students to use in their own research; in several cases, students who had been “stuck” using older technologies quickly familiarized themselves with technologies I learned well enough to appreciate. By investing time to deeply understand how new techniques and technologies might be applied, I was able to make connections between problems we had been trying to solve in the research lab and tools that could be useful for solving them. Second, I was able to make connections between concepts that had recently been developed to help solve some problems that we had been working on that hadn’t yet been solved. In one case, for example, as I taught concepts about composition techniques for network policies, I realized that the techniques could be applied to help some of our own technologies scale to much larger networks, which provided a breakthrough on a problem that we had been thinking about for years.
In the process of explaining an existing phenomenon, you might discover that existing explanations, technologies, or theories don’t actually suffice. According to Thomas Kuhn, research breakthroughs often occur when old paradigms are discarded (or at least amended), thus changing our way of thinking about problems completely. New paradigms begin with the need to explain or treat facts or situations that existing paradigms don’t handle well. As instructors, when we attempt to explain various facts or situations to students, we sometimes find that we can’t explain why things are a certain way—our attempts to explain may reveal instances that are not handled or explained well by current paradigms, thus exposing glaring needs to develop new technologies, theories, and paradigms.
I remember my experiences as a teaching assistant for computer networking, as my advisor and I planned lessons to teach Internet routing. My advisor had long worked on problems where correctness properties and bound were well-defined (e.g., Internet congestion control). When we came to the topic of Internet routing, however (a topic on which I had some mastery as a result of a summer internship), I found him continually asking me how (or whether) Internet routing offered any guarantees of correct behavior. How could we be certain that Internet routing algorithms would actually send traffic where it was supposed to go, for example? We realized in our attempts to codify this in lecture material that no such guarantees existed! Frustrated by our inability to explain Internet routing correctness, we spent the next several years formally defining correctness properties for Internet routing and developing tools that checked Internet routing configuration for correctness. The work eventually resulted in tools that were used by hundreds of network operators and a best paper award at a top networking conference. When I think about that work, I regularly trace its success to my teaching experience with my advisor, and our initial frustrated attempt to explain some seemingly basic concepts about networking to students. If it weren’t for that teaching experience, I think that research probably would never have happened.
Teaching encourages us to think about the long road, the big picture, and what “really matters” about a particular research contribution. I aim to explain why something is the way it is, beyond simply explaining a concept. As I explained above, efforts to explain why something is the way it is might sometimes fail to produce a good explanation, opening new possibilities for research. In other cases, research may offer solutions to a problem du jour, but sometimes research projects or papers are fairly self-contained, and it takes additional thought to really establish why (or whether) a particular result has broader implications that a student might care about. As an instructor, I strive to think about the big picture, and why a student should care about a particular research result, theory, or concept five or ten years down the road, long after they have left our classroom and received their degree. This exercise of thinking about broader implications can make classroom material more palatable to students, most of whom won’t specialize in the particular field you happen to be teaching. But, it also forces us as researchers to step back and think about why the problems we are working on have broad impact and why they matter to society at large. Explaining to a classroom of students why a particular result matters is perhaps one of the most useful exercises for distilling a research contribution to its essence.
Motivated Students + Inspiring Teachers = Great Research
I admired my university professors and wanted to emulate them; they are one of the main reasons I wanted to become a university professor in the first place. Teachers can influence and affect a large number of students in tremendously positive ways. Indeed, giving students the thirst for knowledge to the point that they want to not just consume existing knowledge but make discoveries themselves is a unique opportunity that we have as educators. And, certainly, developing smart young students into the researchers of current and future generations is yet another way that our efforts in the classroom can pay long-term dividends for research.
Just as each of us develops taste in books, music, art, and food, every researcher ultimately develops a taste for research problems. Every researcher should spend some time developing “good taste” in research problems. The world has many challenging problems to work on, and as researchers, we have limited time and bandwidth. It’s therefore important to develop (good) taste in selecting problems, so that we end up working on the problems that are worth a significant investment of time and energy. Many research problems will take years to run their course, so it is worth spending some time developing taste in problems.
Many professions, ranging from designers to architects to programmers to managers, need to develop good taste. In this post, we’ll focus mainly on developing taste in research problems, although some of these tips for cultivating taste may apply more generally (in fact, some of the pointers below were inspired from an article I recently read about developing taste in design).
Cultivating your own research taste. We are not born with good (or bad) taste; rather, we develop taste by way of education and exposure to many different opportunities and experiences. Just as one might cultivate taste in other areas of life, one must cultivate taste in research. In this post, I’ll offer some tips for cultivating research taste that I’ve found work for me. Some of these tips I have discovered (and applied) by way of analogy for developing taste in other realms (e.g., music, food). I’ve spent a fair bit of effort developing taste in music; where applicable, I’ll draw some analogies below.
- Seek out others with good taste. Perhaps the most important step for developing good taste is to associate and learn from others who have good taste. These people are generally acknowledged as “having good taste” and are often easy to identify. Just as you may have friends who you know are well-read about music, wine, or food (you know these people because you’re always asking them for recommendations), the research community has “thought leaders” who are widely acknowledged as having good taste in research problems. It’s not too hard to figure out who these people are with a little research. Ask several colleagues who these people are and see whether trends begin to emerge. Poke around on Google Scholar and see which researchers in your area have highly cited articles on a particular topic. Intersect these people with those who share your interests, as well. Once you have identified others with common interests who appear to have good taste in problems, try very hard to associate, exchange ideas with, and work with those people. Become an apprentice. As a Ph.D. student, seek these researchers out as possible advisors. The Ph.D. years are perhaps the most formative for developing research taste, and your taste will likely be shaped heavily by your advisor, so taking the time to find an advisor who will develop your research taste is perhaps one of the most important decisions you will make as a Ph.D. student.
- Read trend-setting conference proceedings, and develop opinions about research problems and trends in your area. The “top tier” conferences in your area are essentially the Architectural Digest, Wine Enthusiast, or Pitchfork for your discipline. Track your conference proceedings to determine the research areas that the best researchers in your area are working on. You don’t necessarily have to “jump on the bandwagon” and start working on any of the research areas that are the current hot topics at this year’s conference—just as you might not spend several hundred dollars on the latest wine that’s reviewed or go right out and buy every new music release—but it certainly doesn’t hurt to learn about the latest trends, even if you don’t always resonate with them. Exposing yourself to the latest trends and developing opinions about them (positive or negative) is an important step in cultivating research taste. It’s typically not necessary to read the entire conference proceedings to get a feel for what’s going on in an area; simply looking at the names of sessions and groupings of papers can help you quickly identify areas that are receiving a fair amount of attention from the community.
- Sample and experiment with abandon. Developing taste in any genre involves gaining exposure to many different examples, good and bad. Just as it’s much easier to appreciate a truly fine wine, dish, or performance after having seen mediocre offerings, since every experience allows us to better articulate what we do or don’t like, sampling a wide variety of research problems (and solutions) is a necessary step for developing taste in research. In developing taste in music, I find myself reading continually about new artists and albums and listening to new material that pushes boundaries in new ways, and sometimes subjecting myself to music that in the end I might decide I don’t like all that well. Similarly, in research, we must continually experiment and sample to develop and cultivate our taste. It can be tempting (and certainly easier) to “turn the crank” on problems that we know how to solve, but ultimately this will result in research that becomes stale and boring. As researchers, we should be continually learning about new techniques, tools, problems, approaches, and so forth. We will likely find that some topics, areas, and solutions we encounter are incredibly boring, but those “bad samples” ultimately help us determine what aspects of a research problem or solution we do or don’t like.
- Keep a list of ideas that you like and exchange your favorite ideas with colleagues. Keeping lists of things you like is good; exchanging them is even better. Every year, I tabulate a list of my “top 10” music albums for the year; at the end of the year, my friends and I exchange lists. The list is fine, but making the list is actually more important. Knowing that I am going to be exchanging a list of music with friends at the end of the year keeps me accountable and ensures that I am always “on the lookout” for new gems. Similarly, making lists of neat research ideas and regularly exchanging them with colleagues is another way to ensure that you always have a healthy appetite for new, creative ideas. I don’t exchange lists of research ideas, although perhaps I should; I do, however, regularly exchange papers, articles, and ideas with a small, trusted group of colleagues, often multiple times a week.
- Attend conferences. Just as a music enthusiast attends live concerts or a book enthusiast might attend a reading, as a researcher you should attend research conferences. I think it is worthwhile to attend at least one major research conference in your area every year. Attending a major research conference ensures that you are staying current with research trends (in case you’d like to “watch the movie”—that is, attend the talks—instead of simply poring over the conference proceedings). Perhaps more important than attending the talks, however, is meeting other researchers. Conferences are excellent places to seek out others with good taste, and to have conversations with other researchers that can help you develop opinions about various research problems and areas. These conversations and interactions are all part of the process of developing taste as a researcher.
- Consider the principles and theories that underpin a specific research paper or project. No research paper (or project) is perfect. In fact, most papers are flawed, and many are badly flawed. Yet, papers are often published not for the particular artifact that they produce, but for some underlying concept or idea that they embody or espouse. When reading research papers, it is far too easy to be dismissive of a paper because of a flaky implementation, a bogus evaluation, or poor exposition. Try to dig a bit deeper and understand the value that reviewers might have seen in a particular paper. For example, a paper may develop a new theory or changes our way of thinking. It might open new avenues for research. It might be applicable across many disciplines. It might frame an old problem more clearly. Look beyond the flaws of a particular instantiation of an idea and consider whether the underlying theories or concepts of a particular approach or solution have value.
Evaluating your experiences and encounters. Simply having exposure to many research problems and areas is not sufficient to cultivate taste; you need a way to evaluate each new research problem, paper, or area that you encounter. Just as a connoisseur develops metrics for evaluating a new piece of music, a new book, a bottle of wine, or a restaurant, we need to have yardsticks for evaluating research papers and problems. When evaluating research that I encounter, I consider the following questions to help further develop my taste. The answers to these questions are subjective (i.e., reasonable people may disagree about the value of the same piece of work), but they can nonetheless help you articulate why you like (or dislike) a particular research problem or solution.
- Is the problem important? Of course, “important” is subjective and defined by your own set of values. I personally like problems of practical importance. For example, if the solution to a problem would ultimately improve a network’s performance, security, or availability and could affect the lives of a large number of people in a meaningful way (e.g., developing better spam filters, circumventing Internet censorship), then I deem the problem as important.
- What is the “intellectual nugget”? I like research problems (and solutions) that have a simple, elegant solution that’s intellectually profound and easy to articulate. That might sound trite, but there are plenty of research papers (and researchers who write them) that involve a hodge-podge of solutions with no crisp intellectual contribution (e.g., “We encountered problem A, so we applied X. Then, we encountered problem B, so we applied Y.” Repeat ad nauseam.) In my opinion, many of the best research problems (and solutions) can be succinctly summarized in a single sentence. I value simplicity. You may not, just as some designers like ornate designs and others prefer minimalist ones.
- What is the solution or main conclusion? Is it important? Although I believe that the size of the problem is at least as important as the goodness of the solution, it is worth considering whether the solution is important, usable, or worthwhile, as well. Just as “important” is subjective when evaluating problems, the importance of a solution is also subjective—perhaps even moreso than the importance of a problem (which at least might have the benefit of some community consensus if the problem has been studied for long enough). Determining the importance of a solution is really difficult, even for people with developed taste. In fact, sometimes developed taste might allow us to overlook a particularly new or innovative solution, just as we can become comfortable with a particular genre of music and fail to recognize a true gem when something disruptive appears. The establishment is particularly bad at recognizing disruptive breakthroughs because they are used to thinking according to established paradigms. Our failure to reliably recognize good solutions is perhaps one of the biggest flaws of the peer review system. (More on reviewing in a later post.)
- Does the content support the conclusion? Does the content of the work actually support the solution? Are the methods sound and state-of-the-art, or have they since been obsoleted (an example of this in networked systems is the now-questionable use of simulation, which has been obsoleted in favor of prototyping and, more recently, operational deployment). What assumptions does the paper make, and if those assumptions change over time, do the conclusions still hold, and are they important? (For example, one might ask if a system that assumes the deployment of a particular protocol is still important if that protocol is never deployed, or is currently deployed but likely to be replaced.)
You might have a different value structure for what you think is an important research problem or solution and, hence, you might have different taste in problems. It’s important to articulate what you think is important, and taking some of the steps outlined above will help you refine your answer to these questions.