When one enters computer science teacher Douglas Kiang’s classroom during B block, the observer will find only Kiang himself and three app design students: no more, no less. Sophomore Ananya Goel, one of three currently taking the App Design and Development class, appreciates its intimate setting.
“The small class size allows us to do a lot more things, such as work on the apps together instead of individually,” Goel said. “Everything became a lot more personalized and fun.”
App Design is just one of many options students may take after Menlo’s Computer Science 1 course. The course moves away from computer programs to focus on the development of mobile and tablet apps.
“Students who are interested in making real things that solve real problems for real people will go towards app design,” Kiang said. “I think of it as a maker-focused class, and we learn how to use the tools that we need to solve [problems].”
In App Design, there is no set curriculum, according to Kiang. The class receives many requests for things people would like them to build; their projects mostly depend on these requests and their feasibility. So far this year, the class has worked collaboratively on two main projects. In the fall, Kiang’s class designed an interactive campus map for the Junior Classical League state convention being held at Menlo in April. In order to have the most universal app, Goel, along with classmates sophomore Jacob Elkes and senior Beckett Knuff, learned HTML, CSS and JavaScript. Now, both Android and iOS users can use the interactive campus map.
Their other focus this year has been designing a communication app for people who have lost the use of their voice. This app was requested by David Milgram, a Menlo community member whose late wife had suffered from ALS, a fatal condition that affects nerves in the brain and spinal cord. The app’s tentative name is LucySez, in honor of Milgram’s wife, Lucy.
“The most devastating thing for [Lucy] was to lose her ability to speak,” Kiang noted. “It was the first ability she lost, so [she and her husband] found other ways to communicate.”
The couple ended up communicating with electronic whiteboards or pencil and paper. LucySez streamlines these methods to help other people who may be in a similar situation through an app format.
This is how the app works: a patient can communicate with their caregiver in a different location by either typing on a keyboard or drawing using a pen tool. “What was important to us was that what’s being communicated goes across in real time,” Kiang said. “As the [user] is drawing [what they need], the other person is receiving it. Sometimes, what we were told is, the caregiver can guess what it is they need by just seeing the beginning part of the drawing.”
Though the initial idea of LucySez was just to work with drawings, Kiang and his class realized that typing may be more effective in some situations. Over time, Kiang and his students were able to incorporate a variety of convenient app features ranging from the width of the pen stroke to text color and size. “I like how meaningful our current project is,” Goel said. “It’s one thing to make an app for fun and it’s another to make an app that has an actual purpose and is meant to help people.”
One particular initiative Kiang’s students took on was having an “empathy day,” in which they went a whole day without speaking, instead using LucySez to communicate. “I know it’s hard to understand what it’s like to communicate without using your voice if you have not done that yourself,” Kiang said.
The activity would not only build compassion, but also help students understand what changes were needed to make LucySez easier to use. For Goel, the empathy day was challenging. “It was hard to have a conversation,” Goel said. “It took so much time to write out what I wanted to say. I think it was easier to communicate in single words.”
According to Goel, she and her family were all a bit frustrated that she couldn’t respond as effectively or quickly. Goel’s main takeaway after the empathy project was that the app needed to be as user-friendly as possible so that it didn’t feel tedious to open up LucySez and communicate.
The process to get LucySez up and running has been difficult, in Kiang’s opinion. “There have been deadlines missed, there has been stuff coming up that was unexpected. But as a teacher, having done this for years, all of that was expected,” Kiang said. “The development process is rarely smooth; you hope everything goes smoothly, but even if it doesn’t, it’s still a valuable learning experience.”
The class’ main challenge, according to Goel, was finding how to broadcast the user’s screen in real time to the receiver’s device. “We tested a bunch of solutions […], Beckett [Knuff] finally decided to test Firebase, [a computing service], which ultimately worked.”
LucySez is currently in its coding stage, which will be followed by another round of feedback and testing. Despite all of the bumps in the road, Kiang’s main goal as a teacher still remains: he wants his students to learn and empathize with what it’s like to be on a development team, working on a project everyone is deeply passionate about. “It’s pretty amazing how much they’ve gotten done in a short amount of time,” he said.