- The Hidden Layer
- Posts
- Searching for Another Way (S4AW) Week 1
Searching for Another Way (S4AW) Week 1
Week 5 of documenting my app development learning journey (May 18 - May 24)
This Week’s Goal:
To find software I can use to create my first mobile app (and then go from there).
Last week’s Accomplishments:
N/A
So I still didn’t manage to get my hands on a viable Mac that I could use for app development. It sucks, though, especially since I spent a lot of time looking just to come out empty-handed.
However, that doesn’t mean that I’ll just give up; from now own, I’ll document not specifically my app development journey, but more so looking for the equipment and hardware that I’ll need to do so.
May 21st, 2025
I remembered something that my dad had brought up some time ago, and it was the Mac mini—as long as I had a decent monitor and all that, I could probably get and use one for app development.

A little bit much—a later decision, when I get a part-time job maybe.
Neeeever mind.
So I revisited two other alternatives that I’ve dived into before:

And after asking perplexity.ai for suggestions, it recommended that i go with Flutter.
The reason being, I wanted to make an app specifically for learning AP and/or SAT curriculum that mirrors the wat Elevate does it, with its abstract art (“eye candy”) and practical learning games.
And luckily, AI and ML modules/libraries are accessible when using Flutter too:

Hey, it’s TensorFlow Lite!
How nice! The perplexity model gave me some sample code too:
import 'package:flutter_ai_toolkit/flutter_ai_toolkit.dart';
import 'package:google_generative_ai/google_generative_ai.dart';
// ...setup and widget code...
So, yeah, I guess Flutter it is!
Wait…but in order to release an app onto the App Store, I’ll need an Apple Developer Program membership, which costs $99.
…I’ll figure that out later.
May 23rd, 2025
You’re kidding me!!!
Flutter and React Native aren’t the only ones I have to decide between when it comes to me trying to develop an app (without a computer)…there are additional tools and software I have to utilize in order to be able to develop apps and actually smoke test them.
Smoke Test: “A quick, initial quality assurance process used to verify the basic functionality of an iOS app after a new build or code change.”
These additional, mandatory tools for Flutter and React Native were Codemagic and Expo Go, respectively.

So it turns out that I’m not going to use Flutter, even if I also used Codemagic with it. Codemagic is basically tool that helps with CI/CD (continuous integration, continuous development) in app development, but it costs a ton of money…and I’m just a high schooler with no real income source :(
However, perplexity.ai just decided to tell me that I could smoke test my apps using React Native + Expo Go instead of using Flutter + Codemagic, which can’t offer that same service (for free):

Let’s go!!!!!

So…React Native + Expo Go it is, then!
May 24th, 2025
React Native is a library of JavaScript, and based on the original React, so I decided to take a course on React Native on Coursera to refresh my memory of JS and also to get a feel of how React Native will work:
Today, I started the course—I chose one made my Meta (they’re credible, in my opinion)—and I learned that: yes! One of the introduction videos verified my belief that React Native does support iOS apps, thanks to it being cross-platform.

Alright! Now to see what kinds of apps I can make using React Native…
In fact, those videos explained that React Native can render its applications natively for the OS that the app is in, hence the “Native” in “React Native”. React Native does this by using the original JavaScript code to generate the native code; this characteristic overall helps with the efficiency and power of React Native, where it can reap the benefits of being on the same programming platform on the device’s OS.
OS means Operating System, btw.

A simple diagram of how React Native renders its code.
Initial reaction to React Native code:

IT LOOKS LIKE HTML!!!
In other words: I saw that React Native seems to be tag-based, just like HTML.
After successfully downloading node.js (React Native needs it), I tried to install Expo Go (as instructed by the course) in a terminal in VS Code after overcoming this error:

I used Windows Powershell to solve this.
Resources:
Special Thanks:
To perplexity’s development team—they make research for these kinds of personal projects soooo much easier!