How to increase the productivity of undergraduate research assistants? 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?
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.