What resources exist to help people learn the solidity programming language and create smart contracts & DApps on Ethereum?
There are a variety of resources online that are helpful for both experienced developers and beginners who want to learn more about building applications on the Ethereum blockchain. Keep in mind that because the technology is so new, many of these resources are continually being updated and improved by the community.
- The most comprehensive resource for Solidity is the Solidity Documentation. This resource is geared towards people familiar with programming but who may not have experience with Ethereum or blockchain technology in general.
- Ether.fund maintains a list of example Solidity contracts that can be a useful resource for developing your own contracts or understanding how different methods work.
- The Ethereum Github Wiki contains a list of resources for DApp developers that will be most useful for those with some programming background. These include tools, code examples, development environments, and technical references.
- If you are new to programming and the Ethereum blockchain, you might find this "Intro to Programming Smart Contracts" useful. It introduces basic concepts in DApp development and walks the reader through one possible DApp development workflow.
- Another "Intro to Dapp Development" tutorial is here. It is a work in progress, but currently walks the reader through installing Geth, running a local node, a basic contract design, and a more advanced auction contract example. Disclaimer: I work for Ledger Labs, which is developing this tutorial.