Student Work | One8 Applied Learning Hub

High School | PLTW Computer Science | CSE | MIT App Inventor (1.3.1) | Top Computer Science Project

Check out the student work submitted for real-world industry feedback! Learn more about submitting student work to receive real-world feedback here!

Grade: High School

PLTW Course: CSE

Submission type: MIT App Inventor (1.3.1)

Project overview: Students work with MIT App Inventor to create basic apps that rely on the concepts of event-driven programming, branching, iteration, variables, and abstraction—the building blocks of creating with code. Students are introduced to essential computational thinking practices, such as developing abstractions, collaborating around computing, and communicating as they create, test, and refine computational artifacts of Android™ apps.

Select student submission materials:

Link to full project: click here

Select Judge Feedback: “Hello! I am currently a software engineer at Liberty Mutual where I program websites and internal tools.

I like that your team decided to experiment with a database for your project. I think that this was a good decision over local storage since it allows your users to add a large amount of materials if they need to. It takes a little more work to get a database working properly with your project, so great job taking that on!!

I also really like how you planned out the UI for your project. Giving users the ability to add material quantities in increments is a great choice as it makes it more user friendly. I also like that you have a reset data button that gives a confirmation message when clicked. It’s important to have confirmation messages for impactful user actions like that so great job considering that!!

While I like the ability to add materials in increments, I wonder if your group decided to give users the ability to manually choose the quantity of materials they enter. I think that would be a good thing to look into if you revisit this project to make the app a little more user friendly.

Overall, I really like the idea your group had for your project. I think it would be very helpful for teachers to easily be able to keep track of the materials they have in stock all in one app. Keep up the great work!!”

-Software Engineer, Liberty Mutual

“Nice to meet you – I am a data engineer at Liberty Mutual. I primarily write code in SQL to create data pipelines and do ETL (extract-transform-load).

First, you have all done an amazing job on this project. I can tell that this took a lot of time and work becuase there is so much functionality included here.  Your project stands out to me because it has a data layer! I might be biased as a data engineer myself, but data is what runs the world, and in this case its what runs your application! You three went above and beyond integrating with TinyDB, making this a persistent and useful application.

One of the major challenges with web applications is keeping the UI up to date with the database and vice versa. It sounds like this was one of your pain points during development based on the modifications you listed from the results of your testing. I also saw that you asked how to get into higher levels of code. My recommendation to you is to look into the React Web Framwork. React is a framework built in the javascript langauge that is amazing at displaying dynamic data. React has a starter pattern for a web app that will bundle everything you need for a live web app into a few files. It easily integrated with services like MongoDB which is a lightweight database. Try following this tutorial for getting started with React: https://www.w3schools.com/react/react_getstarted.asp.  React is also great for modern UIs – once you start using React you will start recognizing how many web pages run on it!

Another standout part of your project is your team’s ability to iterate and improve the project. In your documentation I can see where you had to take detours or re-imagine a solution. At work, I have to do the same thing all the time. Starting simple and iterating is the agile way to do things and creates a quicker mean-time-to-production, which is one way we measure the success of software development.

One small thing that I love that you included was a small note at the end to “Make it not go into the negatives.” This is a really small change, but it shows that you are seeking to make your data accurate and precise. I think my whole job boils down to making data accurate and precise. In this case, you are asking what the meaning of “negative” paper clips is and evaluating that it can’t really be accurate to have negative paper clips. Amazing job paying attention to the details.

You three completed an amazing project and I hope you’re proud of your work! Like I said before, I think getting into React would help you realize your goals for an app like this, but you can do so many more things with it as well! Enjoy computer science and thanks for sharing your project with me.”

-Technology Associate, Liberty Mutual

Industry Award: Top Computer Science Award

School: Sandwich High School

Teacher: Ginger Lavelle

You might also be interested in