I supervise a few undergraduates doing independent study and internships in Computer Science. Some of their tasks are to assist me with various back-burner research projects. I can offer them college credit in exchange for their work. However, their labor is difficult to utilize. Their commitment may only be for a few hours a week, they can take a long time to ramp up work, and they sometimes disappear mid-semester. What strategies are out there to make the most of working with this mercurial resource?
I've had a lot of undergrads in my lab (physics). Unlike Corvus, I'd say that certainly more than half have been net positives to the group's research, and several have been very productive. The two most important things, I would say, are:
A lot of direct contact and guidance -- not by email, but actual conversation -- either (ideally) from you (the PI) or from graduate students committed to the project and to mentoring someone. Simply being clear about tasks to be done, etc., is insufficient; every new researcher comes in without a good grasp of the motivations of the field, the challenges of exploring something new, etc., and these are only surmounted by talking to people. Several times, I've had great conversations with undergraduates in which I point out that I'm thrilled that their experiment has failed, because now they can better understand what doing science is like, and they can pick themselves up, learn from what happened, and try again, and this is what makes them 'real' researchers.
I require a commitment of more than a few hours a week. If people aren't putting this in, we chat about the impossibility of having a meaningful project, and, again, learning how to be a 'real' researcher. Sometimes people drop out (or I ask them to leave) if the motivation to do this isn't there. There's no point in mentoring someone who can't commit real effort, and it doesn't do them or you any favors.
Your question is a great one. Best of luck, and please don't think that mentoring undergrad research should just be a net-negative "service." It does take a lot of work, but it can pay off!
Accept that what you are doing when working with undergraduate researchers is teaching and developing young scientists. Make that mental shift, and your view of productivity changes enormously.
Even the very best undergraduates I've had -- students who now have R1 faculty positions or equivalent -- were time-sinks at first and break-even after a year or two as undergraduates. But increasing productivity is not why I invited them into the lab. What was so cool was to see them turning into independent scientists while in my lab.
I suppose if you really care about productivity rather than developing scientists, assign them very simple tasks: scraping data or building interfaces or whatever. But if you can manage to see productivity as students building skill and confidence in independent research? The sky is the limit.
I'm the undergraduate.
Props to you for offering undergraduate credit. Now, do they get charged tuition? If yes, keep in mind they pay to work for you. The I haven't worked on a project for credit or pay. I've done it for a resume booster. Between classes, work, extracurriculars, and other researcher's schedules, I can't always get things done every week. But I donate my time when I can.
Do your students know what they need to do? I worked on a project where I saw the professor exactly once: at the initial meeting. I could ask him questions via email but we were on our own and winging it. We had a manual, but not the required knowledge. When we got into that project I realized he needed circuit design people, and none of us had taken a circuits class. He knew circuits and I think he thought we did too. Make yourself available to help. People rarely admit when they struggle with stuff; are you regularly checking in with them to make sure they're not in over their heads? This gets critical they work on open-ended research where they don't have a hard deadline and they know someone else will pick up where they left off. They might get lost and figure the next person will figure it out.
Yeah, undergraduates get lazy. If we didn't suck at time management and had the drive almost everyone would graduate in four years, and plenty would graduate in three years. Your researchers 20-nothings surrounded by other 20-nothings. Not a recipe for responsibility. If they ghost on you, send them an email. Don't start with "Why aren't you working?" Start with "How's the project? How are you?" They might be buried or burned-out by the middle of the semester. Cut them some slack. They might be struggling with their classes and the research.
And make sure you got the right undergraduates. That probably sounds stupid, but the project I mentioned—it sounds like I'm ragging on it, but I mostly enjoyed it—I thought the professor brought me on to write the software. He needed people who knew Python, Matlab, and C++. He had his grad student write all the code, and me and the people I worked with did all the hands-on construction. I only wrote some Java code (a language I didn't know, and it took way too long for me to write a dozen lines of working code) and we didn't use it. By the middle of the project I didn't know why I was there.
I've had very productive undergraduates helping my team with software development and data input for research projects.
As others have pointed out already, high productivity is not the main aim of the exercise. Obviously experienced professionals will almost always do the job much more quickly and accurately. I would even advise against focusing on productivity too much as I have seen situations where I had to completely rewrite some of the substandard code some trainees had written in a rush. You can't expect both quality and speed for high level tasks.
If the student can spend only little time on the project, I'd recommend sticking to simpler, narrowly scoped tasks which may be more repetitive and less creative but nevertheless valuable. That still requires preparation in defining the task and describing it very clearly.
Of course some students are more talented or motivated than others but I've realised that the more effort, regular face-to-face communication, early troubleshooting you put into it the better the results and the satisfaction for everyone.
Research projects can appear extremely specialised or even useless, particularly to non-experts eyes. Making sure they understand the whole picture, how your project fits into it and what their contribution helps you achieve is essential in giving them a meaningful and motivating sense of purpose, helping them make the right choices and think more broadly.
Trusting their sense of initiative and their ability to come up with their own solutions can also be rewarding. I've often seen students suggesting more efficient workflows and approaches or being critical about the system they have to work with. One advantage they have over you is that they are very close to what they produce and every scientist knows that this a privileged perspective from which new ideas can emerge. And having new ideas, for academics, is very productive.