Computer Science

Computing for the Social Good

Michael Goldweber, PhD
Mission Academy

The Landscape
Broadening participation in computing, which is believed to be vital to America and Ohio’s both continuing economic health and high tech leadership, is a difficult problem. There are a number of observations that can be made in this regard.

  • Jobs requiring computation skills are the fastest growing and the best paying. 2012 marked another year where all Xavier computer science majors had secured lucrative employment prior to graduation. With salary ranges from the mid-40’s ($k) and up, many computer science graduates had multiple job offers to choose between.
  • Five out of ten of the most in-demand jobs are in computation-related areas.
  • Approximately 70% of all future jobs in Ohio are expected to involve computation1.
  • Computing-related degrees declined 47% between 2004 and 2009[25]. Sadly, Xavier’s own computing programs suffered similar enrollment declines.
  • Initial data indicates that the computing enrollment decline reversed in 2010-2011[25]. Fortunately, Xavier’s computing programs also mirror this trend. The number of incoming freshman indicating a desire to study computer science as of May 2012 is approximately twice the number from May 2010.
  • One respected study reported that STEM (Science, Technology, Engineering, and Mathematics) oriented high school students described (their perceptions of) the computing discipline(s) as boring, tedious and irrelevant[15, 24]. This study did not address other common misunderstandings regarding computing; gender stereotyping, general misunderstanding of the discipline, job opportunity myths –including outsourcing, perceived professional daily activities and responsibilities, lack of meaningful role models, relevance to students’ lives, the un-coolness factor, and the supposed need for the geek gene.

Despite the abundance of lucrative employment opportunities, even during the height of the Great Recession, it was reported that students selected social science majors at a rate of 4x over computing2[4]. Over the same period, there were roughly 4x more job opportunities in computing over those with degrees in the social sciences[5]. Most importantly, the Buckley study went on to conclude that students select a major (intended career path? ), in large part, based on their desire to have a positive societal impact.

The Computing Community’s Response
To combat the decreasing participation in the computing disciplines, many outreach programs, mostly aimed at the secondary school audience, were created to dispel student misconceptions regarding the discipline. These include CS-Unplugged[1], CS4FN[7], LEGO League(s)[16], Digital Divas[6], Project Impact[18, 11], the Computer Science Inside Project[8], and the Bebras contest[9]. This partial enumeration does not include the design, development and eventual (effective? ) utilization of visual programming tools such as Alice[21], Scratch[20], and Kodu[19].

Furthermore University-level computing curricula, particularly the introductory course sequence(s), were redesigned around themes believed to be more “appealing;” e.g. game programming, mobile application development, and media manipulation/computation[14, 23]. The goal of these initiatives is to place computing in the context[17] of students’ lives. Students use portable digital music devices (i.e. iPod), play games and download/install mobile apps by the dozen so a curriculum that mirrors these activities might be successful at broadening participation. As one might imagine, the computer science education (CSE) literature is full of different approaches to CS 1.

Unfortunately these initiatives do not speak to students’ values nor does it exploit the finding that students’ desire to have a positive societal impact is a strong determinant regarding their selection of major[4]. Consider the late-night gathering in a dorm lounge where students from many divergent disciplines gather while taking a break from their respective studies. Imagine that each student, in turn, describes to the group the project they are working on (most likely in the hope that each student will successfully convince the others that indeed their project is hardest/most demanding). The Chemistry (or Biology or Pre-Med/Natural Science) major complains about Organic Chemistry and how far removed the mastery of this difficult course is from the daily demands of a medical doctor or veterinarian. The social work major complains about her day spent doing field work at the local hospital where she spent her time coordinating social services for newly discharged patients. The early childhood education major complains about a day spent shadowing a master teacher across town. The engineer discusses a resource constraint problem involving clean water technology for rural African villages. Even the physics major gets in on the act complaining about the complexities involved with unraveling the mysteries of matter and space. Finally, the computer science major shows off her almost complete Android-based replica of Fruit Ninja.

