As New Yorkers (and even just as city slickers in general), we move on with our lives in a rather fast manner. We optimize for speed, convenience, and just not minding anyone else's business (distrustfulness). As useful as this attitude has been (looking at you fire mixtape sellers everywhere), this can often be taken to severe extremes, and undermine the urban sense of community. Street performers (buskers), wherever they perform, are very integral to maintaining this sense of urban community. Despite low annual income (relative to the United State's median income), they provide not only art, culture, and a positive boost to happiness, they disproportionately are members of historically disadvantaged ethnic groups or races. We believe that they deserve our utmost attention, and have built a corresponding platform and model to meet that vision.
What it does
StreetSync has four main features:
- It allows them to optimize where they are by looking at hourly population data and placement of other performers to provide special events or occasions like concerts and public performances.
- It lets street performers share their real time location with other people and users to reach a wider audience.
- It allows them to build a personal brand by creating a profile that people who use the app can favorite and follow.
- It notifies them of city programs that support street performers and the arts.
How we built it
We first started by assessing, whether there first was problem. We conducted interviews across NYC, particularly focusing on the busking hotspots of Times Square and Penn Station. After conducting several interviews with various street performers, we gained enough insight into how we could build a platform that could further suit their needs. Various degrees of verbal assent to features that we proposed were given.
This formed the basis of our user stories.
We then proceeded in orderly fashion by creating a design doc. The design doc set goals, non-goals, metrics, and milestones. It also determined what existing solutions were already in place, and why they were not very effective. It also detailed our proposed solution, which would be an iOS app that lets street performers find the most optimal place to host public concerts based off factors such as population density, time of the day, time of the week, and special holiday/anniversary designation. Users would be able to more consistently support their favorite street performers and artists, by knowing their location, and being able to go out of their way to go their and support them.
Challenges we ran into
We proceeded to fulfill the milestones, even if there were unforeseen difficulties. For example, Apple made things unnecessarily hard to complete our project, due to the fact that we had four team members, only two of whom had Macbooks, with only one that had one with Xcode that would actually sorta work (just sorta).
We spent a significant time attempting to overcome the Apple obstacle, and eventually decided to take the lateral move and brute force past it (a.k.a. we tried to use Dartmouth lab computers). This proved unsuccessful, as they did not have Xcode on them. We were then pigeonholed into only two members of the team working at a given time.
Other obstacles faced include: determining an equation for a bimodal probability distribution (we white-boarded this), modeling and manipulating data at a scale, converting CSV model data into aggregate values using TensorFlow, and hooking up the iOS app with a CoreML model converted from the TensorFlow model.
Accomplishments that we're proud of
We are proud of the fact that we somehow stayed relatively par to the course, following the plan.
We are also proud of the fact that this can and will have real-life impact, in the form of the street performers who we interviewed, who we asked to follow up with in order to share our application with them via their emails.
What we learned
Bhavesh learned the mathematical aspects of approximating a function for machine learning analysis. Jonathan learned about creating organizational structure, by working as a product manager, working to ship out features, and delegating various features and tasks. Michael learned advanced features concerned with data manipulation in TensorFlow by working as a code developer that applied machine learning toward application training models.
What's next for StreetSync
We plan to move this from more than just a hackathon Proof of Concept project to a deployable mobile application that could beneficially impact real street performers in their day-to-day lives.