Answer: You need to understand the coding language behind the blocks in order to successfully build a block-based program.
Explanation: Block based coding is mostly just drag-and-drop. If you go to a place like Scratch, you'll see that they have entire games made completely out of blocks. I've made a few decently complicated programs there, and none of them require me to know the coding language behind the blocks.