Now, let's get familiar with Horizon's API, SDK and the tooling around them. The API documentation is particularly useful and you will find yourself consulting it often.
Spend a few hours reading before getting your hands dirty writing code:
- Skim through the developer documentation in general.
- Try to understand what an Account is.
- Try to understand what a Ledger, Transaction and Operation is and their hierarchical nature. Make sure you understand how sequence numbers work.
- Go through the different Operation types. Take a look at the Go SDK machinery for the Account Creation and Payment operations and read the documentation examples.
- You will use the Testnet network frequently during Horizon's development. Get familiar with what it is and how it is useful. Try to understand what Friendbot is.
- Read Horizon's API introduction and make sure you understand what's HAL and XDR. Also, make sure you understand how streaming responses work.
- Get familiar with Horizon's REST API endpoints. There are two type of endpoints:
- Querying Endpoints. They give you information about the network status. The output is based on the information obtained from Core or derived from it. These endpoints refer to resources. These resources can:
- Exist in the Stellar network. Take a look at the endpoints associated with each resource.
- Are abstractions which don't exist in the Stellar network but they are useful to the end user. Take a look at their endpoints.
- Submission Endpoints. There is only one, the transaction submission endpoint. You will be using it explicitly next.
- Querying Endpoints. They give you information about the network status. The output is based on the information obtained from Core or derived from it. These endpoints refer to resources. These resources can: