I have a lot of projects in mind. Some projects that are in my backlogs are playing around with AI tools such as Stable Diffusion for image generation or so-vits-svc for AI-generated voice. But, that will be for another time as what I feel like doing right now is to build something that I have never built before and I feel that will be useful not only for me but for other people. I will be building my first Discord bot called 'Borneo Bulletin Bot'.
In case you don't know what Discord is, it is basically an instant messaging social platform like Microsoft Teams or Slack. Though it was mostly targeted towards young people, especially gamers when it was new, it is now gaining popularity and is even used for large communities of developers such as OpenAI and MidJourney. Similar to Slack, Discord allows developers to create and add bots to their server for moderating purposes, play music, reminder system even a fully-fledged RPG game.
Here's the basics of what the bot will do:
And one more important feature which is basically the reason I want to build this bot:
Hello, this is Anwari from the future. I decided that I won't be adding the summarize function because using OpenAI API requires money... and I'm broke 😭.
I wanted to keep up with the news to know what is going on around me. Unfortunately, I don't want to go and buy a newspaper to read big blocks of texts or tune in to the radio/tv for 10 minutes every single day. I am also not a fan of following news accounts on social media because I only use social media to know what my friends & family are up to (and to scroll through funny videos).
Whenever I tried to read newspaper
Discord is pretty much always open whenever I am on my computer and I always keep my chats clean from unread texts. With this, the solution of using Discord Bot will very likely for me to read news.
This project will be a good practice for me to develop my skills as a software developer. I am planning to treat this project like a project given by an actual client and will be applying software engineering fundamentals from requirements engineering to documentation.
I will try to create a working product within 10 working days. Maybe more, maybe less as this is the first time I am working on a Discord bot but I will try my best to complete it within the time limit.
As for the technical details at this point in time I can see myself using Python for the Discord Bot, Scrapy to crawl and retrieve the news article and gpt-3.5 to summarize the news. I will be scraping the website as Borneo Bulletin does not seem to provide any API that I can freely access to retrieve the news.
Logo of tools that I will be using
I will write another post when I am halfway done with this project and I will share the challenges I faced and how I planned to tackle them. Until then.