PHOTO: McGovern Awards Local Student Winners of 2016 Congressional App Challenge
WORCESTER, MA – Today, Congressman Jim McGovern (MA-02) announced the local student winners of the 2016 Congressional App Challenge (CAC) in the Massachusetts 2nd Congressional District, a competition aimed at encouraging high school students to learn how to code by creating their own applications.
The winners were Worcester Polytechnic Institute students Arun Jeevanantham and Da-Jin Chu, both in the school’s Massachusetts Academy of Math and Science. The students’ app makes performing calculations easier and faster. They decided to develop the app because they discovered a dilemma: handheld calculators are bulky and complex, but mobile calculator apps are hard to use and lacking in features. Their app takes the best of both worlds by letting users drag, pinch, and circle to crunch numbers with ease. Click here for a video tutorial from the students.
“Today I am excited to congratulate these amazing students on this exceptional app that highlights the importance of computer science and STEM education, great local teachers, and the incredible potential of our young people,” Congressman McGovern said. “Each year the Congressional App Challenge encourages students to be creative and teaches skills that will help pave the way to good-paying jobs and exciting careers. My message to all of our Massachusetts students and teachers is keep up the great work. I look forward to seeing all the great apps submitted by our students next year.”
Caption: From Left to Right: Tim Loew, Executive Director of MassDiGI; Michael Barney, Director of Mass Academy; Congressman McGovern, Da-Jin Chu, and Arun Jeevanantham.
“We are proud of the work and the creativity of our students and feel it is important that our school supports a great Computer Science program here,” said Michael Barney, Director of Mass Academy. “Kudos to our Computer Science Teacher, Angela Taricco, who prepares our students well. DaJin and Arun are awesome students, highly motivated, and very skilled. This is great recognition for both of them. We appreciate the sponsorship of Congressman McGovern, and all the sponsors of this program to highlight the need of Computer Science in Secondary Education curriculum.”
BACKGROUND ON 2016 WINNING APP
Questions & Answers with Students and Competition Judge
What was a difficulty you faced in coding your app? What coding solutions did you use to solve it?
After a few months of work, our GitHub repository (https://github.com/ottodog/apps-for-good) reached over 100 commits, and the rising complexity of our code became a major problem. There were so many pieces of code dependent on other pieces of code that trying to introduce a new feature in one part of the app often broke a different part. Our pace of development slowed to a halt. We took a step back and investigated why our code was so hard to work with. We discovered a major problem: the code doing calculations and governing how our app behaves, also known as the business logic, and the code that manages the user interface were either the same or interspersed within the same file. This made it difficult to change how the app looked without breaking how the app functioned or vice versa. In addition, this conglomerate of business and user interface code caused us many headaches when debugging because it was hard to trace errors. To solve this problem, we introduced an object oriented principle called model-view separation. It required a major rewrite of the app in which we isolated all of the business logic into a set of classes, called the model, that could operate independently of the user interface. The user interface code, called the view, was then rewritten to take the model as input, and display the graphical user interface accordingly.
If you were going to create version 2.0 of your app, what improvements would you make?
We are working towards a version 2 currently. We want to integrate a computer algebra system and add the ability to insert graphs. To completely meet our goal of bringing the power of handheld calculators to the portability and ease of use of smartphones, we need to be able to have all the functionality of handheld calculators. A major part of advanced calculators is the inclusion of computer algebra systems, which can solve and simplify equations. Letting users define functions and insert graphs will make further use of our novel visualization system. Since equations in our app are already laid out on a virtual graph paper, adding real graphs will be a natural next step. Adding these two features will increase the use cases for our app.
Judged by Tim Loew, Executive Director of MassDiGI
What did the students do particularly well?
“What a precocious programming effort! Building a calculator app that utilizes touch-technology is a big task. It was great to learn a little about how the team approached its work and overcame issues to get the app to where it is now – and where’s it’s going.”
In what arena should the students focus their improvement efforts?
“In addition to a continued focus on programming (keep pushing yourselves), while keeping an eye on scope, it’d be great to see some additional thought put into UI, UX design, too. All in all, a job well done.”
BACKGROUND ON CONGRESSIONAL APP CHALLENGE
The Congressional App Challenge is intended to highlight the value of computer science and STEM (Science, Technology, Engineering and Math) education and encourage students to engage in these fields. By encouraging and recognizing our nation’s young programming talent, Congress hopes to shine a light on the growing importance of these skills.
The Challenge is open to all U.S. high school students in participating districts. Challenge participants are invited, either as individuals or as teams 0f up to four, to create and submit their own software application (“app”) for mobile, tablet, or other computing devices on a platform of their choice. A panel of local computer science professionals and congressional representatives will judge the apps, and the winners in each district will have the honor of being recognized by their Congressional representative.
The CAC is coordinated by the Congressional Internet Caucus and the non-governmental sponsor of the project, the Internet Education Foundation. Click here to read more about the Congressional App Challenge.