Here are the best courses and resources for learning Solidity (Ethereum dApps)

Solidity learning resources are not that known, so here’s a useful list for learning solidity and Ethereum development.

First of all — what is solidity?

“Solidity is a contract-oriented, high-level language for implementing smart contracts. It was influenced by C++, Python and JavaScript and is designed to target the Ethereum Virtual Machine (EVM).”

Secondly — what is Ethereum?

In a nutshell, ethereum is a blockchain based distributed ledger which keeps track of all the states/transactions. A single entity(computer) is called a node, and all nodes combined creates the ethereum network. Think of Ethereum as this “super-computer” and solidity a way to give instructions to the “super-computer”.

But why is this even a thing?

Now, that’s an excellent question. Ethereum is an interesting concept. Why?

Ethereum allows us to build decentralized apps (dApps). Here’s a couple dApp use cases top of my head:

  • No one has the right to censor you nor delete your comments on the free web. Freedom of speech. It’s especially important for modern media platforms. (Transparency)
  • Cryptocurrencies/tokens. You have the full rights to your assets and no one has the privilege of freezing your accounts. Transferring cryptocurrencies only requires the raw computer power to compute the transaction.

So how do I get started building Dapps? Great question, I gathered a list to help you kickstart developing dApps with solidity and ethereum.

Ethereum and Solidity: The Complete Developer’s Guide

What you will learn is the following.

  • Design, test, and deploy secure Smart Contracts.
  • Understand the why engineers would want to create an app with Ethereum.
  • Use the latest version of Ethereum development tools (Web3 v1.0)

Ethereum Smart Contracts

The following things you will learn from this course are:

  • State, Functions, Modifiers and Events
  • Payable functions
  • Inheritance
  • Contract To Contract Communication
  • Libraries

Smart Contracts and Decentralized Apps 101

This course grants eye-opening experience in the following fields:

  • Solidity and ethereum basics (101).
  • Interact with smart contracts from a UI. (Thanks to web3.js)

“CryptoZombies is an interactive code school that teaches you to write smart contracts in Solidity through building your own crypto-collectables game.”

Discover Ethereum & Solidity

Many people are excited about the promises of Ethereum and are itching to create a new generation of decentralized applications for the web.
However, navigating the Ethereum landscape as a developer can be very confusing, since writing apps for the blockchain requires grasping many new concepts. On top of that, most tutorials are out-of-date or use deprecated tools in a rapidly changing ecosystem, making it hard to even know where to start.
That’s why I’ve created this course, where beginners can create a complete DApp from start to finish, using common best practices from the Ethereum ecosystem.
By the end of the tutorial, you will have all the skills required to design your own smart contracts in Solidity, hooking them up to a modern web interface, and create your very own token sale to help you successfully kickstart future blockchain projects.

Learning Solidity

What you will learn:

  • From basics to state modifiers.
  • Auditing your code and finding security flaws.
  • Truffle, Testrpc, ERC20 tokens.

Capture the Ether — (game)

Awesome Solidity — (Github repository)

One of my favorite curated list consisting of solidity stuff.