It's simple and it works. Perfect for beginners wanting to learn how to do this.
However, I'd also recommend you keep at it too for things like polish. Iunno about you, but I would hate having to reset a puzzle because the block got stuck in the corner, and if you were to leave the map even after solving the puzzle, everything would still be reset. My suggestion would be two things. One, allow the player to push or pull the boulder, so that they cannot get stuck in an unsolvable situation that requires them to reset. Two, define where the boulders are upon entering the map (this will include initial coordinates for all of them), so that when the player returns to the map at a later point, the boulders are still where the player left them previously.