Is there a specific language I'll write in?
A specific client?
A specific IDE?
Where can I get started?
If you don't wish to create intellectual property rights over your ideas or software, you could start by studying the licences to existing solutions and then study their documentation and source code. If you don't want to be bound by ...