Solidity é uma linguagem de programação de alto nível, orientada a contratos, com a síntese parecida com a de JavaScript e desenhada para ser executada na Máquina Virtual Ethereum (EVM).
Solidity é estatisticamente tipada, suporta herança, bibliotecas e tipos complexos definidos pelo usuário entre outras características.
Como você verá, é possível criar contratos para votação, vaquinhas (crowdfunding), leilões às cegas, carteiras multi-assinadas e mais.