Beginning ethereum smart contracts programming : with examples in python, solidity, and JavaScript (2019)