This paper proposes infusing computing curricula with a “Computing for the Social Good” (CSG) perspective[13]. CSG is an umbrella term meant to incorporate any activity, from small to large, that endeavors to convey and reinforce computing’s social relevance and potential for positive societal impact. This approach taps into reported students’ desires to pick a major which they believe will allow them to have a positive societal impact; as opposed to the misunderstood belief that computing is irrelevant. Furthermore, as demonstrated by the Glitz project[10], success in broadening participation may be improved when computing is shown to connect with students’ values rather than their interests.

Computing for the Social Good
The goal is not to redesign the whole computing curricula. Rather through the judicious use of various activities one can clearly illustrate the relevance computing has for making a positive societal impact. Such activities include;

  • In-class activities. Typically, the first day of any introduction to computing course begins with an exercise illustrating the importance and power of algorithms (and algorithmic thinking). Some of these illustrations can be humorous: have students design an algorithm for constructing a peanut butter and jelly sandwich which a volunteer “executes”(i.e. acts as the computing agent) at the front of the class[22]. Other popular such illustrative activities include acting out the function (algorithms) for a vending machine or the playing of blackjack[2, 3].

Instead, one might employ a CSG activity, e.g. The Reuniting Families Problem[12]. For this first day activity, the class is asked to consider a (natural) disaster, e.g. hurricane, tsunami, earthquake, terrorist attack. Furthermore, the location is a smallish city. Regardless of the specifics of the disaster, the local uncovered soccer/football/rugby stadium is left intact and the aid workers have directed all survivors to congregate at this single undamaged stadium. It is assumed that the stadium is sufficient to hold all the survivors. The students, working in groups (e.g. 3-4) must devise a protocol, i.e. algorithm, for the aid workers to use to reunite the survivors of each nuclear family unit.

  • Re-think motivating examples. A perusal of the set of popular database systems textbooks reveals only three different, recurring motivating/pedagogical examples: airline reservation system, college registrar system, or a banking environment. There is no reason why the recurring example used in the database course could not be the inventory system for the Red Cross. Most recently, the author used a “missing child database” as a recurring example. Interesting, the students objected because as the model became more and more realistic, the students felt that the topic was too depressing. Similarly, an AI course could focus on robotic techniques to aid the elderly or to perform remote planetary exploration. With a little imagination, one can envision the whole corpus of game and/or corporate motivating/pedagogic examples being replaced with CSG examples.
  • Redesign programming projects. Computer science is a learn by doing discipline. Hence, most computing courses are structured around a small set (e.g. 3-5) of large projects. Since these projects are where the students have the greatest degree of engagement with the material, utilizing CSG-oriented projects might have the greatest impact. Fruit Ninja might be replaced by a bioinformatics (e.g. gene sequencing) project, Space Invaders could be replaced with a complex predator-prey simulation modeling biodiversity constraints, and a robotics project could be based around engineering an automated home fire fighting device.
  • Service Learning. There is service learning, academic-based service learning, and disciplinary-based academic service learning. Computing is more of those unique disciplines where disciplinary-based academic service learning is possible. The software engineering course typically employs semester-long student-group projects. There is no reason why these projects could not be CSG-based. While the creation of an electronic “ride board” is both pedagogically relevant and utilitarian, the same could be said for a medical database project to assist a local non-profit manage medical clinics in rural Honduras3.

No formal assessment of CSG activities have yet been undertaken. Nevertheless, there is some informal assessment that can be presented. An informal survey administered after the Reuniting Families exercise yielded a great deal of surprise on the students’ part.

  • That computer science is not solely concerned with the programming of games and billing systems.
  • That “algorithimics” is an ancient human activity.
  • That computer science is not just relevant to commerce and that the discipline has an important role to play in humanitarian pursuits.
  • That computer science might just be more interesting than originally thought.

Efforts to broaden participation must affect undergraduate curricula as a whole. The myth that computing is only relevant for the solo programmer working to develop the next killer app (e.g. Mark Zuckerberg) is a powerful one that unfortunately gets reinforced by the popular media. CSG activities are one way to counter the negative myths and illustrate the deep connection between algorithmic problem solving/computing and being able to have a positive societal impact.

 1See the U.S. Bureau of Labor Statistics for all three points.
 2This provides some context for the recent widely reported study conducted by Drexel University and the  Economic Policy Institute that more than 50% of recent college graduates under the age of 25 are either jobless or underemployed.
  3All the examples discussed in this section, except for the Red Cross database, were taken from Xavier classes over the past couple of years.

