Learning a new programming language

It took me a while to learn Objective-C.

I started at the most basic level, wondering at the language. What are these brackets? What’s with the @ signs? What’s the difference between a – and a +? These aren’t hard things to learn, but understanding the reasoning behind them helps. And then there’s a point where it suddenly makes sense.

But the framework was confusing. How do I do this? Though I was less confused, this one isn’t solved directly. I became competent. And I started to ask the best question: “Why?”

The patterns were still confusing. Why does this work this way? What’s the purpose of this? Why is this done, but not this other thing?

And then there was a point where the patterns became obvious. More, the pattern in the patterns became obvious to me. And now, I look to find more examples of patterns, and patterns of patterns, to better build my knowledge.

It took me a while to get here, and it’s the same for every language. I’m feeling pretty confident about Objective-C now.

Back on the first day, I was confused and lost.