Sick Gaming
[Tut] Top 10 Solidity Tutorials - Printable Version

+- Sick Gaming (https://www.sickgaming.net)
+-- Forum: Programming (https://www.sickgaming.net/forum-76.html)
+--- Forum: Python (https://www.sickgaming.net/forum-83.html)
+--- Thread: [Tut] Top 10 Solidity Tutorials (/thread-99138.html)



[Tut] Top 10 Solidity Tutorials - xSicKxBot - 04-04-2022

Top 10 Solidity Tutorials

<div><p>If you are considering investing time in learning about blockchain, it can seem a weighty undertaking.  There are a multitude of blockchain variants such as <a href="https://blog.finxter.com/3-steps-to-use-bitcoin-as-a-treasury-reserve-assets/" data-type="post" data-id="30680" target="_blank" rel="noreferrer noopener">Bitcoin</a>, <a href="https://blog.finxter.com/ethereum-top-10-articles-to-get-started/" data-type="post" data-id="53284" target="_blank" rel="noreferrer noopener">Ethereum</a>, Litecoin, and Dogecoin, and the terminology can be just as confusing.  </p>
<p>Four general types of blockchain networks are in use today: <strong><em>public</em></strong>, <strong><em>private</em></strong>, <strong><em>consortium</em></strong>, and <strong><em>permissioned</em></strong>.  Each has its own rules as to who may administer the blockchains and who can participate as a node.</p>
<p>Of the blockchain variants, Ethereum is appealing due to its community-driven nature, and it allows for many use cases including DeFi (decentralized finance), <a href="https://blog.finxter.com/how-to-deploy-smart-contract-to-polygon-in-brownie/" data-type="post" data-id="141343" target="_blank" rel="noreferrer noopener">DApps</a> (decentralized applications), and <a href="https://blog.finxter.com/nft-101/" data-type="post" data-id="38160" target="_blank" rel="noreferrer noopener">NFTs</a> (non-fungible tokens).  </p>
<p>To begin working with <a href="https://blog.finxter.com/smart-contracts-and-evm/" data-type="post" data-id="92507" target="_blank" rel="noreferrer noopener">Ethereum</a>, I started looking for tutorials, and there are certainly a lot of them.  I visited several sites that turned up in my searches.  I began at <a href="https://ethereum.org" data-type="URL" data-id="https://ethereum.org" target="_blank" rel="noreferrer noopener">ethereum.org</a>, where it bills itself as the programmable blockchain.</p>
<p>The learning section on the Ethereum website contains well over <strong>150 tutorials</strong>, and <a href="https://blog.finxter.com/solidity-developer-income-and-opportunity/" data-type="post" data-id="211072" target="_blank" rel="noreferrer noopener">Solidity</a> has over 40 entries.  </p>
<p class="has-global-color-8-background-color has-background"><img src="https://s.w.org/images/core/emoji/13.1.0/72x72/1f4a1.png" alt="?" class="wp-smiley" style="height: 1em; max-height: 1em;" /> <strong>Info</strong>: <a href="https://blog.finxter.com/solidity/" data-type="post" data-id="37379" target="_blank" rel="noreferrer noopener">Solidity</a> is a high-level, object-oriented language for creating <a href="https://blog.finxter.com/how-to-deploy-smart-contract-to-polygon-in-brownie/" data-type="post" data-id="141343" target="_blank" rel="noreferrer noopener">smart contracts</a> (smart contracts are essentially the code or programs stored in the blockchain when sent from a wallet, whereupon the code executes), and is similar in appearance to Python or JavaScript.  </p>
<p>In no particular order, the following tutorials are among the most notable I found during my search.</p>
<h2><a rel="noreferrer noopener" href="https://www.dappuniversity.com/articles/solidity-tutorial" target="_blank">Solidity for Beginners: Smart Contract Development Crash Course</a></h2>
<figure class="wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio">
<div class="wp-block-embed__wrapper">
<iframe loading="lazy" title="Intro to Solidity Programming Language - Ethereum Blockchain Developer Tutorial for Beginners" width="780" height="439" src="https://www.youtube.com/embed/MnSmc7Hto2k?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
</div>
</figure>
<p>Gregory McCubbin’s tutorial at Dapp University is a short tutorial for beginners, covering the basics of creating smart contracts.  It doesn’t linger on terminology and history but starts Solidity coding examples right away in the <a href="https://blog.finxter.com/how-to-find-out-if-an-ethereum-address-is-a-contract/" data-type="post" data-id="114085" target="_blank" rel="noreferrer noopener">Remix IDE</a>.  </p>
<p><strong>So if you are eager to see Solidity in use, this quick tutorial (about an hour and a half) gets straight to the point.</strong></p>
<p>Topics covered are language-related, such as constructors, data types, internal functions, etc.  This is a good tutorial for following along in an editor.  </p>
<p>I tried taking notes on paper, but decided better of it and resorted to my laptop.  The examples are easy to understand if you are already familiar with programming concepts, and the videos are short, about 15 – 20 minutes each.  </p>
<p>If you just want to get exposure to Solidity, you may find it worth the time, just don’t expect to use the code immediately.  </p>
<p>The examples in this tutorial are meant for explaining a few of the intricacies of Solidity, and is a small investment of your time to see what Solidity looks like with a few use cases.</p>
<h2><a href="https://www.freecodecamp.org/news/solidity-tutorial-hardhat-nfts/" target="_blank" rel="noreferrer noopener">Solidity Tutorial: How to Create NFTs with Hardhat</a></h2>
<p class="has-text-align-center"><img loading="lazy" src="https://lh6.googleusercontent.com/9JrsQTg1IMzPNjkkQtwCECq7yqlIPM9NJQq9KcgR1XJvHOLnnHtFIEMBYSOA_pb4d6xBTQaUucVpO7C5nVwizrytFaRnXH7SFSken6DgOLOIWercN6ESmu-EgDohbVRtIXJruTY7" width="480" height="288"></p>
<p>Learn how to leverage <a rel="noreferrer noopener" href="https://blog.finxter.com/node-js-developer-income-and-opportunity/" data-type="post" data-id="189364" target="_blank">Node.js</a> to build Ethereum Dapps and smart contracts.  If you are a <a rel="noreferrer noopener" href="https://blog.finxter.com/javascript-developer-income-and-opportunity/" data-type="post" data-id="191233" target="_blank">JavaScript program</a>mer, this tutorial steps you through the process of installing and configuring a Hardhat development environment with <code>npm</code>, the Node Package Manager.</p>
<p>This is a straightforward, text-based tutorial.  </p>
<p>There is little Solidity code, but the point is to avail yourself of the tools needed to write Solidity in a local, console-based, JavaScript IDE.  </p>
<p>You step through installing the environment, setting up a project, compiling a Solidity contract, and deploying it on the local network.  While you will need more knowledge of the Solidity language to write contracts and Dapps, this tutorial will help you set up your framework.</p>
<h2><a href="https://www.w3schools.io/blockchain/solidity-tutorials/" target="_blank" rel="noreferrer noopener">Solidity Smart Contract Tutuorials</a></h2>
<p class="has-text-align-center"><img loading="lazy" src="https://lh3.googleusercontent.com/j9SN1Zav1q9wSxBISQogSOX6HSJNDdKJa3F-B6KuvqNUcAPjLJCjKIPE3GvR1khcVVOdvG4d_Ov28IY8OQ-bcn8lseglIPwpV-Iwevox4PaDkPLXjOY7gdZ32SmHrsQbmPZsG-7v" width="480" height="288"></p>
<p>Another text-based tutorial is at <a href="http://w3schools.io" data-type="URL" data-id="w3schools.io" target="_blank" rel="noreferrer noopener">w3schools.io</a>.  </p>
<p><strong>It is more akin to documentation and use cases.  It doesn’t appear to be up to date, and uses varying Solidity versions.  </strong></p>
<p>While there is no actual contract or Dapp built, the tutorial covers almost all of the features and keywords of the Solidity language.  </p>
<p>For instance, source code comments can be inline or block format like <a href="https://blog.finxter.com/c-plus-plus-developer-income-and-opportunity/" data-type="post" data-id="196896" target="_blank" rel="noreferrer noopener">C++</a>, and currency units are Wei, Finney, szabo, and ether.  I only listed this one for its brevity and still relevant information.</p>
<h2><a href="https://ethereum.org/en/developers/tutorials/hello-world-smart-contract-fullstack/" target="_blank" rel="noreferrer noopener">Hello World Smart Contract</a></h2>
<p>Most beginners would probably want to check out this tutorial hosted at Ethereum.org.  </p>
<p><strong>It is a full-stack guide using JavaScript and Solidity to build a Dapp.  </strong></p>
<p>The only criticism is the need to create multiple 3<sup>rd</sup> party accounts, such as an Alchemy account for access to <a href="https://blog.finxter.com/introduction-to-web3-js/" data-type="post" data-id="248348" target="_blank" rel="noreferrer noopener">Web3</a> APIs and to generate an API key.  </p>
<p>Hardhat is used as a console-based IDE, and online services Ropsten Etherscan and <a href="https://blog.finxter.com/metamask-simple-tutorial/" data-type="post" data-id="38157" target="_blank" rel="noreferrer noopener">Metamask</a> are used for blockchain testing and access to a crypto wallet, respectively.  It is the most complete text-based tutorial I’ve read so far.</p>
<h2><a href="https://www.simplilearn.com/tutorials/blockchain-tutorial/what-is-solidity-programming" target="_blank" rel="noreferrer noopener">Complete Guide On Solidity Programming</a></h2>
<p class="has-text-align-center"><img loading="lazy" width="480" height="288" src="https://lh3.googleusercontent.com/HQEIyTDdsA60FumvB-UO5m2Bh2axD4eo2QbO4R8vN_j-vtqRr88rkQaBTb4N0cBTZ6oonZOtXuz9FY-lBnD5Y80sbc0hwBoGNrz_jW_avFbCIc_gRTI_fv3woE38WjXMovGT7axu"></p>
<p>Part of a larger <a href="https://blog.finxter.com/the-bullish-case-on-blockchains/" data-type="post" data-id="30448" target="_blank" rel="noreferrer noopener">Blockchain</a> tutorial for beginners, this tutorial steps through Solidity programming from the basics of pragma directives and data types to Smart Contract design patterns.  </p>
<p>There are both textual and video components to this tutorial.  </p>
<p><strong>I found the video tutorial more instructive, while the textual content was good as a guide or outline.</strong></p>
<p>If you learn by jumping in immediately, I suggest focusing on the video portion of this tutorial. In fact, if the thoroughness of this tutorial is any indication, the whole Blockchain playlist of 26 tutorials would be a very good starting point. It covers Etherium, Bitcoin, Dogecoin, Dapps, Merkle Tree, NFT vs. Crypto, and a lot more.  It is current and last updated Feb 16, 2022.</p>
<h2><a rel="noreferrer noopener" href="https://www.tutorialspoint.com/solidity/index.htm" target="_blank">Learn Solidity: Absolute Beginners Solidity Tutorial</a></h2>
<p>From Tutorialspoint comes this tutorial for novices.  </p>
<p>The course assumes prior knowledge of programming in general and some basic familiarity with blockchain.  </p>
<p><strong>It is a little dated, but it covers everything about Solidity.  </strong></p>
<p>Navigation is as easy as clicking a heading on the sidebar.</p>
<p><strong>I was impressed with the amount of content, and this would make an excellent reference page for Solidity.</strong> It was like reading the C/C++ reference documentation.  This is a text-only tutorial, and its primary mode of delivery is by example.  </p>
<p>Once you start writing smart contracts in Solidity, this tutorial could be handy to refer back to.</p>
<h2><a rel="noreferrer noopener" href="https://101blockchains.com/solidity-tutorial/" target="_blank">Solidity Tutorial: A Detailed Introduction</a></h2>
<p class="has-text-align-center"><img loading="lazy" src="https://lh6.googleusercontent.com/aqIBOQLDwVM6QcSoa6ktOptVsA7QUvQHTzcusijauA69Ya2PMmQjv7VDjD8c_l5WoqoY1jPAOu-6lj2aeqO_uR--5ZgSE3LV3UjieuAW3rYpuGQhbvDPBtPOSJCmP-u66B5U9NwU" width="480" height="288"></p>
<p><strong>This is the tutorial I would suggest starting with.  </strong></p>
<p>It is a year old, but there isn’t much code involved.  It is a good introduction to Solidity and Ethereum in general.  Compiler installation is covered, as well as Remix IDE and Docker images.  A quick introduction to syntax is followed by types, variables, and a few use cases.</p>
<p>Coverage of <a href="https://blog.finxter.com/smart-contracts-and-evm/" data-type="post" data-id="92507" target="_blank" rel="noreferrer noopener">Ethereum, EVM, and smart contracts</a> is seldom included in the tutorials I’ve reviewed.  The author delivers these details to help define what will be covered in this Solidity tutorial, a method called pre-learning in educational sciences.</p>
<h2><a href="https://youtu.be/HR679xTt8tg" target="_blank" rel="noreferrer noopener">Smart Contract Tutorial: Create a lottery smart contract in Solidity</a></h2>
<figure class="wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio">
<div class="wp-block-embed__wrapper">
<iframe loading="lazy" title="Smart Contract Tutorial - Create a lottery smart contract in Solidity" width="780" height="439" src="https://www.youtube.com/embed/HR679xTt8tg?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
</div>
</figure>
<p>Block Explorer put out a series of videos on smart contracts on YouTube.  The content is focused on smart contracts, but ventures into <a rel="noreferrer noopener" href="https://blog.finxter.com/introduction-to-web3-js/" data-type="post" data-id="248348" target="_blank">Web3.js</a>, <a rel="noreferrer noopener" href="https://blog.finxter.com/earn-passive-and-active-income-200-h-as-a-chainlink-validator-and-freelance-consultant/" data-type="post" data-id="36581" target="_blank">Chainlink</a>, and <a rel="noreferrer noopener" href="https://blog.finxter.com/creating-an-nft-marketplace-with-solidity-and-javascript/" data-type="post" data-id="170312" target="_blank">Solidity</a> among other topics.  </p>
<p>This particular video covers some peculiarities in Solidity as a lottery smart contract is built.  Remix IDE on the Ethereum site is used to sandbox the contract, so you can test functionality while refinements are made.  This video succeeds in giving a good overview of Solidity basics in about 45 minutes.</p>
<h2><a rel="noreferrer noopener" href="https://hackingthemarkets.com/posts/calend3-solidity/" target="_blank">Web3 Tutorial: Solidity Smart Contracts</a></h2>
<p class="has-text-align-center"><img loading="lazy" src="https://lh3.googleusercontent.com/OVINk2WRyI6WcKG_zeOuVHP2MGylGqppvcDEdGhFCy4ypUA9UDxTP0UGncqv0RlgacWVdkWKL7JGHHaBbMFamx7TfJK5O2goj59sLLIMlgoeF7vYb-T6JF1ec2iCSfcg2Ta5TI72" width="480" height="288"></p>
<p>The penultimate tutorial I considered for this article is from <strong><em>Part Time Larry</em></strong>, and is the third of a series of ten recent tutorials on smart contracts.  The tutorial is organized as a series of posts at hackingthemarkets.com.  </p>
<p><strong>The posts each relate to a topic in current Web3 practices regarding smart contracts.</strong></p>
<p>This particular post has the viewer follow along, writing a smart contract within a full-stack environment that is already in place.  It’s a very thorough video with a textual component.  Seeing the tools used helps the viewer become familiar with them as they move back and forth between editor and console.</p>
<h2><a href="https://www.freecodecamp.org/news/learn-solidity-blockchain-and-smart-contracts-in-a-free/" target="_blank" rel="noreferrer noopener">Solidity Blockchain Smart Contracts: Beginner to Expert</a></h2>
<p class="has-text-align-center">
<figure class="wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio">
<div class="wp-block-embed__wrapper">
<iframe loading="lazy" title="Solidity, Blockchain, and Smart Contract Course – Beginner to Expert Python Tutorial" width="780" height="439" src="https://www.youtube.com/embed/M576WGiDBdQ?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
</div>
</figure>
<p>This final tutorial comes from one of my favorite tutorial websites, <a href="https://www.freecodecamp.org/" data-type="URL" data-id="https://www.freecodecamp.org/" target="_blank" rel="noreferrer noopener">freecodecamp.org</a>.  I think their work creating free tutorials to help people learn to code is exceptional.  </p>
<p>This tutorial is exceptional as well, it’s sixteen hours of coursework packed into one video.  I am still going through various parts, rewinding and reviewing areas I need to brush up on.  </p>
<p><strong>I will be using this course for a few months I’m sure.</strong></p>
<p>Almost everything in all the other videos is covered here with some additional content.  In addition to that, Python is used in this course, so it is relevant to my current endeavors as a <a href="https://blog.finxter.com/python-developer-income-and-opportunity/" data-type="post" data-id="189354" target="_blank" rel="noreferrer noopener">Python developer</a>.  </p>
<p><strong>This tutorial/course should be considered if the previous tutorials were interesting and you are thinking about working in this niche as a developer.</strong></p>
<h2>Conclusion</h2>
<p>I hope these tutorials are useful, and shed some light on what Solidity is used for.  </p>
<p>Most simply touch on what Solidity and smart contracts are, but a few of them are full courses.  </p>
<p>Whatever the level of interest you have in blockchain and Ethereum, with the investment of a little time, you are sure to find something of note in them.</p>
<hr class="wp-block-separator"/>
<h2><a href="https://academy.finxter.com/university/solidity-basics/" target="_blank" rel="noreferrer noopener" title="https://academy.finxter.com/university/solidity-basics/">Learn Solidity Course</a></h2>
<p>Solidity is the programming language of the future.</p>
<p>It gives you the rare and sought-after superpower to program against the “Internet Computer”, i.e., against decentralized Blockchains such as <em>Ethereum</em>, <em>Binance Smart Chain</em>, <em>Ethereum Classic</em>, <em>Tron</em>, and <em>Avalanche </em>– to mention just a few Blockchain infrastructures that support Solidity.</p>
<p>In particular, Solidity allows you to<em> create smart contracts</em>, i.e., pieces of code that automatically execute on specific conditions in a completely decentralized environment. For example, smart contracts empower you to create your own <em>decentralized autonomous organizations</em> (DAOs) that run on Blockchains without being subject to centralized control.</p>
<p>NFTs, DeFi, DAOs, and Blockchain-based games are all based on smart contracts.</p>
<p><a href="https://academy.finxter.com/university/solidity-basics/" target="_blank" rel="noreferrer noopener" title="https://academy.finxter.com/university/solidity-basics/">This course</a> is a simple, low-friction introduction to creating your first smart contract using the Remix IDE on the Ethereum testnet – without fluff, significant upfront costs to purchase ETH, or unnecessary complexity.</p>
<div class="wp-block-image">
<figure class="aligncenter size-full is-resized"><a href="https://academy.finxter.com/university/solidity-basics/" target="_blank" rel="noopener"><img loading="lazy" src="https://blog.finxter.com/wp-content/uploads/2021/10/image-121.png" alt="" class="wp-image-37299" width="491" height="287" srcset="https://blog.finxter.com/wp-content/uploads/2021/10/image-121.png 982w, https://blog.finxter.com/wp-content/uploads/2021/10/image-121-300x175.png 300w, https://blog.finxter.com/wp-content/uploads/2021/10/image-121-768x448.png 768w" sizes="(max-width: 491px) 100vw, 491px" /></a></figure>
</div>
</div>


https://www.sickgaming.net/blog/2022/03/25/top-10-solidity-tutorials/