In CS, taught by Ms. Taricco, we learn how to use HTML and CSS to create our own personal websites (click here to view the websites of other Mass Academy students). We have also been learning Java through notes, exercises, and labs, which align with the curriculum of Advanced Placement Computer Science A. In the latter half of the year, we worked in small groups to create apps to address problems in the world, a project called Apps for Good (AFG). Scroll down to learn more about my AFG app (RePlate) and some of the CS labs we've done throughout the school year...
Aarushi Khatri, Anshu Adiga, Sophie He
In the past few years, the USDA reported that 13.5% of US households experience food insecurity, which is startling when compared to the over 70 million tons of surplus food produced in one year. Research has indicated that inefficiencies in food redistribution are a major contributor to food waste, as businesses often lack a simple but reliable method to connect to local nonprofits. Some existing apps do try to connect individuals with restaurants or grocery stores, but there are no apps connecting organization to organization. Therefore, this project aims to address the need for a localized and real-time digital solution to close this gap.
We started with basic wireframe designs and then implementing it using Flutter, which we chose because of its ability to convert between Android, iOS, and web apps. Our app took a two pronged approach to connecting our app's two main user groups: food donors and food recipients. Upon creating an account, the user would be prompted to enter in additional details including establishment type, which would then bring the user to the correct dashboard. All of the data entered by the user was stored using Firebase. We used Git and GitHub for version control and VSCode for development.
Our Minimum Viable Product (MVP) includes the main features of each dashboard: food donors can list surplus food available for donation and food recipients can browse through available donations or search for specific items and schedule pickups through the app.
We tested around 70 test cases in total, spanning both dashboards and their functionalities, as well as account creation and syncing with other accounts. Overall, the MVP was met, but there were errors relating to the storage of items in the claimed items list of the food pantry dashboard that should be addressed.
Click here to view the PDF in a new tab.
The program to the left randomly generates a number from 1-20 inclusive and prompts the user to guess it, outputting the number of guesses it took to guess correctly. This is an example of an exercise we did while learning about for and while loops. Below (or in a new tab) is an example of what could happen while running the program. Click here to view the PDF (left) in a new tab.
This program took me very long to write, because it involved a lot of logic and math relating to sine and cosine in order to generate the coordinates of the points of a star using a loop. After a lot of trial and error, I was able to create a program that can draw 10 stars that have an inputed number of points. So far, I have tested this program with 5-pointed stars, 9-pointed stars, and 15-pointed stars, and the resulting Applets are displayed.