Book recommendation software

For my portfolio project I decided to make a book recommendation software based on ratings, here are links to the Github repo and the source of the dataset I used:

Github Repository
Book dataset

I wanted to use as many of the things that we learned in CS102 as I could and ended up using:

  • Hashmaps
  • Nodes and Linked lists
  • Bubblesort
  • Mergesort

The software allows the user to look up either books, authors and genres. If an author or a genre is looked up and selected, a list of every book by that author or in that genre is displayed in order of highest to lowest rated. The user can than view a book and gets its title, author, rating and lists of books in the same series, books by the same author and books in the same genres if any of those apply.

This project was fun but I feel like the code is very messy, I saw that the next section covers SQL so it might be fun to revisit this project using that.

I would love some feedback on the code, to know if there are some obvious mistakes or things that can be optimized.

For refining your book recommendation software, considering the transition to SQL is a smart move as it can handle large datasets more efficiently and simplify your code by managing relationships between books, authors, and genres more systematically.

SQL is the best choice

As you look to optimize your code, think about how to develop software from scratch and how database indexing could improve search performance, and perhaps explore how integrating an ORM could clean up the backend coding by abstracting database interactions.