Every block you've dragged has been writing code behind your back. This block is this line: set motors left [0.5] right [0.5] becomes rover.set_motor(0.5, 0.5), a friendlier costume for one line of Python. Stack the blocks and you've written a whole program: repeat forever is while True, if/else is if/elif/else.
Once you can read it, you can change it. Bump one number and the rover behaves differently, sometimes in ways you didn't expect. Reading code means predicting what it'll do. That's the whole game from here on.
Each block is exactly one line of Python.