Best programming language for chat bot?

I have been writing a bot in mIRC for about a year now. I’ve gotten in mostly complete with the except of websockets so I can use Twitch/GameWisp API. I have decided that I want to convert the bot to a new language that will provide a free platform if I ever decide to publicly release the bot’s code, and one that provides multi-platform so that the bot could be run on a Raspberry Pi on linux or something of the sort.
After doing some research, it seems like the most widely used languages seem to be Java, Javascript, or Python for these types of projects. I’ve seen more Java/Javascript than Python.
I am looking for advice on which would be the best language(s) to learn and use to develop the bot. Thanks for any help/advice :slight_smile:

1 Like

The language itself doesn’t matter much. You should use one you’re familiar with, or one you would like to learn better. The two biggest bots use Java (moobot) and Javascript (nightbot), but that definitely doesn’t make python a bad choice either. A few larger bots run on .NET (C#), even on Linux.

The choice mostly comes down to your own preference.


I have had some experience with Java and Javascript. I have planned to learn a bit of Python, but haven’t gotten around to it. The hard part for me is I don’t know if either langauge to would limit what I would want to do. I have heard from a group of people that JavaScript/Node.JS would be better due to the fact that it’s a internet/server type of application, but do not know if this is true.
If Java and Javascript would equally be helpful and wouldn’t limit what I was trying to build, I’d learn towards Java as there are many public IRC libraries I could use for reference, and haven’t seen too many for JavaScript.

Node.js has node-irc and tmi.js. Javascript can’t do threading, which may be worth noting, but otherwise no “big” language should limit you in anyway. Some things will simply be harder to accomplish.

In my opinion the best prohrammming languages are javascript and java

Depends what it’s going to do, as a general bot, GoLang, NodeJS (aka JavaScript) or Python are good shouts.

But the “chat bot” space is fairly crowed, there are MANY existing libraries that help you do what you need. Do we need “yet” another framework. Anything GameWisp’y or other API’s is tending into the realm of “not just chat bot” than then you are talking about infrastructure…

Also, there is no “best”

“best” = I can do what I want to efficiently and effectively in $given language to the best of my abilties

I recommend python, cuz its ez to learn and u can do a lot with this language.
Java is also a great choice. its cross platform and with eclipse and netbeans u have 2 very good IDEs, that can help u to learn Java at the beginning.

With Java and Python u can build your own bot from scratch.

There is a great IRC API called “Pircbot” and the modern version, based on Pircbot and fork by some1, called “PircbotX”.
Both on GitHub. in my opinion worth a look.

I have done some more research, found a couple of tutorials, took a couple mini courses, and it looks like overall I’m enjoying Python more due to the tutorials I watched, and by the fact that I have both A: Been able to pick it up easily, B: Find a source code for a bot that both works and I have been able to successfully figure out and begin editing to test stuff and C: I’m enjoying the language of Python and how I can relate my knowing of mIRC logic to it.

@GaryTheCoolGuyIII Are you using the mIRC api or the REST api for your chat bot? I’ve been making a chat bot as well, but so far it’s only limited to fetching Rank / LP using the League of Legends API and a very naive system of keeping track of viewers / viewed hours and have implemented a 50/50 bet which users can use their points earned from watching the stream.

I have just a basic knowledge of Python (and I’m honestly pretty terrible at using OOP so my code’s a bloated mess)… trying to explore what I can

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.