The sheer volume of speculation and scam ICO's is the main opposition and it creates doubt in new comers about viability for future large scale integration. This significantly reduces the amount of processing power required to validate the network. Ethereum uses the solidity language for programming smart contracts, whereas Cardano is developing its own language, but its focus is really to be interoperable with other cryptocurrencies.