Sort:  

A dApp is a frontend + smart contracts [1]

HTML + CSS + js + jQuery should give you the tools you need for frontend.

As far as writing smart contracts, since Hive is a fork of Steem, I believe that tools like harpagon's steem smart contracts tool 2 can either be adapted or used directly to implement smart contracts with your existing javascript knowledge.

In terms of extending this knowledge to other blockchains, it's almost certainly worth learning some C++. This would give you an insight into Solidity [3] as well as a better understanding of the way blockchain developers think about building smart contracts into their products.

If you would like to know about the blockchian itself, then you should know C++ because the blockchain was built using C++.

If you are planning to write some code using the RPC nodes and try to perform some operations, your javascript knowledge should be sufficient. There are two javascript libraries available for Hive.

  • HiveJS
  • Dhive

You can use the above to get started. There are also other libraries like Beem using Python and also another one with ruby that can also interract with the blockchain. But for now I think HiveJS and Dhive should be sufficient to get started as you are already familiar with js.

javascript or Ruby to interact with the HIVE apis and use its features. I also think python works for some features if you use Beempy.

Then, for your webapp, you can use any language you like!