One of our members is in the market for a new car, and he was looking for the fastest acceleration he could find under his budget, but all of the cars that were in his sweet spot were hundreds of miles away, and incurred a high transfer fee. When we saw the opportunity offered to us through Carmax, we knew we had to take advantage.
What it does
CarMaps scrapes the transfer fees from the Carmax website and displays the data on a map using concentric circles to divide distances into zones. The website features an interactive slider that allows users to modify the constraints of the map to focus on the distances they are primarily interested in. For each ring, the website displays min, max, median, and average for all transfer fees as well as the line of best fit for the relationship between distances of cars and their transfer fees.
How we built it
Challenges we ran into
The biggest challenge we ran into was with collecting the data. Since there was no official API provided during the competition, we had to scrape the data manually. This process was relatively time consuming, so we had to use techniques such as caching to make the scraping process as fast as possible. Another issue we dealt with was configuring our Google Cloud Functions. Since all of us were new to the services of Google Cloud, we had to take time to learn about the features Google Cloud offers, and figure out the best way to implement these features with our project.
Accomplishments that we're proud of
One big accomplishment we had is that we were able to host our website serverlessly using Google Cloud Storage Buckets and Google Cloud Functions. We were also able to tackle the challenge of obtaining all of our data and visualizing on a website.
What we learned
We learned a lot about the services offered by Google Cloud, and how we can implement them in the projects we do. These skills will be helpful for us in the future, as cloud technologies continue to develop. We also were able improve our skills in Data Science with the NumPy, SciPy, and Scraping methods that were implemented.
What's next for CarMaps
Although this site is currently flexible, it doesn't efficiently find the transfer fees for all cars from a certain origin. We could choose to implement a database that stores our data and caches it for future sessions. We could also implement other statistical techniques and make a more general model of the CarMax transfer fee estimate with distance and time as input variables.