One of the reasons I write this blog is to de-mystify the process of becoming an iOS app developer. Usually, I do this by writing about programming and development topics. But, sometimes people get lost in all that and just want to know where to start. Hopefully, this post will clear up the questions that 90% of you have been asking about becoming iOS app developers.
What you need boils down to three things:
- Mac Computer
- iOS SDK
- Software Development Skills
Mac Hardware
This one is always the hardest for some people to swallow: look, you need a Mac to do iOS app development. The answer to the question I always get about “cheating” somehow and using a Windows or Linux computer is NO! No trying to install OSX on a Windows with VMWare or using a Hackintosh or whatever.
If you’re serious about doing iOS app development then you are going to need the right tools. You can see all your options for buying a new Mac on the Apple website. You can find a Mac Mini for as little as $599, but I would suggest a MacBook or MacBook Air so you can stay mobile.
iOS SDK
The next thing that you need are the tools that we used to make iPhone apps. The easiest way to get these tools is to buy them from the Mac App Store for $5. The app that you need is called Xcode. When you buy and install Xcode you will get iOS SDK as part of the package.
Xcode is like a word processor for iOS code. Xcode comes with a code editor for Objective-C which is the programming language used for iOS and Mac apps. You will also get an editor called Interface Builder that you use to compose your app’s user interface. Interface Builder is a drag and drop solution so you don’t even need to write any computer code to make this work.
You will use Xcode for pretty much everything that you need to do to make iOS apps and Xcode runs only on Macs.
[box]NOTE You can also join the Apple Developer program to get Xcode and iOS SDK, but you will need to install the software yourself and not from the Mac App Store. The Apple Developer program costs $99 per year. You must join the Apple Developer program to test your apps on a device and to publish your apps on the Apple App Store.[/box]
Software Development Skills
The apps that you see for sale in the app store are made of two things: content (pictures, music, movies, information) and code (the stuff that makes everything work). Your apps will need content and code. There are plenty of programs to help you create content: text editors, paint programs, etc. But, to make it all work you will need code and that means you need software development skills.
If you already have software development skills, then you really just need to learn how to use the iOS SDK. If you would like, I can help with that with my iOS Code Camp program. iOS Code Camp is a coaching, training and mentoring program where I help programmers learn iOS SDK. To get the most out of iOS Code Camp you should know some programming including object-oriented programming.
Key Software Development Skills
Generally speaking software developers need these skills:
- logical problem solving (ie: SUDOKU, puzzles, chess)
- creative building (ie: LEGOS, Civilization games, models)
- programming skills (ie: making web pages, robot instructions, macros, writing computer code)
You probably have some of these skills, one key thing that you really really need though is programming. Programming is simply the process of giving instructions to a computer. The trick with programming is learning the rules and using the tools that are available to you to be an efficient programmer.
To start learning programming generally, you can use your Mac and Xcode to learn Objective-C. You can go through my free eBook, Beginning Objective-C Programming, to get started as an Objective-C programmer.
iOS App Development Skills
The next step after learning programming is learning how to use the tools that Apple gives you to make iOS apps using the best practices and patterns available. This is what most software developers spend their time: using tools from companies like Apple to create software for end users. The trick is learning to use these tools.
iOS SDK comes with Xcode so you don’t need any additional stuff to get started with iOS SDK. Here are the main things that you will need to master to develop apps:
- Objective-C Programming (OOP)
- Foundation (OOP features that make hard programming tasks easy)
- UIKit (code you use to work with the iOS interface)
- Interface Builder (tool used to compose interfaces)
How to Get iOS App Development Skills
The quickest way to get up to speed on iOS app development is to register for iOS Code Camp. iOS Code Camp is a 6 week online training program that includes 60 hours of training. I personally teach iOS Code Camp and answer questions throughout the day via a dedicated BaseCamp site that I set up for you and you get weekly coaching calls with me.
iOS Code Camp is also hands-on and practical. You will leave after having made 15 iOS apps (including iPad apps) and if you get stuck I’ll help. You will learn Objective-C and the essential iOS SDK topics like Foundation and UIKit. Also, we go deep into advanced topics like Core Data and Web Services because you want to leave iOS Code Camp with the skills to make real apps.