Learning to program is like learning to read and write any foreign language. Lots of time will be spent looking at symbols that make little sense and hearing people speak about the language in terms that are, while familiar, carrying less meaning than perhaps they should. Lots of time will be spent reading references without context, then looking at language in context, then back and forth again. Except, unlike spoken language, there are no translations to some language you already know.
Good Code Works Is easy to understand Is easy to change Is fun to work with Reference: https://robots.thoughtbot.com/what-is-good-code In fairness, this view is valid too: https://xkcd.com/844/ With the existing code bases we work on and the code bases we create, I am going to work tirelessly to improve the first case and contribute the later.