3 years ago, I started to learn programming with no background (C course in college doesn’t count with a grade of DD). There were always some online courses from some universities, but I always believed that I should learn by doing. That’s why I signed up for Treehouse and had my first course about Objective-C…

It was a disaster.

The course, interface, examples that Treehouse covered were amazing. You can also practice Objective-C on your browser (you don’t need a Mac) but I understood nothing.

After trying a couple of more times, I just stopped for a while like everyone else.

Then i gave another try, then another, and another. Here is the list of courses I had taken:)

After all, publishing my first iOS app took 2 years of continuous learning and 1 month of developing. After publishing my first app beta, I decided to share one way of realistic learning path (for iOS development) so other people with no programming background can follow a track without losing time.

So let’s rock’n roll:

1- Front-end Courses on Freecodecamp (freeCodeCamp)

Sorry but you should start with learning the fundamentals. This course is a must (especially Javascript part) for learning basic algorithms.

2- CS 193P Iphone Application Development course from Stanford University

This course covers everything (almost) you need about iOS development.

3- iOS App Development with Swift Specialization from Coursera — University of Toronto

Understand basic concepts in a more visual way.

Appcoda has very useful tutorials and you can actually learn the basic versions of very complex apps. These two are my favorites:

If you already have your app idea, just take a glance at the tutorials here. I am sure you will find the guidance you need.

6- Some helpful links

Firebase for back-end services and analytics

SDKs for intergrations: Facebook , Google Maps, Amazon Services, Mixpanel

Curated lists of Swift libraries and frameworks:

- https://github.com/Wolg/awesome-swift

- https://github.com/matteocrippa/awesome-swift

- https://github.com/Wolg/awesome-swift - https://github.com/matteocrippa/awesome-swift If you need to learn some app design (with coding as well), check out https://designcode.io/.

and stackoverflow will be your best friend.

Ideally you should start with 1, then 2–3 together. 4–5–6 will help you when you start building your first app.

Bonus: If you want to go further, learn web development and back-end as well, this one will be a good start: Full Stack Web Development — Coursera.

Good luck!

If you liked the post, please hit ♥ so others can enjoy it too.

P.S: If you think there should be more on this list, just put it as a comment.