[1] Tim Bell. Computer science unplugged.
[2] Joe Bergin, Mike Clancy, Don Slater, Michael Goldweber, and David B. Levine. Day one of the objects-first first course: What to do. In SIGCSE ’07: Proceedings of the 38th SIGCSE technical symposium on Computer science education.
[3] Don Blaheta. Day one of the objects-first first course: What to do. In ITiCSE ’09: Proceedings of the 14th annual ACM SIGCSE conference on Innovation and technology in computer science education.
[4] Michael Buckley, John Nordlinger, and Devika Subramanian. Socially relevant computing. In SIGCSE ’08: Proceedings of the 39th SIGCSE technical symposium on Computer science education.
[5] Anthony P. Carnevale, Jeff Strohl, and Michelle Melton. What’s it worth? the economic value of college majors.
[6] Annemieke Craig and Julie Fisher. Digital divas club.
[7] Paul Curzon, Peter McOwan, and Jonathan Black. Computer science for fun.
[8] Quintin Cutts, Muffy Calder, and Peter Dickman. Computer science inside... bring computer science alive.
[9] Valentina Dagiene. Bebras contest.
[10] Betsy DiSalvo and Amy Bruckman. From interests to values. Communications of the ACM, 54(8), 2011.
[11] Mary Anne L. Egan and Timoth Lederman. The impact of IMPACT: assessing students’ perceptions after a day of computer exploration. In ITiCSE ’11: Proceedings of the 16th annual conference on Innovation and technology in computer science education.
[12] Michael Goldweber. A day one computing for the social good activity. Under review for publication in the ACM Inroads, 2012.
[13] Mikey Goldweber, Renzo Davoli, Joyce Currie Little, Charles Riedesel, Henry Walker, Gerry Cross, and Brian R. Von Konsky. Enhancing the social issues components in our computing curriculum: computing for the social good. ACM Inroads, 2:64–82, February 2011.
[14] Mark Guzdial. A media computation course for non-majors. In ITiCSE ’03: Proceedings of the 8th annual conference on Innovation and technology in computer science education.
[15] Mark Guzdial. Teaching computing to everyone. Communications of the ACM, 52(5), 2009.
[16] Dean Kamen and Kjeld Kirk Kristiansen. First lego league.
[17] Jennifer S. Kay. Contextualized approaches to introductory computer science: the key to making computer science relevant or simply bait and switch? In SIGCSE ’11: Proceedings of the 42nd SIGCSE technical symposium on Computer science education.
[18] Catherine Lang, Annemieke Craig, Jane Prey, Mary Anne L. Egan, and Reyyan Ayfer. Outreach programs to promote computer science and ICT to high school and middle school students. In ITiCSE ’11: Proceedings of the 16th annual conference on Innovation and technology in computer science education.
[19] Microsoft Research. Kodu - Microsoft Research.
[20] MIT Media Lab. Scratch home: Imagine, program, share.
[21] Randy Pausch.
[22] Sam Rebelsky. Food-first computer science: Starting the first course right with PB&J. In SIGCSE ’07: Proceedings of the 38th SIGCSE technical symposium on Computer science education.
[23] Beth Simon, Pàivi Kinnunen, Leo Porter, and Dov Zazkis. Experience report: CS1 for majors with media computation. In ITiCSE ’10: Proceedings of the fifteenth annual conference on Innovation and technology in computer science education.
[24] Sarita Yardi and Amy Bruckman. What is computing? : Bridging the gap between teenagers’ perceptions and graduate students’ experiences. In ICER ’07: Proceedings of the 3rd International Workshop on Computing Education Research.
[25] Stuart Zweben and Betsy Bizot. 2010-2011 Taulbee Survey. Computing Research News, 24(3), 2012.