Computer Science

Computer Science at Mass Academy is taught by Mrs. Taricco. Prior to starting at Mass Academy, I had no experience with computer science. Our first large assignment was to create this website, using HTML and CSS. Then we started coding programs in Java. We typically have a lesson on a specific topic, followed by some exercises and labs. We have also completed an Apps for Good project, in which we worked in groups to create an app which solves a problem in the community. My group's app description and poster can be found at the bottom of this page.

One of these labs that we completed is Line Art. It was an exercise in utilizing “if” statements, the graphics class, and Java applet. My solution can be found below.

Another one of the labs is the Sieve of Eratosthenes program. It computes a list of primes between two given numbers by iterating through primes and multiples. It was great practice in using “for” loops and multiple methods. My program can be found below.

Apps For Good

Problem Statement- After collaborating with local charities, my group found that many charities in the Worcester area lack an effective system for tracking material donations. Especially after starting to accept material donations again after COVID, many non-profits found that their donations were down. We wanted to help them advertise and spread the word about their needs. In addition, many citizens do not know what to do with items they don’t need anymore. Providing them with a place to donate will help reduce waste and make donations more efficient.

Target Audience- Our target audience is any charity wanting to collect donations more effectively and any user looking to donate to charities in need.

Solution- We decided to create an app which matches users with charities looking for donations. Our app has two sides to it. The user side includes a list of charities and displays their information (motto, address, contact, etc.). Users can also search for items or keywords that they might be looking to donate. Then they can send an email directly to a charity looking for that item. The charity admin has the ability to edit their information page and create/delete/edit requests for items. Each item has tags and descriptors associated with it that make the requests more accessible to users and charities alike.

Minimum Viable Product- Our minimum viable product is able to display charity needs to users. In this first iteration, the charity can enter requests and users can view a list of these requests. Some additions that we included are the search algorithm, contact feature, and charity information page.

Features and Algorithms- To manage our login for charities we used the cloud-based storage system Firebase. We also used Firebase to track the charity information and requests. One of the most time consuming parts of our app development was organizing and setting up Firebase. For our searching system we used Algolia in addition to Firebase. These two tools worked together to provide text and tag searching.