I have just started learning about it. Here's what I suggest: Checkout the official documentation first. You can learn about the programming language basics: https://solidity.readthedocs.io/en/develop/ Run a parity node on your machine. You can connect to a test network like Kovan https://www.parity.io/ You can get some ETH on the test network here: https://github.com/kovan-testnet/faucet You can start the node on the test network like this: parity --geth --chain kovan --force-ui --jsonrpc-cors http://localhost --reseal-min-period 0 Read the "Hitchhikers guide to Solidity" from Manuel Araoz. It teaches you about creation of a new contract, and how to deploy using Web3.js https://blog.zeppelin.solutions/the-hitchhikers-guide-to-smart-contracts-in-ethereum-848f08001f05. After deploying a contract manually, checkout Truffle. It's a great framework that simplifies compiling, deploying, and upgrading your contracts on the blockchain: https://github.com/trufflesuite/truffle The hitchhikers article talks about using TestRPC for local development. Truffle has taken over that project and its now called Ganache. Let's call it "Your private Ethereum dev env in one click". You can check it out here: https://github.com/trufflesuite/ganache-cli Hope that helps!