Posts tagged: web
Why I Chose to Learn iOS Instead of Web Development
I write the curriculum for DevMountain's part time iOS development course. Our first cohort was extremely successful. If you are considering learning to code or become a developer, you should consider our iOS course. This post is a response to the number of students that ask me if they should do web or iOS, or even web then iOS.
Funny they ask me what I think. Is it not obvious what I think? I chose iOS. Here is why:
What makes iOS the best choice?
There are at least 4 reasons 1 why you should learn iOS development over web development:
- Higher income
- Scratching my itch
- Stronger platform
- Residual income
The best senior web and mobile developers make very high salaries. But pre-course students are not asking about talented senior developers; they are asking what they should expect coming out of a 12 week program (I should point out that some students are brilliantly talented after only 12 weeks).
Both iOS and web cohort graduates will interview for positions paying 1/2 or even 1/3 of what the top senior developers are making, and will be happy to do so. To use real numbers, I'm talking about $45k-70k for the students compared to the $100k-140k that senior developers make in similar markets.
Thanks to the small mobile developer pool and the current demand of companies to develop in-house and App Store applications, the best iOS graduates will end up on the higher end of that $45k-65k number. In my experience, iOS developers often are offered 15-20% more for a comparable development position. There are a lot more web developers than iOS developers.
There are also a lot more iOS development jobs than there are iOS developers.
Think of it as simple supply and demand: there are less iOS developers than are needed so employers have to pay more for iOS developers. The inverse is also true: because employers are paying a higher rate for iOS developers more students will begin to choose iOS development.
The market is currently bullish on iOS development. The cohort fills up quickly and we receive more applicants each day. The best time to become an iOS developer is right now; this is a wave that you don't want to miss.
Scratching my Itch
It has to be frustrating that when you have an app idea you have to convince a developer to build it for you.
I do not have that problem. My problem is that I have too many ideas and not enough time to build them all. How would you like to have that problem?
The apps of which I am most proud are the ones I built for myself 5. When a friend had an idea for a sunrise sunset calendar I wanted one so I helped build Rise. I wanted my daughter to learn letter sounds so I built Alphabet Sounds.
These were weekend projects. Neither of those examples took more than 50 hours to build. But they are on my phone, on the App Store, and are making a small residual income.
It gets better. As my daughter grows I can build apps specifically targeted for her learning needs. I can watch her trying to learn math and find tools and concepts that work for her. Then I can build them into an iPad app that she will want to use.
Many pre-class students pick the web class because it is a broader platform. I chose iOS because of the platform depth, and chose not to do web because of its breadth.
When you develop on a platform it shapes the way you see what you are building. Communities are formed around platforms. Typically libraries (third pary code bases you might add to yours) are built for a specific framework or platform.
- iOS development is one platform and countless libraries limited to the iOS platform. 2
- Web development is countless frameworks and libraries limited to the framework you choose.
Mobile development moves quickly, but the frameworks remain steady. At DevMountain we do not teach a language, we teach the frameworks. This means that what you learn in your 12 weeks will still be usable in 3 years. Of course there will be new features and APIs; there will even be a new language (Swift). But the frameworks remain the same.
You gain an enormous command over a deep platform rather than a broad set of skills related to web development.
You need to know: the gold rush is over. You are not going to make millions of dollars in the App Store. But that is probably old news to you. Most people I talk to would love $100-300 of residual income each month.
The fact is that once you learn how to build iOS applications you are hours away from submitting software to a store that can return to you a residual income. The experience is life changing.
The iOS platform is a powerful and active software marketplace. If you spend the time and energy making a product (even on the side) that meets a market need, and find a good way to bring people to that product 3, you will make money 4.
"Life changing" does not always come in the form of 6 figures. I have a simple application that makes enough each month to pay my family's phone bill and over the course of the year save up to buy a new iPad and iPhone when they come out.
I have another application that makes enough to pay for our family's health coverage. When we had a baby last year it was not the insurance from my full-time job that paid the bill; it was the insurance paid for by one of my apps.
Neither of these make a ton of money. But, I have not touched them in years and the income makes a tangible difference.
Ultimately any senior developer will want to learn more than just one language and one platform. If you pick web first, come over and learn iOS next. If you choose to learn iOS first, eventually go learn web development.
If you are considering becoming a developer; do it! Learning to develop is a life changing experience. Whether you focus on iOS or the web, it will be exhilarating. We are excited for you. Software development is a mentorship driven industry.6 There are millions of experienced developers on the other side, and they are ready to put their arm over your shoulder and welcome you to the party.
In the end, the best I can offer is my experience.
I left my corporate stooge job. I quadrupled my annual income. I obtained the freedom to work on whatever I want, and only on products in which I believe. I get to decide how much money I make.
I get to wake up in the morning and spend time with my little girls. I get to take a day off when my wife feels overwhelmed. My best friends work and build with me everyday.
Learning iOS development is one of the best decisions I have ever made.
The platform is bursting with users and powerful APIs and the products we are building are fun and exciting. Developing on a native platform means you can take advantage of hardware, and provide your users with better experiences. The list goes on and on. ↩
This is not true if you select a gaming platform like Cocos2d or Unity. Those will also limit the libraries available to you as you are building an application. ↩
Making significant money from iOS applications on the app store takes a full business. You will need to focus on market fit, marketing, keeping your app up-to-date, and maintaining relationships with your customers. It is not simple. But it is also not a pipe dream. I have multiple friends (not flukes) that make or have made 6 figure incomes from the app store. It takes work and dedication. And it is very real. ↩
Especially in iOS. I am always amazed by how much developers love and assist one another. Just look at Marco Arment's latest product Overcast. It is an iOS podcast application, and he received help and guidance on how to build it and what to watch out for from PocketCast and Castor developers - other independent competitors. ↩
It's a long read, but a great one. I love this portion of the article most:
One of the problems with these “X is slow” vs “X is not slow” articles is that nobody ever really states what their frame of reference is. If you’re a web developer, “slow” means something different than if you’re a high-performance cluster developer, means something different if you’re an embedded developer, etc. Now that we’ve been through the trenches and done the benchmarks, I can give you three frames of reference that are both useful and approximately correct.
It's really interesting that we're still talking about this. When I've interviewed with startups, I've consistently been surprised that they've asked me about this: "can we do a mobile web app version and be done?"
The short answer 99.9% of the time is: NO.
This article covers in depth why web apps are so much slower than native apps. And (as he hammers throughout the article) it's not anecdotal evidence; it's quantifiable evidence.