
Inspiration
Oftentimes when we want to go to a particular kind of business, we subconsciously pick the one we think can trust the most. And due to corporate advertisements and marketing campaigns, the larger companies have the edge in this regard, leaving small and local businesses in the dust. With the current state of the world and the economy, there's no better time than now to start supporting your community businesses. There's just one concern--how do we find out about them?
Overview
At Rootle.space, we'll recommend small businesses for you to try out! Select a business you'd like to find smaller alternatives to, or simply query what tags you're looking for, and we'll show you what's local. Help out your community and root for the small guys!
How we promote smaller businesses
Rootle is built on the underlying assumption that popular businesses have more reviews on review sites, and thus receive more attention than their smaller counterparts (whose main form of advertising often comes from word of mouth). Think Whole Foods vs. your local mom-and-pop, or Denny's vs. the diner down the street-- the disparity's pretty clear. Our website aims to combat this. Using a skewed random distribution with data from Yelp, our algorithm prioritizes and shines light on the more unrecognized businesses in your community, letting you find these hidden gems!
How we built it
We built the webpage using HTML, CSS, JS, and jQuery. We used jQuery AJAX to integrate the webpage with the backend, which was built in Python using Flask. This backend used an algorithm programmed using NumPy to calculate and sort the businesses.
Challenges we ran into
The first challenge we had to overcome was that this was our first hackathons, and we had to manage to produce a project in such a time crunch. However, with careful delegation and some intense hours of work, we managed to pull through.
The next challenge that arose was that there was no easy way to create an algorithm that promoted smaller businesses without suggesting bad businesses. We were able to pool our knowledge of statistics and create our own algorithm that was likely to recommend small businesses with a small but not minimal number of review counts.
And lastly, we had to face was that our program was somewhat slow, due to the API we were grabbing data from only allowing 50 search results to be grabbed at a time. We were able to solve the issue by integrating asynchronous calls and delaying the transition between our two pages, giving the backend time to call for and process the data.
(In addition, the website our server was hosted on, Ionos, had a partial outage as we were finishing up our project, so we hope that soon enough, the website will be up and running perfectly!)
What we learned
As this was our first hackathon, we learned a lot about the time crunch of a hackathon, and how to properly integrate separately developed backends and frontends. We also learned a lot about Flask, CORS, and the difficulties of deploying a webpage, especially in such a short time. And lastly, we worked with a new API and learned how to use it, and more broadly, how to work with and quickly learn a new API.
Log in or sign up for Devpost to join the conversation.