We considered ideas for each of the four tracks by thinking of what people would be interested in for each idea. To come up with this idea specifically, one person thought of using a twitter bot, since none of us had experience with that before, and then we thought of how we could incorporate a Twitter Bot with art. Thus, "art ideas" was born.
During quarantine, we found it difficult to come up with art related ideas to pass the time. Finding a book to read or a movie to watch can lead you down long Google threads, even taking you to the infamous second page of Google search results. We wanted to create a tool to help users stuck at home channel their inner artist by providing reasonable and easy ideas for them to use as inspiration!
What it does
We made a twitter bot that gives you ideas! Mention the bot (@artideas10) in a tweet, and use a certain hashtag, and it will reply with an idea and like and retweet your tweet. If you need an idea for something to draw, tweet @artideas with the hashtag #drawings for drawing ideas. You can also use:
- #musicals for musical suggestions
- #songs for song recommendations
- #movies for movies to watch
- #books for literature to read
- #help to learn more about what the bot does
How I built it
To build the bot, we first applied for twitter developer access to get a Twitter API key. Then, we wrote the bot in Python, using the tweepy module (which implements the twitter API, in python).
After writing the bot in Python, we pushed the code to a github repository and linked that repository to a Heroku app, where we were able to successfully deploy the bot.
For data storage, we used SQLite to store lists of random books, musicals, and other media in our ideas.db file and employed queries to parse the data, passing it to our bot.
Challenges I ran into
Getting Heroku to host and deploy the app was particularly challenging.
We also had to work around Twitter's rate limit on the number of requests per hour—this limited both our ability to test the bot, as well as the functionality of the bot (it delayed responses).
Accomplishments that I'm Proud of
- Tweepy is an awesome API to build Twitter bots in python. That's why its name is Tweepy—Twitter + python. When we started making our bot, the first thing we learned is how to use tweepy.
- Then we added some images, movie lists, art ideas, etc. to our database with SQL.
- After writing the script for our bot in python, the next challenge was to deploy it to cloud.
- For deployment, we used Heroku. It was our first time deploying it, so learning how to deploy the bot was an accomplishment.
What I learned
We learned how to use Twitter API / the Python tweepy package, as well as how to host an app on Heroku.
We also learned how to retweet, follow and favorite the tweets, as well as a better understanding on Twitter API.
What's next for Art Ideas
In the future, we could expand Art Ideas by adding support for a wider range of hashtags and increasing support for image inspiration. The future can’t be determined, as they say, but it can be predicted using Data Science. We can add NLP (Natural Language Processing) to our bot, which can do pretty good sentiment analysis; and we can respond better to the tweets with the help of NLU and Spacy.
The Future is brighter.