Mobile Development vs Web Development - Why I Switched Sides
Sep 12, 2023 by Florian
I often get asked why I switched from Android development to web development. After all, I accumulated over 200k subscribers on my YouTube channel only by making Android content. Why throw that away?
I didn't switch because I hate Android or because I think Android development is too difficult. Web development is difficult too and both platforms have their problems. I also didn't switch because creating web development content makes me more money. On the contrary, I basically had to start rebuilding my whole channel from scratch.
As I explained in other posts, building your own side projects is a great way to improve your programming skills. But instead of building something only to put it on your GitHub profile, why not take a shot (or several shots) at building your own startup? Many developers build profitable apps without external funding and without a team. There's nothing to lose really.
Web development is by far the best skill to build your own startups. Native mobile development, on the other hand, is terrible for that. Let me explain why.
When you build a native mobile app, your app only runs on one single operating system—Android or iOS. A website, on the other hand, can run on any device that has a web browser (which is basically every smartphone, tablet, computer, smartwatch, etc.).
If you use modern CSS features to make your layouts responsive, it will even look like a mobile app on small screens. Just check out the app we build in my Next.js course, which looks amazing on any device size.
And even if you want to release your app to the App Store or Google Play Store, you might still not need a native mobile app. Many big apps like Amazon's Android app, or the Gmail app, just use WebViews to display their website.
A mobile app really only is necessary if you need access to features like Bluetooth or sensors. But even then, I'd rather use a cross-platform framework like React Native or Flutter to get both an Android and iOS app from a single code base.
What bothers me even more about mobile apps than the small reach, is how much you have to bow to Google's and Apple's policies and sometimes tyrannic rules.
Unfortunately, there are mountains of reports in different Android communities from developers who had their Play Store accounts terminated by Google. Of course, often the developer is not innocent and they actually broke one of the many app store-specific rules. But sometimes they are innocent, and these deletions often happen without any warning and without the ability to appeal them.
Even worse, if your personal Play Store account gets terminated, other accounts you can be associated with can be terminated too. This could be the Play Store account of your employer that you're logging into. I know Android developers who don't create their own Play Store accounts because they are afraid of being unable to work a job as an Android developer ever again.
Before you can release your app, and for every single update, you have to wait until Google (or Apple) approves it. Sometimes this takes only half an hour, sometimes days or weeks. It's not fun. When I want to ship an update for my own website, I can do that instantly, because I own the whole thing. If I don't like my hosting provider, I can change to another one instantly. I only have to adhere to the law and not some store's arbitrary rules.
Lastly, the app stores take a big fee for purchases made inside your app. These fees are either 15% or 30%, depending on what you sell and how much money your app is making. Other payment providers have fees too, but they are usually not as high as these app store fees.
I had some apps on the Play Store but I don't want to bow to Google's tyranny. I rather own my project fully (and maybe supplement it with a cross-platform mobile app if it becomes big).
I already explained why web development is better for building startups. But it's also good to know that your skill can get you a job if you need one.
The job market for web developers is bigger. I didn't bother searching for any numbers on Google because I know what other people report. Web technologies are just more widespread and pretty much every company needs a website. Then there is this whole thing about SEO (search engine optimization) where companies, both big and small, are constantly trying to improve the performance and therefore the rankings of the websites. There is just so much demand for web developers with skills in modern frameworks like React and Next.js.
This is why I love and always pick Next.js for my projects. It's an incredibly powerful React framework that can render websites both server-side and client-side. This allows you to create fully interactive web apps that are also optimized for page speed and SEO. That's a skill that will always be in sky-high demand.
Look, if you really enjoy native Android or iOS development, and your main goal is to find a good-paying job, then it can be a totally fine choice. If you specialize in this field, and you're willing to move to a location with good job opportunities, then you can have a very lucrative career. Just be aware of the downsides and dangers I outlined in this post. They are real.
If you're interested in learning web development, I've prepared a completely free playlist on YouTube that teaches you React, Next.js, and backend development in TypeScript. Enjoy!
I hope this little rant was insightful!
See you in the next post! Happy coding!
Tip: I send regular high-quality web development content to my free email newsletter. It's a great way to improve your skills and stay ahead of the curve.Subscribe Now