Our Computer Science class is really fun, and we get to do a lot of exercises and labs. The class is designed around learning Java 8. The exercises are usually a handful of short programs designed to teach us to use a certain aspect of the language, such as loops. With labs, we will often incorporate other aspects and dig deeper into what we learned in the past. Below is an example of both a lab and a set of exercises. Through these activities I have gained a solid understanding of Java Principles and look forward to learning more.
`Above is an example of a set of exercises. In this assignment, we learned about Array Lists and how to manage shifting sizes. The most challenging part was at the end, where we had to complete a Bulgarian solitaire simulator. We had to simulate a game of solitaire and record how many times it would take to achieve a solitaire through the use of Array Lists.
This lab used the Java Graphics Class to draw lines that are straight but give the effect of being curved. I extended the program to recreate the image inside and add random colors to all the lines. This program taught us more about loops and their applications. Above are pictures of two sample outputs.
Apps for Good
An large part of Mass Academy’s Computer Science course is the Apps for Good project that we students get to complete. We were given 3 months to design, construct, and present an app to help solve a problem or inconvenience that could be found in our community. My group generated an AI ChatBot for the Mass Academy Community.
Problem Statement
Currently, the Mass Academy Website contains a lot of unorganized resources that can take a lot of time to traverse to find just the information you are looking for.
Target Audience
Our target audience is prospective Mass Academy students and families. Currently, the Mass Academy website has a limited FAQ section that does not answer most questions.
Minimum Viable Product
Our Minimum Viable Product is a web based application that a user can prompt questions about Mass Academy and receive accurate results.
Process
The program operates through a multi-step process, leveraging advanced AI models to efficiently answer user questions. First, the system refines its understanding by fine-tuning a sentence transformer model. This specialized model is then used in conjunction with a Facebook AI Similarity Search to identify the most relevant sections of text based on a user's query. Once the pertinent text is isolated, the system utilizes the Gemini AI to formulate a comprehensive response that directly answers the question, drawing solely upon the information contained within that specific text section. Finally, this generated answer is seamlessly passed through a Flask backend to an HTML front-end, providing the user with a clear and concise solution to their inquiry. Currently, it is only being hosted locally due to its large file size. To test our device, we ran through multiple scenarios, including 60 questions and multiple user interface tests. .