Computer Science




Bio HobbiesCommunity Service

Mass Academy

Physics Math Modeling STEM I STEM IIComputer Science Humanities Spanish?????

In the beginning of the year, we start learning about the use of HTML and CSS while working on our own website/electronic portfolio, which you are reading! Then we begin to focus on the methodologies behind the Java programming language, where we cover topics such as data types and structures, algorithms, graphics, etc. We also spend a lot of time C term working on our Apps for Good project

Image of Line Art

Line Art

While learning Java, we have frequently used the graphics class in different programs. The image to the left is the product of one of these programs. The interesting thing about this image is that although the lines appear to be curved. The image is a visual illusion that consists of just strait lines. This was done by using a loop to draw multiple lines that had changing start and final points on the length and width of the rectangle in every corner. This process was looped through again for the smaller sized rectangle inside of the image. Click here to see the Code

Magic Squares

Another problem we were tasked with was to create a program that could form a magic square for different sized squares. A magic square contains multiple boxes inside of it with different integers. The cool think about a magic square is that the columns, rows, and two diagonals’ have sums that are all equal. This program receives an odd integer value for a side of the square and a follows a pattern to accurately number the boxes inside of it. The program starts by assigning 1 to the middle of the bottom row and then assigns the next integer to the box below and to the left of it. If there is already and integer there, it assigns the value to the box above it.

Apps for Good


As the title of the project suggests, the purpose of the project was to learn skills related to app development, using Android Studio, when creating an app that would have a positive effect on a target audience. After the brainstorming process, my group decided to create an app that would aim to improve child vocabulary. Recent research has suggested that there is a large gap in vocabulary between children of different socio-economic statuses, which is primarily due to factors such as reading habits. Differences in vocabulary even at the age of two have been shown to create wide disparities in academic performance up until high school. The purpose of our app was to rectify this gap by creating an interactive experience between the child and the parent for word acquisition. Our app is unique in the sense that it targets the vocabulary of children aged 18-24 months (about 2 years) as the parent walks the child through the app. A lot of the features we had the time to develop came from talking with a professional child psychologist. Presented below is our app proposal that was formed in the beginning of the process.


The app models a flashcard-based learning setup. The user can enter a guided or learning mode. The guided mode is the same as the learning mode, however it contains questions for the parent and the child such as, “What sound does a cow make?”. These questions appear in the guided mode after the child correctly selects the word. This helps to foster conversational skills in the child and provides added context for the word. In addition, using text-to-speech the app will pronounce, “select the -”, and when the right image is selected it will state, "you selected the - “. From our research we decided it would be best not to have any responses from our app upon an inaccurate click since that may in some cases promote and encourage the wrong choice. However, the correct answer is rewarded with animated fireworks and confetti. In the settings part of the app the user can delete words and can access and upload files on the device to an “Add Word” page that can take two questions and tags for the word. The tags are used to display words with the same tags at once in the flashcard part of the app. The algorithm behind the flashcards will also display the words that are inaccurately selected the most or take the most time to select more often. To get a greater look at our code you can visit the Github repository for our app here.


Apps for Good Fair Image