Дима, советую к прочтению: http://inaword.ru/bez-rubriki/smart-kontraktam-ethereum-eto-prosto-chast-1-vvedenie/
Несколько статей на предмет разработки смарт-контрактов. Не очень актуальные, зато относительно просто написаны и раскрывают многие ключевые моменты.

Если будет мало, советую еще вот это:
https://habr.com/company/raiffeisenbank/blog/338172/
https://habr.com/post/340928/

Краткая сводка:
Смарт-контракты мало чем ограничены. Основной используемый язык для их написания - solidity (к слову, в обозримом будущем дам обучающий материал). Язык очень похож на javascript (что кого-то привлечет, а кого-то отпугнет))). Там есть все необходимые операции сравнения, вычисления и т.п., а так же циклы и условия. А еще можно составлять контракты из контрактов. То есть в итоге можно обширную логику прописать, вплоть до интернета вещей.