I absolutely adored Objective-C. But there were a few things I never felt comfortable with and just drank the Kool-Aid on.
1. Message passing to `nil`. Sure it's nice that you can safely pass a message to nil, but the idiom is a little weird. `guard` and `defer` have completely changed the way I write code in functions to exit safely.
2. Protocol Oriented Programming. This has changed the way I architect my applications for the better. I end up with less code over all and fewer Unit Tests in particular.
3. Associated Value Enums. Another big win over Objective-C. Now I can have a type and value all wrapped in one little package for my switch statements. It sounds minor, but it minimizes cyclomatic complexity.
4. It's going to be very good to know this language in 2 years. Javascript has owned the browser for too long.