How can we help?

Design? Check. Strategy? Check. Bulletproof code? Check! People who can manage it in an agile and efficient manner? Check. Someone to help you create your next big product? Of course.

Denver

- 1201 18th St. Suite 250, Denver, CO 80202

Grand Rapids

- 125 Ottawa Ave NW Suite 270, Grand Rapids, MI 49503

Blog

BLOG:iOS 8: Learning Swift

iOS 8: Learning Swift

It’s been one month since Apple announced Swift at WWDC. Since then, many Mac and iOS developers have been busy learning and sharing what they’ve learned about this new language.

Apple developers pride themselves on thinking differently. This isn’t always easy though, especially if it requires learning a new language that’s still in beta. What can help us stay (or get back) on track so we’re ready to begin using Swift in the future?

The hardest part of learning a new programming language isn’t the lack of documentation or learning resources, it’s maintaining the motivation needed to move forward and keep learning.

As you begin learning Swift, try to identify the things you want get out of the experience. Learning a new language for the sake of learning, or just because it’s new, aren’t good enough reasons to stay motivated. With so much information available already, it can be difficult to focus on what you want. Don’t get hung up on the syntax, or what other people have already learned. In the long run, it’s not the language that matters, it’s what you do with it. Explore it, but make it work for you. Don’t attribute to it more than it deserves, but also be willing to accept its limitations. In the end, Swift is only a collection of techniques used to do interesting things.

Stop reading, start programming

Don’t feel as though you need to wait until you’ve finished the Swift Programming Book or have watched all the WWDC videos to begin using it. By starting on small projects, you will begin to feed your curiosity. It’s important not to know everything before you begin. All the bits you don’t know will refuel the curiosity you’ll need to further dive into the language.

As you learn, you’ll experience different levels of success. The small milestone of being able to compile your first app, even if your code is horribly disfigured, should be something to be proud of.

By using Swift today, you’ll learn as you code. Small projects let you aim for achievable results. This is much more useful than learning the syntax now and then waiting for an opportunity to use it “someday”. Be specific and realistic about what you want to do and when you want to do it by. Nobody is perfect. There will always be some element you can improve on - accept this and just get started.

Set priorities

Focus on the things you want to learn about. Diving into the things you’re passionate about first will make other aspects of this new language much easier to learn when you come back to them.

Focus on paradigms over syntax. Learn about the ways Swift encourages you to think about problems. What core features make it like other languages? What makes it unique?

Change things up

If you find the Apple docs, or a series of blog posts aren’t helping you maintain your interest, perhaps a non-linear approach to learning would work for you. Don’t be afraid to chase tangents. As with learning anything new, you’ll eventually hit a wall. Don’t panic, this is normal. This is usually our brains telling us to try a different angle, or to step back and take a break.

Learn with others

Most of us learn better when we have feedback on what we’re learning about and on how well we’ve learned it. If, in a month, you’re having a difficult time sticking with Swift, try to find some other people who are learning it as well. They could be online, or part of a local group like Cocoaheads. Learning with others can give us the extra bit of motivation we need to keep going.

As you grow comfortable with the language, your learning approach will bend and flex based on your interests and the foundation of knowledge you’ve built. Try to keep things fresh. Make the language work for you, and look for opportunities to think differently. If you do, you’ll see results now and in the future.