Inspiration
I was inspired to build this product when I would scroll on Twitter and want to see what people in my network were up to and I would come across a blog or a podcast, or other media and not be ready for it at the time, but then I would forget to go back and check it out. I was also constantly astonished when I would find out that someone in my network was creating content somewhere and I didn't know about it.
And as a creator, I wanted it to be easier for people to discover my content. I didn't want to spend all of my time marketing it, and so I came up with this bot as a way for it to be discovered.
What it does
It's a simple bot that responds when you tweet certain actions at it. There are two modes currently: adding content and discovering content. To add content, tweet "add" to the bot. If that word is somewhere in the tweet, it will then prompt the user for the type of content they want to add. This is important for the discovery phase, because it allows the link to be tagged correctly. After they specify the type, it asks them for a link. It saves the link and then gives the user confirmation.
The second mode is discovery mode. In this mode, a user can tweet a type of content at the bot, for example 'podcast', and it will search the accounts they follow for a content record of that type and return a random result.
Currently supported content types: blog, podcast, TikTok, YouTube
How we built it
It's built using Celery and Django, primarily, with a Postgres database and Redis as the message broker for Celery. It periodically looks for the most recent mentions of the bot that haven't already been processed and then responds to the user with set responses.
Challenges we ran into
The main challenges are related to keeping the bot flexible enough to be useful but simple enough that it wouldn't easily break. In the end, I kept it quite simple in what it looks for and created a small set of rules that it would obey. This should make it easy enough to extend in the future, while making it easy enough for users to pick up and start using quickly.
There is another challenge that comes in with regards to usefulness though. It won't ultimately be useful until it hits a certain level of data saturation in the sense that people who query it will have people in their network that have registered different types of content. To overcome this, I'm planning on seeding it in certain communities that I'm a part of and reaching out to people who are interested in getting their content discovered. I've gotten very positive feedback in the short time since it has been live.
Accomplishments that we're proud of
I'm really proud of the bot overall. I think it works quite well and I've gotten positive feedback for it so far. I was able to validate some of my assumptions and deliver something novel and useful. It's been a lot of fun to build, too, and I think that's a big part of designing software, so that's a win in my book!
What we learned
Ultimately, I learned that I have identified a problem correctly. There is a desire for new ways to get content discovered. Creators are overwhelmed with the amount of marketing effort they need to do in order to get their content discovered when they would like to spend their time focusing on the part they do best: creating content.
On the discovery side, I learned that there is interest in new ways to discover content. People aren't necessarily happy with the algorithmic pushing of content that we see all over the place, so this is a good way to have control over the content you see. By following accounts, you can easily tap into their content libraries this way.
What's next for Friend Content Bot
In the future, I've got a few key areas that I want to expand on. In the short-term, I'm going to add support for new content types. I've already gotten feedback on things that people would like me to add. In a slightly longer-term context, the goal will be to get content added for discovery. I need to get the database to a certain level of data before it will be useful for the majority of people. So there's going to be some marketing and partnership efforts that I'm planning on pursuing. Long-term, I want to add content enhancement data. For example, scraping websites to figure out keywords, subscribing to RSS feeds, etc, so that I'll be able to offer new methods of discovery to users. This will help me turn it into a product that gives users new ways to explore the internet using their existing social graphs. I think I've got a lot of potential in this bot for future endeavors and I'm excited to keep building on it!
Log in or sign up for Devpost to join the conversation.