Computer Science is a class taught by Mrs. Taricco which teaches computer science on an advanced track. To start off this class, we created this website, which has since been updated, using CSS and HTML. Since then, we have transitioned into working primarily in Java Script where we have learned a variety of things necessary for computer science. The basic outline of our lesson is that we are given note sheets which we then are taught and further fill in. We are then given a list ofo exercises and time to work on them in order to fully learn what each thing we talk about does. As the year goes on we are beginning our apps for a good project. This project is done in small groups and is meant to give students an opportunity to create an app to help people.
This is a game that I coded myself. The point of the game is to try and guess the number which the computer generates. To start off the code you would get a message asking you to pick a number between 1 and 100 and letting you know that if you want to quit you can enter 0. It then takes your choice and stores it as an integer. The computer then will make a random number and check if the user's choice is the same. If it is the same, the game will stop and the computer will tell you how many guesses it took you and offer you a chance to play again by entering 101. If it isn’t the same the computer will tell you if the number is too high or too low. If you are to press 0, the game ends and you are instructed that if you want to play again you need to enter 101.
This is a program that takes a random array and puts parentheses between any numbers that are in a run (a run is when two or more consecutive numbers in a list are the same). The program starts out by creating a random integer static array. It then looks at that array in three sections, the first number, the middle numbers, and the last number. The first number is relatively simple as it just checks to see if it is equal to the one after it. If it is, it creates a starting parenthesis before the number. For the middle numbers, there are three cases to consider. If the number is the same as the one on its right but different from the one on its left, starting parentheses will be placed to the left of it. If the number is the same as the one on its left but not its right, ending parentheses will be placed to the right of it. If neither of these is true, then the number will be printed out without any parentheses. The last number is similar to the first number in that the computer only checks to see if it is equal to the one before it and then creates ending parentheses if it is.
Apps for Good is an annual project held at Mass Academy. In this project, we work in groups of three to four students to design an app that is meant to address a problem we see within our community. Through this process we hope to learn more about the process of app making while also creating a product that can help those in need.
For my group’s project we looked at the incoming of new refugees into our area as the people we wanted to help most with our app.
After some thinking, we noticed that many of the refugees didn’t have the time or resources to complete certain tasks, such as
getting groceries or mowing their lawn. We decided to create an app which would allow them to post their tasks that they needed
help completing and get help from their community. This app will not only allow for the refugees to get help with their needed
tasks, it would also allow them to get acquainted with their community.
Our target audience is refugees entering the area who may need some extra help with certain tasks.
To solve this problem, we decided to create an app that would allow users to either create a task or look for tasks that they can help with. After making an account, users will be brought to a list screen that has everyone’s tasks posted, sorted by priority. At this point users can do one of two things, they can either look through the tasks that are there and decide to help with something, or they can press the plus button in the bottom right corner and create a new task. If they decide they want to help with tasks, all they have to do is scroll through everything listed and contact the people who posted the specific problem (contact information is asked to be provided when posting the problem). Once they contact them and figure everything out, the people who created the problem can delete it. If they decide they need to make a task, they will need to press the plus button in the lower right corner and fill out the needed information. This screen will ask for the title, a more specific description, the user’s preferred contact information, and a priority level. The higher the priority level, the higher up on the list it will go. Some of our main goals with the general user interface was to keep it simple and intuitive as many of the users may not have English as their first language, and the only current language for the buttons and other text is English, though we have hopes to change that as part of our future extensions.
To begin our process we started off with research. Out of this research we realized that not many products on the market
today really did what we were trying to do with our app, though we did find some other products to help us with the process.
The first competitor we found was InfoAid which was an app which helped provide information to people who were traveling long distances. This app is designed to help refugees, which was the ultimate goal of our app, but it wasn’t designed to help them once they were already settled, which is what we were hoping to accomplish. One great feature that we hope to implement in the future from this app is the different language options it has.
Our next competitor is an app called GiveGab which is meant to help people ask for money and things that can be helped with money. While this app would be good for refugees who may need financial assistance, it doesn’t help with tasks that don’t require money.
Our final competitor is an app called Make a Stand which allows you to either be a “stander” or a “giver.” This is similar to the design of our app where standers can create a post with their financial needs and givers can decide to donate. This app is the most similar to what we want to do, though once again it only provides an opportunity for people to ask for money.
DESIGN: For the design, we mainly focused on having a simple user interface (UI). We decided that it would make more sense this way because it would allow people to be able to understand what they needed to do without much of a learning curve.
IMPLEMENTATION: After the market research, we moved on into the actual implementation of our app. We did this through the application Android Studios with Firebase cloud storage. We also stayed connected using GitHub. To start the building process we began with making a simple user interface with buttons and screens that would allow for an option to either make a new account, or sign in to an existing account. We then implemented Firebase Authentication in order to complete the Sign In and Sign Up features. Through Firebase, we are able to access what accounts have already been created and add new ones. We then added in a recycler view as well as the task button which would automatically update the list view with the entered task. We also used Firebase storage for this step.
TEST: For testing, we went through all the little steps in our code and figured out if they worked as intended. To keep ourselves organized we used a Google Sheet with columns to describe what we were testing, what the intended outcome was, and if it worked. I have linked this sheet here if you would like to look further at this.