What is the best way to learn mobile app development (iOS / Android / Windows Phone)?I decided to learn iOS development about 10 months ago, from absolute zero. I had never written a line of code in my life, and never taken any sort of CS class. So while I agree with Reinder de Vries answer here, I'm going to add a couple of things I found helpful for a complete beginner.
1. Get the right equipment.
If you want to learn mobile app development, it makes things much easier if you get the best tools for the job. In my case, that meant getting a Mac, but if you choose to develop for Android you have more options. Consider using a Unix/Linux based OS too.
2. Learn the basics of coding.
I started from absolute zero, so I found Programming for Everybody (https://www.coursera.org/course/...) to be a great help. I then moved on to Udacity's Intro to Computer Science (https://www.udacity.com/course/c...). Both courses can be taken free and are excellent for newbies. Also, getting familiar with Git and Github will be helpful.
3. Move on to your chosen platform.
Yes, I realise this means learning another language, but I found that there really weren't that many "absolute beginner" courses around for Objective-C, let alone Swift. Most assume some prior coding experience. Of course if you already have experience then you can skip no. 2.
4. Keep coding and learning.
This is, I understand, essentially what app developers do all day. Code and learn. At the start, you will do this a lot without getting paid much, so this is where you find out if the career suits you or not. It helps if you have some ideas for apps to write. They don't have to look spectacular, their purpose is to showcase your skills. For extra points during your job search, use techniques that companies are likely to be looking for e.g. location-based apps, video and audio recording and playback, photography.
This is as far as my answer goes, because I'm still at no.4 myself :)