Learn Ethereum in 2024. #1. Welcome.

João Paulo Morais
5 min readMar 2, 2024

--

Two years ago, I wrote a series of articles about Solidity here on Medium, intending to share everything I had learned about the subject. The series received positive feedback, including compliments and a few job offers. Since then, I’ve been eager to create an even more extensive series, exploring Ethereum in general rather than solely focusing on Solidity. I believe the time has come.

The primary motivation behind my desire to write a “book” about Ethereum is the apparent absence of truly comprehensive and up-to-date literature on the subject. The intricacies of blockchains and Ethereum extend their influence across history, mathematics, finance, and computing. Understanding the purpose and inner workings of blockchains is a complex task, and numerous books lack the clarity to convey fundamental concepts in a didactic manner. Leveraging my background as an academic and teacher (with expertise in black hole astrophysics), I am confident in my capacity to contribute effectively to this area. Honestly, I find greater satisfaction in teaching than in programming.

Regarding existing written material on Ethereum, I must commend the quality of the official documentation. Nevertheless, documentation is not inherently designed to be didactic or to delve into intricate details. In this series of articles, my purpose is to unravel these intricate details. It’s worth noting there’s an outstanding book on Ethereum that I’ve read twice: “Mastering Ethereum: Building Smart Contracts and DApps” by Andreas Antonopoulos and Gavin Wood. However, given its 2018 publication date, the book is already outdated. While I don’t aim to surpass the excellence of this book in my article series, I am committed to delivering the best possible content.

Why learn Ethereum

Ethereum is a blockchain platform known for its ability to execute smart contracts. It was the first protocol to introduce the concept of smart contracts to the blockchain world and remains the most widely used protocol for creating decentralized applications today. While it’s possible that a more promising protocol could emerge in the future, Ethereum’s dominance persists, and any such transition seems unlikely. Ethereum remains a key player guiding the development of public blockchains, and its creator, Vitalik Buterin, continues to be a prominent figure in this space.

When I began delving into the world of blockchains, my knowledge was quite limited. Frankly, I had little understanding of what a blockchain truly entailed. It’s common for most people to first encounter this field through concepts like cryptocurrencies and smart contracts. Undoubtedly, Bitcoin remains the most widely recognized cryptocurrency and primary use case, partly due to the aura of mystery surrounding its anonymous creator, Satoshi Nakamoto.

For many enthusiasts, Bitcoin appears to be the sole worthwhile investment and the only genuine use case for blockchains. However, this perception may not be entirely accurate. Even after fifteen years since Bitcoin’s emergence, predicting the future of blockchains and cryptocurrencies remains a challenge.

I didn’t closely follow the early stages of Bitcoin or Ethereum; however, I closely monitored the surge in popularity of NFTs, or non-fungible tokens. Presently, this market appears to be undergoing a substantial decline, leaving many investors disheartened. Whether NFTs represent the future of artwork and computer games remains an unanswered question.

Numerous games, claiming to provide earnings and often resembling pyramid schemes, have proven unsuccessful, resulting in significant financial losses for many players. Some were dubious from the outset. A parallel observation can be made about numerous lesser-known cryptocurrencies that entered the market only to vanish shortly thereafter. In summary, both fungible and non-fungible tokens continue to pose a risky venture, and the cryptocurrency bubble shows similarities to the dot-com bubble of the 1990s.

Despite its challenges and setbacks, the cryptocurrency market continues to demonstrate remarkable resilience. It’s not the first time that significant events, such as the collapse of a major brokerage or the apparent decline of a currency or protocol, trigger the market to enter a bearish phase. However, regardless of the adversities it faces, the market has consistently bounced back. This resilience can be attributed to the fact that cryptocurrencies and blockchains represent revolutionary yet evolving concepts. They grapple with issues while actively seeking innovative solutions to overcome them.

In the current landscape, critical concepts such as sharding, layer-two solutions, and account abstractions are subjects of intensive exploration and research. You don’t need to grasp the meaning of these concepts at this moment, but I’m confident that through this series of articles, you’ll develop a deeper understanding. The crypto realm, akin to a universe unto itself, remains a dynamic and constantly evolving domain.

Purposes and requirements

The purpose of this series of articles is to provide a comprehensive insight into Ethereum, covering its historical development, evolution, and technical aspects. My goal extends beyond ensuring your comprehension of Ethereum; I aim to empower you to not only understand but also to write smart contracts and create decentralized applications within its ecosystem.

The content that follows is primarily intended for individuals with a background in computer science or web development. While newcomers to the field are welcome to delve into this material, I will assume familiarity with programming concepts without providing exhaustive explanations. Furthermore, I will employ JavaScript to illustrate the creation of user interfaces for Ethereum and smart contracts, presupposing a basic understanding of the language.

It is assumed that you possess some knowledge of JavaScript, Node.js, HTTP protocols, and command line usage. Additionally, I expect you to be acquainted with a development environment like Visual Studio Code. This series of articles aims to offer in-depth insights and understanding rather than surface-level instruction, even for those who are new to the subject matter. My commitment is that I will never instruct you to perform a task without providing a clear explanation of the underlying reasons. In order for the text to be read fluently, however, I will not explain to you how to open a text editor or save a file. My ultimate goal is for you to comprehend Ethereum thoroughly.

With that said, I sincerely hope that this series of articles assists individuals in delving deeper into the subject, and I welcome any constructive criticism and suggestions. Feel free to reach out to me at jpmorais@gmail.com. This is a project in progress, commencing now with no predetermined end date. In advance, I express my gratitude to everyone who contributes to this journey. Let’s embark on this together.

--

--

João Paulo Morais
João Paulo Morais

Written by João Paulo Morais

Astrophysicist, full-stack developer, blockchain enthusiast. Technical Writer @RareSkills.