13 Apr 2022
DOA meaning dead on arrival.
As may not be a surprise to people who have known me for a long time, I've been a discord bot developer, making such masterpieces as Blu-Ray (mild success after I brought someone else in and we started a C# rewrite which eventually ended up in a split interest which resulted in failure), syrsapingbot (failed) and rs64 (failed) but a combination of disinterest, saturation and effort per square metric tonne.
Discord bot development has barely changed since I started doing it around mid-2017 time. Apart from the introduction of developer-hostile features like privileged intents and slash commands (which is a whole other can of worms that I wrote a blog post about in February), you still do the same mundane tasks we've all be doing since the official Discord API was pushed out.
Discord hasn't moved free, core, exciting features forward for a long while now, probably since they had breakfast potatoes and realised what they could do with Nitro so there's nothing really exciting about developing Discord bots.
I even made a Skype bot and an IRC bot within my years as a bot developer, those were kinda fun to make since I was working with a different platform than Discord so everything was novel and exciting to find out which made the overall experience better.
There's 45,000 Discord bots per inch cubed, you're all quite aware of that if you go on top.gg and DBL. This makes developing a unique Discord bot a nigh impossible task. I find there really is no point in making a Discord bot due to this one fact.
You don't stand out of the crowd, everything will offer the same core features as you and you probably won't break through the one server you administer and three bot farms.
The only good, well-documented, usable Discord library to me is discord.py. It's in a language that I accept and can use (Python), it actually has good documentation (unlike Serenity) and it's easy to get a bot up and running.
Whenever I try to create a Discord bot in Rust, I try to use Serenity which has pretty bad documentation and the only way to get a bot up and running easily is to copy one of the examples.
This causes me to get burn out before I've even started writing any code and when I get burn out from a project I usually shelf it. If I get burn out before writing code then the project will just get indefinitely shelfed and never be actually made making the attempt to make a Discord bot utterly futile.
If anyone is seriously considering becoming a "professional Discord bot developer", they're not going to go anywhere by making their own thing unless they have a really good unique idea. If you wanna develop a Discord bot, try getting hired by the people who already have successful Discord bots (yes, they exist), then you may get motivated by the monetary value.