A transaction is a message plus the signatures that authorize it. The message names the accounts involved, a recent blockhash, and one or more instructions. Each instruction names a program, the accounts that program may touch, and a small data field that tells the program what to do.
Read from the outside. First, who signed. A signature covers the message. If the message changes, the signature fails. That is why week two in the room uses a pencil example: a sentence, a pretend secret, and a check that the sentence was not altered. The real cryptography can wait until the shape is familiar.
The blockhash is part of the message
A recent blockhash keeps a transaction from being replayed forever. Beginners treat it as decoration in an explorer. It belongs to the signed message. When a transaction expires, the usual reason is that the blockhash aged out before the transaction landed, not that the instruction was nonsense.
Instructions are the verbs
A transfer of lamports is one instruction aimed at the system program. A call into a custom program is another instruction, with accounts listed in the order that program expects. The order is part of the meaning. Swapping two accounts can make a lawful-looking instruction do something else, or fail.
On Thursday circles we sometimes read a single instruction aloud: program, then each account, then the data length. Nobody opens a laptop. The point is to hear that a transaction is a list you can narrate. If you cannot narrate it, an error code will not help you yet.
See the Beginner Concept Desk if you want these chapters read with a group.