1. Udacity’s iOS Developer Nanodegree. Not only is Udacity the best website to go to learn how to code, the iOS Developer Nanodegree is the best resource I’ve found when learning Swift. This program guides you through building four apps. The fifth app is one that you build entirely on your own, as by the time you get to it you’ll have the skills to do so. Udacity offers so many services that makes them different from regular online courses. What I love most about Udacity is the code reviews that you receive as a Nanodegree student. Once you submit a project, you will get a detailed code review of what you did well and what you could improve upon or change. These reviews are usually back to you within a few hours after you submit your project. Udacity also offers one-on-one experts available for students to talk to, an active forum and an incredibly supportive community of Udacians. With Uconnect, you get in-person study sessions, with team guides who help you out. If you’re serious about learning Swift and iOS Development, Udacity’s iOS Developer Nanodegree is the best option. If you’re learning more for fun and can’t afford to enroll in one of the Nanodegrees, Udacity offers all of their content for free.
Swifty the app. To learn the basics of Swift, this app is a few dollars and well worth it. It takes you through Swift syntax and gives you a challenge at the end of each lesson. It’s a fun way to learn the basics of Swift syntax. It was designed to feel like a game and it can be addicting.
3. Memorizing a language. Derek Sivers writes about the most helpful technique he’s found when learning programming (read about it here) which is using spaced repetition software to help you learn to memorize a language. I did this when learning Swift and found it to be incredibly help for learning and more importantly retaining what I’ve learned. As Sivers points out, using spaced repition software will help you deeply memorize the language you’re learning and help keep it at the forefront of your mind.