I often hear beginner programmers state they cannot program, only write code that will work. I hear this commonly among Elec. and Mech. E fields, where coding is secondary in the education.
It takes reading other peoples code to realize plenty of poor code has shipped and generated revenue. Yours may not be so bad.