Programming in openhab2 that language?

Hi
if I would like to learn more about Openhab programming. I Would ikke to be able to make bindings, rules, etc. What should I learn, is there a special language to learn?

In question of rules: http://docs.openhab.org/configuration/rules-dsl.html
It’s a domain specific language, based on xtext and xtend, and therefor it’s near to java.

In question of development: http://docs.openhab.org/developers/
openHAB is based on java.

Thanks

Is there some sites you could learn, maybe youtube guides, to getting started programmering in OH