Twitter Handle Pencilflip.sol expressed: “I’m currently learning how to program on Solana, and have found it much more difficult than learning to program on Ethereum. Luckily, there are lots of great resources out there. Here are the ones I’ve found most helpful!”
First, it’s helpful to at least slightly understand Rust before diving into Solana dev. Luckily, there’s a great free book about it. You don’t need to read the whole thing, just enough to get the syntax down. You can always refer back to it later.
Anchor (by Project Serum) is a framework that will make your life much easier. There are three parts to Anchor: – A TypeScript library that’s similar to web3.js – Rust crates that make writing Solana programs easier – A CLI for building/testing, similar to HardhatHQ.
The best way to get a high-level understanding of each of these parts is to read through Anchor’s tutorials. The tutorials show you how to write Solana programs, how to interact with those programs via JavaScript, and how to build/test your code.
This is a more theoretical resource. It talks about Solana’s account model, and how it differs from Ethereum’s. Understanding the account model is key to programming for Solana, and this is the best explanation I’ve seen.
Nader Dabit’s guide is a great intro to fullstack Solana dev. It covers: – The Solana CLI – The Anchor framework (which makes it much easier to write Solana programs) – Building a frontend that interacts with a Solana program (e.g. how to connect a wallet).
Brian Friel as two great guides. The first is similar to Nader Dabit’s, but has more thorough explanations of how Anchor works and why it’s helpful. Definitely worth reading both.
Brian Friel’s second guide goes over Program Derived Addresses, and uses them to address an unresolved problem in Nader Dabit’s tutorial—how do you persist the state of your program? It’s a tricky topic, and this is the best explanation of it I’ve read.
Paulx’s guide shows how to program for Solana without Anchor. It shows what Anchor is abstracting away, and also serves as an introduction to Solana tokens. I found it easier to grasp after reading the above resources.
Hana has an informative (and entertaining) overview of Solana. I understood it much better after going through the previous resources and writing some code. It’s not going to give you a deep understanding, but it’s a great summary.
The Solana docs have a lot of info, but are not the easiest read. I recommend starting out by reading the “Terminology” page and the “Programming Model” pages. You can dive into other topics as needed.
Lastly, Shinobi Systems wrote my favorite resource on Proof of History. You don’t need to understand this to develop for Solana, but it’s one of Solana’s main innovations, and is well worth understanding.
Community response: This wiki is a lot better than the Original Solana doc. The original is not meant for novices coming from Ethereum. Thanks for sharing.
Get the latest Crypto & Blockchain News in your inbox.