When assessing your desire to get into NFT, DeFi, or programming Dapps with Solidity, it is essential prior to any educational engagement to evaluate your goals. Solidity is just one step among many that you should focus on. Setting the right parameters and objectives will save you time, money, and effort if you have a definite objective. In this segment, we gathered all the best Solidity resources in order to help you in your educational journey.
What exactly do you want to do and how are you going to achieve it?
Assess your proficiency level in programming
The right question leads you to the right path as there are many avenues that can be explored. Here are some sample questions to ask yourself:
- How proficient are you with these languages?
- Are you aware of the functions of blockchain and its usage apart from cryptocurrencies?
- What are your objectives in learning Solidity?
If you’ve made it past question number four above, and have a definite answer, then we can proceed. These Solidity Resources are generally tailored for learners in various stages of their development.
👉 If you think that you are already generally proficient in Solidity, you can proceed to the section entitled Intermediate Solidity Resources below.
The average Senior Solidity Developer can earn an average of $150,000 a year, focusing on the money can sometimes be a distraction. Remember, this technology can change the world for the better. And it all begins with you writing good code!
We’re going to assume that you’re nominally aware of Bitcoin, blockchain, and other cryptocurrencies. These topics are multi-dimensional, meaning they’re not confined to a single topic alone. For instance, Bitcoin could also be tied to economic-theory, anarcho-capitalism, a proficiency in C++, and Internet networking protocols. Ethereum is very similar and yet takes a stance as Bitcoin’s evolution. Its usage of smart contracts or the programmatic application of agreements and transactions has taken digital assets, law, investments, and even gaming, to a higher epoch.
Five Courses to Help You Get Started with Solidity
Eat the Blocks by Julien Klepatch
One of the best ways to learn is to watch it on video. Julien Klepatch is a blockchain developer who’s one of the more authoritative sources on Solidity programming. He runs a technical-level channel with premium options.
Twitter: Julien Klepatch
Julien’s repertoire of accomplishments is extensive and his reputation is highly regarded. He has built consumer and enterprise web applications for the last 5 years. He currently works at LendingBlock, a crypto lending exchange for institutional investors (hedge funds, other exchanges, etc…). He also consulted for various startups and Blockchain projects for the last 5 years. Among other things, he has set up the technical infrastructure of several ICOs (ERC20 tokens and also forking coins, like Monero).
Gregory Mccubbins' Dapp University
Another invaluable video educational resource when it comes to Solidity programming is Gregory Mccubbins’ Dapp University. You can access Gregory’s courses through various channels on uDemy and on his site.
One of the most helpful things about Gregory’s Dapp University is the extensive resource list you can find on his site. He compiled a list and turned it into a mega-resource Blockchain developer post. Among Dapp University’s resources include:
- Developer Tools
- Ecosystem Tools
- Ethereum Official
- Dapp Discovery Tools
- Ethereum Browsers & Wallets
- Discussion Forums
- Events & Conferences
- Getting a Job
Gregory was also featured in freecodecamp.com’s Youtube channel. Gregory’s approach to teaching is very engaging because he takes a step-by-step tutorial approach. For developers who are in a rush to learn how to make blockchain applications, Gregory takes you from scratch and walks you through coding your first Dapp within a short time period. To top that, Gregory has a boot camp that provides technical training allowing you to start as quickly as possible.
Metana is a 4 month bootcamp which trains existing developers to become blockchain developers and help them get a job.
Metana tackles the unseen problems such as:
Self-learning, which is hard as there are too many resources which aren't reliable and most of the resources are everywhere on the internet. For example, a person can learn web3js and might miss out on important security aspects.
Imposter Syndrome, where a developer self-learns everything but never gets to confirm what they learnt is correct. This holds them back from building a smart contract that could hold a billion dollars or even apply to a job.
To solve the above problems, Metana has an in-depth curriculum and the students can get 1:1 Q&A sessions with their instructors on a weekly basis.
Truffle University/Consensys Academy
Prior to its acquisition by Consensys in November 2020, Truffle University was designed for advanced developers who already have experience in other development environments. This review by Sam Richards highlights the pros and cons of the Truffle program then compared it with Consensys Academy’s. At its gist lies the level of proficiency: Truffle’s program was very selective.
Packaged along with Truffle’s Development suite, the learning program enabled participants to be onboarded by its partners after they finished.
Today, Consensys Academy has a paid offering that enables students to learn via an all-year-round open-enrollment. The Blockchain Developer Program On-Demand course starts from the beginning by re-introducing the fundamentals of Digital Ledger Technology. From there it ascends to Blockchain core concepts such as cryptographic hash functions, Merkle Trees, forks, and eventually leads to smart contract development and Solidity. You can access Consensys Academy Blockchain Developer Program On-Demand here.
Always get the first-hand source if possible. Founded as the site of the Ethereum Foundation, it contains a lot of resources pertaining to the Ethereum ecosystem. They also put up tutorials pertaining to smart contracts, solidity, compound, Uniswap, waffle, web3.js, web3.py, WebSockets, nodes, remix, and more.
Learn Through the Ethereum Foundation
- What is Ethereum?
- What is ether (ETH)?
- Decentralized Finance
- Decentralized Autonomous Organizations (DAOs)
- Non-fungible tokens (NFTs)
- History of Ethereum
- Ethereum Whitepaper
- Ethereum 2.0
- Ethereum Glossary
- Ethereum Improvement Proposals
- Community guides and resources
The Value of DevCon
Back before the pandemic struck and back when it was normal for people to attend seminars and conferences, DevCon was an annual event for the brightest minds in the Ethereum space to congregate. This allowed for a collective intellectual networking event that was interspersed with the learning opportunities you get by focusing your entire physical body on a collective task. It was also an opportunity to hear and see Vitalik Buterin personally.
Think of it as a marshaling of collective brainpower where ideas float around and bounce back and forth among many individuals. Unfortunately, the pandemic forced the Ethereum Foundation to postpone DevCon 2021 which was supposed to be held in Bogota, Colombia. On the bright side, archives of the video can be found here:
If you have some experience in object-oriented high-level programming and if your learning goal is to immediately be able to code a Dapp to have a feel for the development environment, Cryptozombies takes an interesting and interactive approach. Similar to the learning environment offered by KhanAcademy, W3C Schools and FreeCodeCamp, Cryptozombies.io appeals by making the experience colorfully interactive.
Over 415,672 students to date have participated in Cryptozombies.io. It’s a project by Loom Network which is a platform for scaling all kinds of dapps. Loom Network today is better known as a distributed enterprise platform for healthcare providers. Cryptozombies.io was a project with multiple objectives. First, because it was designed to appeal like it was a game, it captured the interest of the mainstream. Secondly, it was educational and effectively broadened the horizons of alumni to realize that it could be applied to more serious matters like healthcare.
Beyond the basics Cryptozombies.io also teaches:
Reddit has proven to be an invaluable resource for Ethereum learning resources. The subreddit, r/ethdev has a very vibrant community populated by over 36,000 Redditors who are more than willing to lend their expertise and experience for whatever question you may have.
The extensive history of the subreddit could attest to its vibrance with many resources pooled together for collective reference. To put it succinctly, r/ethdev is where the ethereum devs hang out and share their experiences. Some good resources we’ve been able to scour on the subreddit include:
- Long list of Ethereum developer tools, frameworks, components, services
- ''Who's hiring, and who's for hire''
- 150+ helpful resources captured on my two year journey from web dev to blockchain engineer
Helpful r/ethdev Filters
- Find Ethereum Tutorials - shows the most upvoted tutorials on the sub
- Find Ethereum Questions - shows the most upvoted and insightful question on the subreddit
- Find Ethereum Projects - the most interesting Ethereum projects of the community
Intermediate Solidity Resources
Blockchain Courses at the Technology and Entrepreneurship Center at Harvard and Coursera
The distinguished educational institution that produced the likes of Mark Zuckerberg, Bill Gates, and the Winklevoss Twins created an initiative that collated pertinent blockchain courses. In partnership with Coursera and other institutions, they made these resources free. You can access their list of free blockchain short courses here. There’s also a paid section with a more extensive list.
Harvard’s website will point you to Coursera which has 61 relevant courses to Solidity. One of the more popular offerings is the very extensive Blockchain course offered by both University at Buffalo and the State University of New York.
There are currently 47,094 who are currently enrolled and classes begin on March 15, 2021. Among the highlights of the course include:
- A focus on smart contracts and their core application in the computation model of blockchain technology
- The course will teach you how to design and program a smart contract
- It will mesh your understanding of the relevance of blockchain technology
- It will also leverage this knowledge by linking it to blockchain technology’s possible use cases in business.
There are four courses in the specialization:
- Blockchain Basics
- Smart Contracts
- Decentralized Applications
- Blockchain Platforms
💡 Tips Before You Begin Your Job Hunt
If your objective is to look for a job that requires Solidity, we suggest that you take a look at the Blockchain Solidity jobs that are available over at Cryptocurrency Jobs. This will give you an idea of other requirements that may be needed.
For example, Aegis Studio in the United States is looking for a Senior Solidity Engineer. Notice that they require other programming languages and experiences for the position. As an example, apart from Solidity, these are the other requirements for the job:
- Deep understanding of EVM (Ethereum Virtual Machine)
- Have deployed DeFi/NFT/Oracle-based contracts to mainnet
- Understanding of Eth 2.0
- Rust, Golang, or C++
- React + TypeScript
Once you have set your objectives and know exactly why you want to learn Solidity - find a tribe or a community that’s working towards the same goal or similar goals.
Andreas Antonopoulos’ book entitled “Mastering Ethereum” is an authoritative take on Ethereum as well as Solidity. Andreas’ first book, “Mastering Bitcoin” is also highly recommended. Both are excellent resources.
Fortunately for us, Andreas Antonopoulos and Dr. Gavin Wood have released the book “Mastering Ethereum” with a CC-BY-SA license allowing everyone to read it.
The Solidity Documentation
They always say RTM (Read the Manual), and that’s a logical place to begin. The manual in this case is the latest Solidity Documentation itself. The essence of Solidity are smart contracts, that’s why the official documentation starts off with an example that showcases Solidity’s capabilities. You can view the smart contract example here.
Social Media Helps
We stumbled upon a unique take when learning about Solidity. Social media has proven to be invaluable especially since you get the “personalized” approach to learning. For instance, @ianjohnlee who described himself as a Crypto investor + builder, Contributor to @DefiantNews, an Adjunct Faculty to @UCBerkeley and Ex #Bitcoin Blockchain Lead @Citi @CitiVentures, has this inspirational take on learning Solidity.
Lee shares his experience while admitting that he hasn’t been coding for the last 20 years. Solidity and Blockchain technology rekindled this curiosity primarily because of Solidity’s usage of smart contracts. These have varying implications in finance, art, gaming, technology and so much more. Among the sources, he points out include a $129 Blockchain developer course in uDemy. He also recommends inspecting GitHub codes and going on a deep dive on actual projects to see how they implemented Solidity.
How I learned Solidity programming in a month:— Ian Lee 💭 (@ianjohnlee) December 5, 2020
In April during lockdowns, I decided to invest in learning Solidity. Given that I haven't seriously coded beyond HTML in almost 20 years, it was daunting 😨
But it doesn't have to be hard or scary to get started.
Here's how 👇
You can follow the Twitter thread made by Ian John Lee here .
Having a background in Computer Engineering or Computer Science increases the likelihood of getting employed. There are many Solidity education providers out there, but it is really hard to sift through the more reputable offerings. Two aspects should be your priority when taking into consideration your choice. The first is employability and the other is reputation. Being able to apply your knowledge, your goal should be focused on demonstrating through the creation of actual Smart Contracts that are readily deployable.