Duke computer science students make real-world apps for class

Students in COMPSCI 290 spend the semester developing mobile apps for real companies and organizations, like a mobile marine biology textbook Catchalot and an app for microlending company Seeds.
Students in COMPSCI 290 spend the semester developing mobile apps for real companies and organizations, like a mobile marine biology textbook Catchalot and an app for microlending company Seeds.

Upper-level computer science students at Duke are applying their expertise in the field to real-world issues by creating mobile phone applications for a wide range of clients.

A class in which students work in three-person groups to design mobile applications for a variety of clients is being offered for the third time. At the beginning of each semester of COMPSCI 290: Apps, From Concept to Client, a wide range of prospective clients—including representatives from the School of Medicine, nonprofit organizations and other companies—make short presentations about problems they would like to solve, with hopes that the students choose their project pitches. Throughout the semester, students have been working closely with their chosen clients to create the apps in Apple’s iOS mobile operating system.

The course is taught by Richard Lucic, associate professor of computer science, and Robert Duvall, computer science lecturer.

“[The course] grew out of a perceived need to teach students something about software project management,” Lucic said. “Mobile apps were chosen as the course theme as a way to engage students.”

The course is unique because it teaches students to improve their development ability and provides a product for a client in need, said Austin Benesh, a senior in the course.

“I was interested in CS 290 because of the unique focus of the class,” Benesh said. “Instead of having normal course work, the goal is to work in a team to complete... a working mobile app for a client, simulating more of a work than school environment.”

Out of several project pitches presented to the class this semester, the students ultimately picked six projects—one of which will allow researchers to get information from very large sample sizes.

Dan Ariely, James B. Duke professor of behavioral economics, proposed a project that would assist his organization—the Center for Advanced Hindsight, a group that conducts retrospective research in a variety of fields such as health marketing, dating behavior, incentive systems and other topics.

“I feel privileged that they picked my project,” Ariely said. “If I were one of the students in the class, I would have a hard time choosing.”

Benesh is among the three students working on Ariely’s app, called Crowdsourcing Research. The app will help facilitate the dissemination of research questions to large sample sizes by providing a quick way to push research experiments to mobile devices.

“Our team is thrilled to be working with Dan Ariely and his Center for Advanced Hindsight,” Benesh said.

Ariely said he hopes to use the app in an online class that he will be teaching in the future through the Duke Coursera online platform and also plans to expand its usage outside the classroom.

“These apps will have value outside of the course setting,” Lucic said. “Students work with real clients on apps that will be used in the real world.”

Last semester’s students created an app for the entire Duke University Health System, Lucic added. DUHS was so pleased that the representative offered to come back and be a resource for the class, taking the class on a tour of their information technology operations as a field trip.

A large part of the course focuses on forging positive developer-client relationships, Banesh noted. Grades are primarily based on client opinion.

“The class is entirely not lecture based,” said senior Tony Yan, another student in the course. “We have a lot of guest speakers including professional programmers from various companies like Zynga and Facebook.”

Although Yan said he has personal experience in app development, he still believes the course has a lot to offer. In addition to learning how to use new coding methods, he is also gaining real-world skills in client interactions.

“While our code is still assessed and graded, the goal is to keep the client happy with our product,” Banesh said.

Discussion

Share and discuss “Duke computer science students make real-world apps for class” on social media.