When I first got into crypto I had never coded before other than completing the puzzles on
projecteuler.net. Solidity was my first language. I then went to study CS in uni for a 1.5 years, and the coolest things was putting names to concepts I had understood, but didn't necessarily know they were a primitive features of programming (i.e polymorphism, principle of substitutability, etc.)