How do you get so good? (javascript, attributes, turn counting, if statements, etc)
Trial and error.
AKA practice.
I know you're not talking to me, but that's how we get good at things.
EDIT
I don't consider myself good. I know just enough to be dangerous.
I look at old code, shudder, then mutter "Never again!"
I look at old code, and I wonder who wrote it. (Spoiler: it was me!)
I give myself little challenges that keep me engaged. The challenges I give myself will lead to the creation of some type of product.
For example, I wanted to create if then statements, so I gave myself that task for whatever I was working on. I wanted to have characters actually battle each other, so I then took if then statements to the next level adding in attributes. Then I wanted to create basic artificial intelligence in a game so I took attributes to the next level.
I feel like if I just studied youtube videos or websites without a purpose, I would never have made a lot of progress. I needed to give myself challenges, but challenges that would be meaningful in the creation of something.
I like helping people. When someone posts an interesting question on the forum, I want to give them an answer. When I first looked at this forum I didn't know Squiffy, but I could still point out people's javascript problems. One of those went from a JS problem to a Squiffy problem, so I opened the person's game and skimmed through the source in Chrome's javascript console to figure out how it works.
The questions I answered, the more I thought "that can't be too hard to find", until I seem to have a decent working knowledge of the engine.