Movie Selector
Summary: This application recommends movies for you, allowing you to specify factors including genre, subgenre, era, runtime, and rating. It provides a slideshow of different movies in the background,
and I gave it a retro cinema aesthetic.
How I Did It: My movie selection application also uses Swing and JLayer, like the BatProject. These provide the GUI and audio. But unlike the BatProject, it relies on a MySQL database,
in which I typed in the statistics of over 600 movies I chose by hand. The Java application fetches this database and narrows it down upon specifications being clicked. For example, if I wanted a
horror movie that was from the New Hollywood era, under 100 minutes, and rated R, I might get "Friday the 13th" as a result. There is a button to fetch sequels, which filters the database again for similar titles, and
if the "Find Movie" button is clicked again, a pseudorandom mechanism fetches a similar movie. There is also a crude voting system that can be toggled, and I hardcoded a chatbot
to fetch details about movies such as the rating reason, sound mix, and aspect ratio. Like the BatProject, I loaded the content into a portable JAR file.
Roadblocks: I worked on this project when I was just starting grad school, so the file organization was initially a mess. My SQL files ended up getting corrupted, which broke the program, and forced
me to pull from GitLab and reconnect the backend. I also had trouble with Gradle, which at one point destroyed my files, since I was unfamiliar with the efficient but unforgiving interface. Needless to say, Git came to the
rescue many times.
Why Make This Project? Movie recommendation algorithms exist through Netflix, Disney+, HBO Max, Peacock, and other streaming services. But they don't offer the same level of precision. With this app, the user
could pinpoint exactly what kind of movie would fit their tastes. The voting system is rudimentary, but it effectively uses a priority ranking to average what would be the best genre overall, in case
multiple viewers are arguing over what to watch. I was limited to movies I have actually watched, because I wanted the recommendations to be as genuine as possible, but the end result is more exact than anything
in the corporate world.