Let's talk about how programming smart contracts occurs with the technical side for example Ethereum Blockchain. What features are characteristic for creating automated documents?
Writing smart contracts is carried out using the language Solidity. It is somewhat similar to JS, but you can use it to implement computational functions of different types.
To run the code, use Ethereum Virtual Machine (EVM). Pay attention that the code is guaranteed to run and checked by each member of the system. That is why you need some mechanism that limits consumption of resources by individual smart contracts. Development of smart contracts shall be accompanied by the introduction of gas essence.
Etherium smart contracts perform a lot of useful functions. That is reading and sending data, call other contracts and so on. Operations require special fuel that is paid by Ether crypto currency. The cost of such currency is formed by the finance market in a dynamic development. The trigger for the fulfillment of the contract is considered a transaction. Account that started the transaction must pay for fuel by crypto currency. In addition, there is a limit of fuel consumption. Only in this case the smart contract audit will be performed without errors, which can lead to burning of the entire crypto currency on a particular account.
If you decide to order a smart contract, remember that it is different from the usual version of code execution. Any error is very expensive and operations are expensive and slow. Cost of smart contract is low and has a complicated mechanism. You need to write new code, urging parties to use smart contract. This is a new social contract that must be signed by all parties. This is a striking difference, since previously you had to push updates of a centralized system to consumers. Their views did not play an important role. But smart contracts impose the certain limitations that must be taken into the account.