/Movie-Better

CS 316

Primary LanguageJupyter Notebook

Movie-Better

In this project, we built a website that facilitates movie betting based on critical acclaim. On this website, users can bet on how well a movie will do before it’s released. Once the movie gets released and actual critic ratings are available, betters will win or lose money based on how accurate their prediction was.

Our goal for this project was to demonstrate our proficiency in data management through the utilization of advanced tech stacks (such as MERN). We wanted to build on the concepts that we learned in class and apply them experientially through a unique, open project in which we were able to add complexities given different data, design, and functions. Fundamentally, we aimed to create an adapted version of a stock market exchange but bring in an aspect of something that we enjoyed: movies. The reason we chose to incorporate film industry data within this project is because movies and the art of film criticism are two things that people commonly interact with across cultures and interests, meaning that this project has a wide applicability. It is a fun and interactive tool for movie fanatics and everyday people to gamify their predictions on movie releases every week.

This project is interesting because we are basing it off of existing data management sites and introducing cross-functionality amongst the various databases. For example, the idea of the database at the core relates to a stock market trading exchange platform, but the data used to run the platform is taken from IMDB. Additionally, movies and the art of film criticism are two things that people commonly interact with across cultures or interests, meaning that this project has a wide applicability. It will be a fun and interactive tool for movie fanatics and everyday people to gamify their predictions on movie releases every week.

Some systems that have incorporated similar functionality include platforms like Robinhood in which users can exchange stocks or Amazon where users can buy/sell from a marketplace. A number of different entertainment-oriented betting sites (such as BetUS or Bovada) were also good models for us to observe as we dove deeper into the programming process. Some limitations of those platforms include the type of money that is accepted in the investing process, trading volume restrictions, speed on accepting orders, and some multithreading collision (e.g. when two or more people accept a bet or an order at the same exact time). We attempt to improve on these past errors by building a robust system that is scalable, maintainable, and efficient.