Frequently Asked Questions¶
Why did you create Goshu?¶
Basically, a bunch of users were bringing bots into a channel I was a part of to provide information on links, provide silly and fun commands, and all sorts of unrelated features. It got to the point where there were about six bots on a 20-user channel, so I decided to create something that incorporated the features of the rest of them.
Goshu makes it extremely easy to create commands that are not only useful, but also commands that serve no real purpose besides having fun. Some examples include a command to select and display the name of an anime character, commands to replicate an 8ball, and to replicate a “spin-the-bottle”-like query, choosing one random user in the channel.
Obviously, how you use your bot and whether you choose to include/write these ‘fun’ commands really depends on your channel. Some more light-hearted channels can easily take a bot and create some sort of ‘character’ around it, providing all sorts of fun, light-hearted commands, whereas some more professional channels can just take the useful features and ignore the rest.
Isn’t Python too slow for something like this? Why not use <language>?¶
Python makes it very easy to create new modules, so long as you’re familiar with Python scripting. It also lets us code new functionality into the core without much trouble, as well as do all this in a small, concise package.
Python’s not everyone’s cup of tea, but it’s worked out fairly well for this project. If you are familiar with some other language and want an IRC bot you can write modules and plugins for, it could be best to look into another project. It’s always best to go with something you can use – we won’t be mad!
If I write a cool module, do I need to release it to everyone?¶
We would love it if you could, or if you would even try to contribute back to the primary Goshu repository so that everyone running the software can get the great new features!
However, you don’t need to. Because Goshu is licensed under the ISC license, you have the flexibility to keep any changes to yourself if you want to.