If you already have working code in Python and Perl, and you have at least some basic knowledge of Java, it probably shouldn’t be too hard to create a binding.
I’d recommend reading through the first three sections in the developer docs (Overview, Coding Guidelines, and Bindings) first.
There is a script that will create a skeleton binding for you to use as a starting point.
Then take a look at a few existing bindings that do something similar to what yours will need to do. For example, if you are accessing a REST API with JSON payloads over HTTP. look for another binding that accesses a REST API using JSON payloads over HTTP. This will save you a lot of time, since everything you need to know is probably not in the docs.
There is an XML file that describes the things and channels that your binding will provide. You may want to think that through before you jump in to the actual binding code.
Finally, I’d recommend using Eclipse as a dev environment unless you really feel strongly that you need a different one, since that is more or less the standard dev environment for openHAB.