// blog

284 articles on Ethereum, Solidity, and blockchain development.

Debugging "VM Exception: out of gas"

"Out of gas".. what a lovely Solidity error! This really use to make me mad when I started with Solidity smart contracts! In this video, I am going to show you how to simply solve…

Types of Solidity runtime errors

"out of gas", "revert", "invalid opcode", what are all these weird error names in Solidity? In this video I will give you a full list of the errors in Solidity, and I will explain…

Debugging with syntax highlighting

To debug syntax errors, you can rely on Solidity syntax highlighting. Fortunately for us, Remix has syntax highlighting activated by default, so we are good about this. In this vid…

Syntax vs runtime vs logic errors in solidity

A lot of people are confused about debugging in general and don't know the difference between a syntax error and a logic error. It's important to be understand the difference, so t…

Debugging calls vs transactions

When I started to debug Solidity smart contracts, I was really confused by the fact that although there was a return statement in Solidity, I could not always read returned values…

Split payment - Part II

Previously, we have implemented the main functionality of our split payment smart contract in Solidity. In this video tutorial, we are going to finish smart contract by adding acce…

Split payment - Part I

In this video, we will start a smart contract to do split payments. Split payments allow to split an Ether payment into several addresses, with different amounts (i.e recipient add…

Ether wallet - Part III

This is the last part of the tutorial on how to build an Ether wallet smart contract. You will learn: how to do an ether transfer in Solidity the different unit of Ether (wei, gwei…

Ether wallet - Part II

In the previous episode we started an Ether wallet smart contract, and we can now send Ether to another address. However, everybody can call the send() function and steal all the E…

Ether wallet - Part I

In this video, we will start to code a wallet for Ether, using a Solidity smart contract. You will learn how to send money to another address with the transfer() method of an addre…

Crud - Part IV

If a user does not exist, no error is produced. We should change that. In this video you will learn how to use the revert() Solidity construct to produce an error…

Crud - Part III

In the last part of this tutorial we finished all the functionalities of our smart contract. Unfortunately, we have a lot of code duplication in the update and delete function. We…

Crud - Part II

We are going to continue our CRUD smart contract and finish the main features. You will learn: "Update" and "Destroy" in CRUD Delete an entry of a Solidity array…

Crud - Part I

We will start a CRUD smart contract in Solidity. Crud stands for Create, Read, Update and Delete, and represent a very standard set of data operation that most application needs to…

Advanced storage

In this video, we will build on the previous "Simple storage" smart contract, and store list of data instead of just a single piece of data. You will learn how to: Represent list o…

Simple storage - Part II

In this video, we are going to finish our simple storage smart contract, which can set and get the value of a variable. You will learn: Difference between transaction and calls How…

Simple storage - Part I

In this video we are going to create a smart contract able to store a variable. Very easy to follow! You will learn: how to persist data with state variables in Solidity how to upd…

HelloWorld smart contract

The obligatory hello world tutorial! Here we go! In this video, I am going to show you how to create a simple hello world smart contract that is able to return a static 'hello worl…

Simple smart contract

Starting with Solidity smart contract is a bit overwhelming... the tools, the Ethereum Blockchain, the Solidity language... that's a lot to learn. I created this video for people w…

Annoucements made during Devcon4

Devcon4 just finished about a week ago in Prague. The 3-day event attracted thousands of guests this year and the rooms were more packed than ever. As the largest Ethereum conferen…

New Features In Solidity 5.0

The upcoming Solidity 5.0 version is coming with a couple of breaking changes, and you should make sure to learn about them. The full list of changes is quite big, but in this arti…

New Ebook To Learn How to Build Ethereum Dapps

I have just turned the tutorial series on how to build a todo list Dapp into an 62 pages ebook . In this ebook I give you step-by-step instructions to build a full Ethereum Dapp, w…

Best Way To Learn Solidity For Beginners

If you want to code Ethereum Dapps, you will need to learn Solidity, the programming language for smart contracts. Although Solidity looks simple its not and as a beginner its not…