This 2 part blog post series (Part 1 / Part 2) by OpenZeppelin teaches you everything you need to know about the inner-workings of the Ethereum Virtual Machine (EVM) from a software developer's perspective.
Reading through it you'll learn about concepts such as Message Calls, Data Management, the Stack, Memory vs. Storage, Smart Contract creation and more.
- OpenZeppelin