IoTeX Blockchain integrates the Ethereum Virtual Machine (EVM), which is widely used by blockchain developers. Existing EVM-based dApps can be already ported over to the IoTeX Network with no changes!
You can use Solidity as a programming language for IoTeX smart contracts: the blockchain is 100% compliant with Solidity syntax, up to its latest release.
You can find many resources about smart contract programming with Solidity on the Internet: starting from the official docs and GitHub repository, to this best practice handbook and the popular CryptoZombies interactive course, plenty of choices are available!
Another great source to start with is this book from 'O Really: Mastering Ethereum: Building Smart Contracts and DApps - 1st Edition (opens new window)that is freely readable on GitHub.
Besides IoTeX smart contracts being fully compatible with Ethereum ones, developing your contracts on the IoTeX blockchain brings some additional benefits: IoTeX is designed to be an IoT-Friendly platform, where the blockchain is the orchestrating layer for devices coordination and end-to-end trusted data transfers.
For this reason, the IoTeX design provides a fast and scalable blockchain: that means your smart contracts on IoTeX will run with a 5-second confirmation time, instant finality of transactions, and negligible transaction fees! Additionally, with the unique-of-his-kind IoTeX Tokenomics in place, millions of "Powered by IoTeX" IoT devices getting registered on the blockchain, more and more services providers joining the ecosystem, the IoTeX blockchain is the perfect environment for deploying smart contracts that will be used in real-world applications!