# Prerequisites

{% hint style="info" %}
[**Book an audit with Zokyo**](https://www.zokyo.io/)
{% endhint %}

{% hint style="info" %}
**Understanding the Prerequisites for Proxy Contracts in Ethereum:** Before delving into the depths of proxy contracts and their intricacies, it's beneficial to arm yourself with some foundational knowledge. This checklist outlines the key areas that will help you better understand and navigate the tutorial. If you find yourself unfamiliar with some aspects, don't be discouraged. This tutorial is designed to build upon your existing knowledge and fill in the gaps, ensuring a progressive learning experience. Remember, every expert was once a beginner.
{% endhint %}

To extract the most value from this tutorial, a foundational understanding of the following areas is recommended:

1. **Blockchain Basics:** Grasp the core concepts of blockchain technology, including distributed ledger technology, decentralization, and consensus mechanisms. Understanding how transactions are appended to blocks and how these blocks chain together is vital.
2. **Ethereum:** Since our focus is on the Ethereum platform, it's beneficial to be familiar with its architecture, functionality, and the Ethereum Virtual Machine (EVM). Knowledge of Ethereum transactions, encompassing gas, gas prices, and transaction fees, will also serve you well.
3. **Smart Contracts:** Know the essence of smart contracts, their applications, and operational mechanisms. Comprehending how they interface with the Ethereum network and with other smart contracts will offer a clearer perspective as you progress through the tutorial.
4. **Solidity:** With code snippets being an integral part of this tutorial, having a working knowledge of Solidity, Ethereum's go-to smart contract language, is crucial. This encompasses a good grasp of its syntax, data structures, and functions.
5. **Ethereum Storage and Memory:** Recognize the distinction between Ethereum's storage and memory, as well as how data is organized and accessed in each. Understanding topics like storage slots and memory layout will prove instrumental when discussing proxy contracts.
6. **Delegate Calls in Ethereum:** Since delegate calls are a cornerstone of proxy contract implementations, understanding their behavior, how they differ from regular calls, and their implications on storage and context is essential.
7. **Upgradability Patterns:** Familiarize yourself with the concept of upgradable contracts on Ethereum. This includes understanding the motivations for upgradability and common patterns adopted in the ecosystem.

If you're new to some of these concepts, fear not. As we delve into proxy contracts, we'll also revisit and build upon these foundational ideas, ensuring a thorough and enriching learning experience. Your determination to learn is the most crucial prerequisite.
