Until a few months ago, Eleis Lester – volunteer coordinator and manager of operations and development for The Haven, a non-profit day shelter for the homeless located just off Charlottesville’s Downtown Mall – had to schedule the shelter’s 900 volunteers almost entirely by hand, taking into account vacation leave, sick days, individual preferences and other logistical stumbling blocks.
Now she just gets her robot to do it for her.
A team of six University of Virginia students designed Lester’s robot – actually an automatic online volunteer scheduling system that runs almost entirely without her oversight – as part of their participation in the Computer Science Department’s Service Learning Practicum, a two-part course in which students build software to help local non-profits solve their real-world problems. Initiated in spring 2012 by associate professor Aaron Bloomfield, the program recently completed its third year, executing projects for local non-profit organizations selected via an application process.
Bloomfield, a former board member of Madison House and no stranger to the non-profit world, conceived of the program as a way to provide fourth-year computer science majors with a defined capstone course and an alternative to the independent technical project required by the School of Engineering and Applied Science. He said the main driving force behind the Service Learning Practicum was a desire to use his expertise in a way that he never could as a member of the Madison House board.
“Beyond my board duties, I was able to help with their computer setup, but I didn’t feel that I was really able to use my skill set of teaching computer science,” Bloomfield said. “[The Service Learning Practicum] is a way for me to use my training, what I’m good at, to help the community.”
This year, the course – which lasts the entire academic year and consists of a technical lecture portion, weekly group meetings and frequent meetings with the non-profit clients – matched groups of about six students with one of 15 non-profits, each of which submitted a project proposal outlining a need. Bloomfield sees the ongoing interactions with a real client as the key to the Service Learning Practicum’s hands-on educational experience.
“It’s a real customer – it’s not an instructor that knows exactly the answer,” Bloomfield said. “The customer often has no knowledge of computer science. Their requirements change all the time.”
Bloomfield’s central educational goal is that these fourth-year students – who typically have not had a chance to develop software for use by a real customer – will learn to take a computer program through the “software lifecycle,” a series of stages in software development where developers identify a problem, write a program to solve the problem, deploy and test the software, and finally support the program once it’s up and running.
“They read about it, they study it, but here they really get to experience it,” Bloomfield said.
Zachary Verham helped design a client tracking system for The Arbor Charlottesville, which provides long-term housing and care to female sex trafficking survivors. He said that students had to keep track of the organization’s long-term requirements in a way that couldn’t be replicated in an in-class assignment.
“Our hope is that the system will be useful for years to come, which meant making most of it customizable,” he said. “That introduced a lot of additional complexity to the project, but it was well worth it to make the system actually useful in real-world practice.”
Alex Aberman, who worked with Lester to build The Haven’s volunteer scheduling system, said that meeting with a real client enhanced the group’s motivation to succeed.
“It felt like we were actually accomplishing something,” Aberman said. “We really cared that we weren’t giving this charity a broken app.”
“Because they’re so bright, [the students] had a great sense of not just the project that they were working on specifically, but they understood that it was part of a larger context,” Lester said.
Aside from computer programming and project management skills, Bloomfield said he hopes the Service Learning Practicum gives students a broader appreciation of how computer science can benefit the community and helps them defy the stereotype of the computer programmer.
“The stereotype is someone sitting in a cubicle doing nothing but programming away,” Bloomfield said. “I think computer science has the power to transform so many things and really can be used for a good social impact.”
“This project felt much more fulfilling than projects we’ve built in other courses,” Verham said. “It felt like the work we were doing actually amounted to something outside of the classroom, which was really cool.”
The program is accepting applications from non-profits to participate in the 2015-16 program. The application is open at the Service Learning Practicum’s website until July 15th.