When it comes to building ideas for applications, I will always choose the web first. It’s what I can I do best and it is where I can ship those ideas more efficiently. I can go from that first line of code to a shippable idea in hours. After that, I can just iterate on that idea when I want to.
There’s another benefit to building for the web though. You have access to a bigger market.
At a startup, engineering resources are scarce. It’s expensive to spread your engineering expertise across different platforms, so it’s better to focus on one in the beginning. Building for the web means that users on mobile, desktop, Chromebooks (which have become the most popular EDU hardware in the US), and any other internet-connected device can use your service, whereas a native app is specific to iOS or Android.
I’ve toyed with learning Apple’s programming language, Swift. My goal is to learn how to build iOS apps. It’s not that I have some Candy Crush busting idea that will net me millions, it’s just something I would like to learn.
Even if I had the knowledge to build a native app in the same time that it would take build a web app, I think I would still go with making a web app. Native apps serve their purpose, but I think we’re seeing more viable alternatives through web apps.