Tuesday, February 26, 2013

What makes a good undergraduate research project?

First, I am no expert. I have probably supervised less than a dozen undergraduate projects in my whole career.

What should be the primary goals? Hopefully, the student will
  • learn some science (including some combination of concepts, theory, and techniques)
  • learn something about how research is done (searching and reading the literature, trying different things, asking good questions, making mistakes, brainstorming, ...)
  • experience some of the joys and frustration of doing science (including feeling dumb).
  • get to personally interact with a range of scientists (faculty, postdocs, grad students)
The dominant goals should not be:
  • use the student as slave labour
  • get a publication
  • keep the student happy
  • recruit the student to do a Ph.D in the same group
Projects I don't like include ones which
  • are highly technical [the students learns a lot of jargon or advanced techniques but does not know the basics, or context]
  • mostly use prepackaged software (e.g. for computational quantum chemistry) [knowing something about what software is out there and how easy it can be to use can be a good thing, but it becomes dangerous when the student does not learn its limitations or the underlying principles. or if they start to think running code is doing research].
  • are just too hard or speculative for undergraduates and they get nowhere.
  • are so straight-forward the supervisor knows the answer before one even starts. they just need a slave to turn the handle...
Projects I like
  • are as simple as possible
  • illustrate important concepts
  • allow the student to actually understand what is going on
  • connect theory and experiment 
  • challenge the individual students preconceptions and prejudices [e.g. theoretical physics is just mathematics, theorists should not worry about experiment, I can't do units, I don't want to do any computational work ...]
In some sense, this post is largely meant for supervisors. My main advice to students is: choose the supervisor NOT the topic.

I welcome comments, both from supervisors and those who have experienced good and bad projects.


  1. i think elasticity is also very important. By that I mean that the depth and challenge should stretch to fit the talents and, to a lesser degree, work ethic of the student. A weak student should still be able to learn something, but a really strong student should be able to get into things in a qualitatively different way, that should allow them to make a significant advance in research. I think this is very difficult to achieve in practice.

    Also I'm not sure I agree with your comments re computational chemistry. I don't think the problem is pre-packaged software. (I don't think having a student write their own DFT is a great idea - unless you are after a programming project and have something new to "say" about DFT coding.) I think the problem is _anyone_ running DFT as a black box. Running code is a valid part of doing research, but the real work starts after the computer stops. Much like doing experiments. (I think lots of [bad] experimental projects seem very equivalent to just running pre-packaged software.)

    1. Hi Ben,

      Thanks for the comments.

      I agree elasticity is important, but difficult to achieve in practice.

      I am not suggesting students write their own code. Just that the project should not be largely about running software. I have noticed with concern that some astronomy projects seem to have that tendency.

      I also agree with the concern about "pre-packaged" experiments.

      I lot of this seems to boil down to: is the goal to give the student an education or use them as a "slave".

  2. Based on my experience with research as an undergraduate, and now supervising undergrads as a PhD student, I want to add a few points.

    I think it's important for undergraduates to be able to make a minimum useful contribution in a short amount of time, after which the project can be expanded depending on the interests and motivation of the student. The deeper you go in research, the less frequent and more hard fought are the real breakthroughs in understanding. We get used to that, but in undergraduate classes, problems rarely take more than a couple of days to solve. I think it is easy for undergrads to become discouraged if projects are too ambitious or ill-defined at the outset. Having something they can accomplish right away not only helps with motivation, but it also gives them something to build on conceptually. It's very hard, as an undergraduate, to grasp the full context of a project without first getting your hands dirty, I think.

    I will give some examples:

    In chemistry labs, it is common to teach undergraduate students to complete the first couple of steps in a reaction sequence. This is very well defined, and important to the research. In doing so they will have faced a few synthetic challenges (although usually the chemical recipes are very well known), and gained some technical skills. Later steps in the sequence will rely on clean materials, so the undergrad must be able to defend the quality of their work with various analysis. Most importantly though, having their foot in the door allows the supervisor to explore the themes of the research with them: "Here's how we use your material in later stages of synthesis / Here's why we asked you to put this functional group / Do you think it would be possible to make your product with a different functional group? / What are we ultimately trying to achieve?" The answers to these questions in discussion with the members of the group can help to shape their project.

    I also agree with Ben that, in some cases, running prepackaged code can be a good starting point for undergrads, as long as it is approached in the right way. There are some technical challenges - deciding on the right method, getting good convergence, etc. - and the student learns a useful skill. Once the student has seen the results of a series of calculations, they can begin to develop an intuition, and themes can be explored with the supervisor, "What did you find is the effect of changing certain parameters? / What is this calculation actually doing? / Is it a good method for the problem? / Does it match with experiment or general understanding in the field? / What new insight do the results give us? / How can we improve it?"

    I read somewhere (maybe this blog) that one of the most important factors in motivation of students at any level is that they feel the project is THEIRS. In this sense, I think the ideal project for an undergraduate 1. gives them sole responsibility for a small and manageable chunk of a larger project, 2. immediately teaches them a useful skill, and 3. allows them to help shape the future directions based on skill/interest/motivation.

    1. Hi Steve,

      Thanks for detailed comment. It is great to hear an experimental chemistry perspective.

      I like all your observations. The one about ownership was not on this blog, but is a very important one I had not thought of.