Few topics are as polarizing to people as ice cream. Everyone has their local shop they swear by, and it’s always--always--creamier, fluffier, and sweeter than the one down the street. So for someone looking to start up an ice cream shop, the market can be impenetrable, with long-standing chains like Dairy Queen and Ben and Jerry’s interspersed among beloved local wonders.

The availability of information and analytics to the up-and-coming shop owner is sparse at best, and many owners are often snuffed out by the competition. That uphill climb the small business owner faces is our inspiration. Ice cream is just a proof of concept--we want this to work with any type of small business.

What it does

At WeLocate’s core is a webapp that asks the user to choose a location on a map near which they would like to open a business. Through a process of database creation and machine learning, WeLocate provides a map of optimal places to start that business, so that the challenge facing local businesses to fend off nearby competition becomes a little less daunting.

How we built it

Driving the process is a script that uses the Yelp Fusion API to create a dataset representing a majority of businesses of a certain type (e.g. ice cream shops) across the country, with information about ratings, location, prices, and proximity to other locations. Using the Amazon AWS machine learning, we developed a model using those features, which is used to evaluate the feasibility of locations within a prospective owner’s desired area.

Challenges we ran into

Almost everything we coded was learned on the spot, and the lack of experience with new technologies (Google Maps API and geotagging, AWS, and more) proved to be difficult. Some examples include passing parameters between different languages, managing API request quantities, and more.

Accomplishments that we're proud of

The front-end UI looks clean and polished overall, and it represents our machine learning model and data really well. That model itself is one we are proud of, as well as the speed at which we adapted to challenges in creating it.

What we learned

Many, many new technologies. We used the Yelp and Google Maps API’s to create datasets, also drawing from the US Census Bureau’s open data portal. We bridged Python HTTP requests and data analysis with Node.js, hosting it all on an AWS server using AWS machine learning.

What's next for WeLocate

Up next is a revamping of the internals. Finding features more representative of customer traffic would be invaluable to a more accurate learning model. Scalability to any business type is the most important goal--along with that, a pay-by-play model might prove useful, asking users to pay for analytics on a type of business that we don’t currently support in our database.

Share this project: