How I Submitted an iOS App in 2 Months
Getting started can get tough
How I got started with iOS
Two weeks prior to the launch date, one of the most hard working iOS developers wrote me a letter saying that he was leaving due to stress and no social life. It was too late to bring someone new to the team. I had no choice but to take his role. Making an iPhone app was not easy. To be honest, I wanted to quit.Not only I had to learn to program, but also figure out the iOS ecosystem including Xcode, thousands of classes, certificates, and so on. I had no time. I devoured every bit of information out there. A long story short, I failed to meet the deadline but submitted the app eventually. Seeing my app on the App Store was one of the happiest days of my life. Today, I would like to share with you resources I used to learn iOS development with Swift. This isn’t a paid article or anything. It’s just my honest point of view. Feel free disagree and comment down below.
1.The Swift Programming Language Guide
I downloaded the book in my iPad. During the startup season, I had an impression that walking on the street was a waste of my time, so I carried it around wherever and whenever. At night I never bumped into anyone. Why? It was the light coming off from the screen. Passengers simply avoided me. The book is written for those who already have prior programming experience. Because I had almost none at that time, I had to either read a chapter multiple times or find out more about the topic from other sources which are included in this article. However, the major benefit of using eBooks is its portability and you can simply copy and paste code for a quick result.
2. Online Courses
During the first week, I took “The Complete iOS 9 Development Course” on Udemy. In my opinion, the course was horrible. I didn’t understand what was going on for the majority of the time because the instructor kept going on. Also, it had about 70 hours of video lectures, so I had the mentality of “let’s get through this”, not as much for learning. Having abandoned the previous course, I took a course by Mark Price. I only finished 50% of the content. I realized it wasn’t possible to have a “complete” understanding of iOS just with a linear lecture style where the instructor kept moving forward. Also, I just felt I was simply copying code off from the screen. After that, I chose Treehouse, called, “iOS Development with Swift”. Again, I was confused all the time. Honestly, I said multiple times, “what the fuck is going on”. On top of that, I found the instructor really boring.
3. Blog Articles
I learned so much from blogs. One of the major benefits of blogs is its focus. Unlike those courses which claim to be “complete”, or simply genetic, blog articles especially dive into one topic at a time. For example, I learned what Object-Oriented programming was through Ray Waderlich. Along with the Official Document, I learned Swift through We heart Swift. I learned Google Map API and general tips from Appcoda. These resources remain phenomenal to these days.
YouTube tutorials are great because similar to blog articles, one video focuses on one topic at a time and also provides the feeling of having a private tutor.
Brian Voong walks through the entire process of making an app from the scratch. I built a full chat application with his free lessons. However, in order to follow along with him, you have to be familiar with Swift. There were times I gave up because I had no idea what was going on. One time, I came a week later after studying more.
He provides exciting and colorful tutorials to build iOS apps. Unlike Brian Voong, he focuses one feature at a time. I like his videos because he not only spends a lot of time editing them but also he is an exciting guy. He currently has around 45,000 subscribers (March 10, 2017).
Once I got the hang of Swift, I wondered whether I wrote good code. I had no mentor at that time. So, I downloaded a dozen of projects from Github, and I dissected how other people used Swift. I copied their styling, coding practice, and design. In other words, I started to develop a standard for writing a safe and organized program.
Mesmerized by beautiful looking apps. I first downloaded Sketch 3, which is similar to Photoshop and Illustrator along with an eBook written by Meng To and learned the fundamental of UX/UI while studying the Google’s Material design. I also downloaded Flinto which is an extension of Sketch 3. It allowed me to animate between screens without writing a single line of code.
7. Learn Swift with Bob
After having noticed that there wasn’t any single course that covered the fundamentals, I’ve decided to create an intermediate course. You will learn concepts that I struggled the most with such as completion handlers, delegate, retain cycle, closures, enums, and advanced Swift including sequence and iteratorProtocol. I thought this course might provide great value for your learning. This course is available here.
For those who just started iOS development, I understand it’s going to be a rough path. At the same time, many will give up, thus making you special. At the same time, I’m here to help you.