The App in Action
Tap once to view title, tap again to view short blurb about news piece
Tapping a third time will open up the story inside the app for you to read!
Customization Screen. Tapping and holding on any image will bring this up.
Checklist for Sources
Able to have as many or as few news sources as you want!
Our web app, which creates a word cloud of Google's image ML labels for cover photos from the past year. (newsin.pictures)
Clicking on words will give you one of the images that google labelled for that label. This one was for "speech."
We spend a lot of time trying to stay caught up with the news, but it can be hard to keep track of everything. We live in New York City, where we can walk by any bodega and get an idea of what’s going on in the news just by glancing at the newspapers on the stand.
What it does
A Thousand Words displays the cover photos and headlines of your favorite newspapers and magazines, recreating that bodega news experience in app form. It provides a smooth user experience with customization so you can have your favorite news sources front and center.
There is also a companion data visualization web app that displays a word cloud of descriptions from the past year of The New York Times’ front page images. Clicking on a word opens up one of the images that corresponds to said label.
How we built it
The app for Android is written in Java, in Android Studio. We used standard Android libraries to build it. We made the UI as simple as possible, the front page is just a vertical layout with a bunch of images on it. This makes our app extremely lightweight and able to run on any size phone with very low power usage.
The backend is written in Python and runs on Google App Engine. We used the standard App Engine
webapp2 framework, and
urllib to scrape images from the web.
Challenges we ran into
It was a challenge to get high quality images to download efficiently and quickly, because the news can turn on a dime, or it can stay the same for hours. We created a caching system, along with a bunch of enhancements in the cloud that made the app use much less data and battery power. We also spent a lot getting the Google Vision API to do what we needed it to do.
Accomplishments that we're proud of
There have been a lot of data visualization projects that have taken into account newspapers and the things that newspapers say. But what about the cover photos that play such a crucial role in documenting the world around us? Well we decided we could visualize that data as well. First we collected all the front cover images of the New York Times from the year 2016. Then we used Google’s Cloud Vision API to describe each picture with a couple of labels. Using these labels we were able to build a fascinating word cloud of the most prevalent themes of the cover photos from the New York Times in 2016. We have always felt that this is something that would be awesome to do, and now that we can see it in action it is definitely something that we will use in the future!
What we learned
What's next for A Thousand Words
We plan to continue working on the Android app, soon to be followed by an iPhone version. The Google Cloud Vision API was a great start in our attempt to describe front page images; however, we believe we can do an even better job in representing what images actually mean. In addition, we’d like to continue the data collection process so we can make more awesome data visualizations, maybe even connecting it back to the phone app in some way!