This past semester, I taught a user interface course (basically, an intro to HCI class with an app development project). I tried something a bit different. Instead of letting students come up with their own projects, I asked them to select from a set of local community partners that needed apps developed for their non-profit organizations. I worked with our community engagement program to recruit organizations and also sent out a few feelers myself. Here is the final list of community partners and the mobile apps the students developed for them:
- Communities United Against Police Brutality: an internal app for managing their social media calendar and online presence; an external app as a guide for civil rights when dealing with the police.
- Dakhota Language Society: a vocabulary quiz game app; a storytelling app for reading/listening to Dakhota folk tales in both Dakhota and English.
- Early Childhood Family Education: an app to help the parents and educators easily message each other, potentially anonymously (i.e., like YikYak for parents).
- Frogtown Green: an app for capturing and reporting illegal trash dumping in the neighborhood to the city.
- Campus Wellness Program: several apps for tracking activity and program points. This project was not done with a community partner but rather with a university faculty member interested in this domain.
- All Parks Alliance for Change: curated community F.A.Q. and community support forum app for people living in mobile home parks in the Twin Cities Area.
- Hope Community Outreach: two apps for literacy outreach, one to provide curated learning resources to parents and another for vocabulary practice for kids; one app for the youth gardening program to help children plan and budget a vegetable garden.
At the end of the semester, I surveyed both community partners and students about their experiences. I’ll share the findings below…
Six of the organizations responded to the questionnaire and the responses were largely positive. All of them agreed or strongly agreed that this program should continue in the future, that they would recommend that other organizations participate, and that the students met or exceeded expectations on the project. However, there was some mixed feedback about how the expectations were communicated, with two of the groups not being sure about what to expect from the student teams. Additionally, there was some confusion about who should be a regular contact point for students, with some groups not roping every relevant person into the process (particularly common when the organization included both community and university partners).
Sixty students responded to the questionnaire as well. I was interested in understanding how community projects affected the students’ learning, with two competing theories that could be influencing this. On one hand, the learning theory of constructionism suggests that students work best when working on personally meaningful projects. Indeed, 25% of the students agreed or strongly agreed that they would have preferred to choose their own project. On the other hand, the theory of thick authenticity suggests that students learn well when they view the work they’re doing as authentic and in line with “real world” work. 83% of the students agreed or strongly agreed that working with community partners made them see the project as realistic and authentic; additionally 73% of the students felt that the work was contributing to a bigger cause. However, only 54% agreed or strongly agreed that working on a community project helped them learn. Overall, the class was split: 62% agreed or strongly agreed that future classes should do this, 30% were neutral, and 38% disagreed.
Why did the students who were negative about the idea respond this way? Looking through the free response comments, the major con of working with community partners mentioned by the teams was that scheduling was a pain and that the partners were not technical enough to help guide the project. I see this as a pro, not a con of working with community partners! If there is anything this class is supposed to teach the students it is that working with real users is tough and requires a different set of skills than just programming! The second issue mentioned by the students was that there was a great deal of inconsistency between the partners and teams in terms of partner commitment and availability. This is actually a valid and real problem! I tried to grade around it, but this is certainly something that I would like to level if I am to try this again in future iterations of this course.
Will I do this again? I will likely try this again in some shape or form in the future, but I think I will need to make more of an effort to create a better experience for the students. I think it would be reasonable to set more specific expectations for the organizations that want to participate in the program, particularly in terms of scheduling and availability to meet and work with the students.
Have you ever tried something similar in one of your classes? How did it go?
During each of my degree programs (two masters and a PhD), I took several classes like this. I personally found that it was too taxing to try to learn a whole new subject (like HCI or qualitative research) while engaging in a real world project. This is especially true within the constraints of a school term. It takes several weeks to just start to get a feel for the theory behind the topic but during that time you also have to be planning the community project. I always felt like I didn’t know enough to plan properly. So then the project would go poorly because we hadn’t accounted for things, which is frustrating and off putting. Maybe mashing theory and practice into one term is just too much. I know it’s hard to get two-term classes but how cool would it be to have a term of theory and planning, followed by a term of implementation, with practitioner guest lectures, hackathon classes, etc. I think the whole real-world-experience-on-the-first-try is highly overrated. You don’t take a student driver to the freeway on the first lesson!
I think that’s a good point but I also think that it’s a question of expectations… We don’t take student drivers on the freeway because the cost of failure is death (theirs and others). In learning situations, failure is usually an excellent way to learn. Of course, that means that both the students and the community partners need to have expectations that are properly scoped for this possibility.
There was an edited book a few years back with stories about similar efforts at many other universities. I wrote a review of it for the Michigan Journal of Community Service and Learning. https://www.questia.com/library/journal/1G1-327813724/service-learning-in-the-computer-and-information-sciences
One of the recurring themes was that the drive for authenticity requires that the apps be truly useful to the clients, which requires continuity beyond a semester. There were various attempts to solve that, but all required something beyond the student labor during the course. I think Cliff Lampe has found the same thing with his Citizen Interaction Design course.
Thank you for sharing this! I totally agree that sustainability is key. I don’t have the infrastructure for that right now, but I may reach out to Cliff to see what he needed — my department head is very receptive to this kind of stuff. The way I framed it to the organizations was that they’d get a start on an app, but that it may need more work to keep meeting their needs. I suggested that they attempt to recruit the students from the project team as volunteers or for pay to do maintenance as time goes on. But, they organizations also got all the source code and documentation, in the case they want to get somebody else to look at it..