When I was a wee lad, I didn't know what software was, but I had a huge box of legos and an imagination. My parents would buy me the playsets, and I'd build them to get ideas about how "masters" built things and would proceed to immediately take them apart and build new things with the pieces and the knowledge. This also happens to be what good hackers do. Hackers are always reading code, reading about code and learning what the "masters" do. Then they piece together all that they learned and create something new. It's the same exact process, and that is why your theory is correct.