The first money I made in programming was hacking at hairy piece of PHP called the Coppermine gallery back in '06.
Later, reading software design books made sense. I knew why you shouldn't do X or Y, because if you neglected using those techniques you'd end up being Coppermine---powerful, well loved by some, but barely maintainable and extendible only through immense effort and careful reading.
I like to think that I worked my way up the open source software ladder, learning techniques from each piece of software till I was able to make my own from scratch.
Later, reading software design books made sense. I knew why you shouldn't do X or Y, because if you neglected using those techniques you'd end up being Coppermine---powerful, well loved by some, but barely maintainable and extendible only through immense effort and careful reading.
I like to think that I worked my way up the open source software ladder, learning techniques from each piece of software till I was able to make my own from scratch.