Computer Science

In computer science, we use different coding languages to complete a variety of tasks. We have used HTML and CSS for our websites, and we are learning methods in Java to code solutions to problems. We focus on creating concise code to accomplish the goal.

Apps for Good

I worked with Svabhu and Aaheli to develop Fitly, a mobile application that provides personalized workouts to people of all experience levels.

Background

Physical health is important to one's overall wellbeing, and exercising is a common way to promote a healthy lifestyle. Many people want to form a habit of going to the gym but don't know where to start. Many existing apps require personal trainers, or are simply for logging rather than providing workouts. If they do provide workouts, we have found that they are more generalized and not dynamic to the progress being made.

To address this, we developed an app targeted towards people who may want to begin going to the gym but are unsure of where to start. Additionally, we target more experienced gym-goers who are feeling unmotivated and want an easy way to log their workouts and see the progress that they are making.

Our Product

The main feature of our app is the personalized workouts. After some information is inputted upon the first time in the app, a base workout is provided. Each workout, the user does the maximum repetitions of each exercise until failure, and they input this number into the app when they log the workout. This helps the app know to either scale up if more reps are completed than recommended or scale down if the opposite is true.

Additionally, if the user wants to do different exercises than recommended, they are able to log this as well. They are prompted for the exercise, sets, reps, weight (if applicable) and max reps so the app can still factor this into their next recommended workout, and it updates accordingly.

The exercises that align to the muscle groups they selected to train are cycled through based on how often they are going to the gym. This information is organized between a few different classes as users and exercises.

Because there were many different scenarios, testing our app was key to ensuring we were accounting for every situation the user might end up in. We ran through many different trials and logged different combinations of maximum reps, muscle groups, and some additional modifications during the informational screens.

Java Programs

One program we made took a user input of numbers and put the minimum number in the front of the list. To do this, I took an approach to put an empty space at the beginning of the array to then put the minimum number in it. For example, an input of 5, 8, 2, 45 would return 2, 5, 8, 45.

Another program modeled Bulgarian Solitaire. It took a user input to calculate the number of cards being used, created random piles, and then cycled through a process to take one card from each pile until the piles were 1, 2, 3, 4 (etc etc) in any order.