Week 7 | Supabase Postgres Database

Last Week Supabase Postgres Database is investigated. First table is in. Data classes set up for database. App can now read and write the database. What does it mean in English? An app needs to store information. It could store it on device. But in many cases it’s more helpful to store it in the cloud (which is just somebody else’s computer that is always connected to the internet) such that the functionality of the app is not dependent upon one device....

February 15, 2025 · 3 min · 554 words · Bill

Week 6 | Input Validation

Last Week Login page is beautified. Basic input validation is set up. When any error is detected, the login screen is reset and a snackbar message is displayed. What does it mean in English? George Carlin once uttered the wisest of words: “Imagine an average stupid person and then realize that half of the population is stupider than that.” Even if your users are all saints and none seeks to destroy your app with malice, you still need to carefully handle the fruits of their stupidity....

February 8, 2025 · 3 min · 480 words · Bill

Week 5 | Supabase Authentication Service

Last Week Supabase auth is implemented with One-Time Passcode (OTP). Tools used: Authentication Service: Supabase Auth (free to start) Dependency Injection Library: Koin Dependency Injection (free) What does it mean in English? An Authentication Service makes sure the user is who they say they are. In this particular implementation, when a user tries to login with their email address, an authentication server (i.e., a powerful computer) sends a random number to the user’s email address....

February 1, 2025 · 5 min · 969 words · Bill

Week 4 | Compose Multiplatform

Last Week All screen files for the initial version of the app are now in place. Screen navigation is set up. Tools used: Development Platform: Kotlin Multiplatform (free) User Interface (UI) Framework: Compose Multiplatform (free) Navigation Library: Compose Multiplatform Navigation (free) What does it mean in English? A Development Platform translates my code into languages the end devices understand. In other words, I write in (mostly) English, the platform translates it into ones and zeroes....

January 25, 2025 · 2 min · 360 words · Bill

Week 3 | Standing on Shoulders of Giants

Last Week Development environment is set up. Bog standard Android Studio on Linux. Gradle builder works as expected. Emulator launches sample app correctly. Tools used: Integrated Development Environment: Android Studio (free) Builder: Gradle Build Tool (free) Emulator: Android Emulator (free) What does it mean in English? An Integrated Development Environment (IDE) is little more than a fancy text editor in which human-readable code is written. Gradle Build Tool collects everything an app needs and assembles them into a neat package (aka....

January 18, 2025 · 2 min · 268 words · Bill

Week 2 | Static Site Generators

Last Week The blog website is now set up. You are staring at it right now. Tools used: Repository: Github (free) Static site generator: Hugo (free) Website theme: Paper Mod (free) Builder: Cloudflare Workers (free) Host: Cloudflare Pages (free) Domain Registrar: Cloudflare Registrar ($12/year) What does this mean in English? I write my blog entries in a file in a format called Markdown. I save the aforementioned file on Github....

January 11, 2025 · 1 min · 179 words · Bill

Week 1 | Genesis

I want to develop and publish an app. This blog, along with the video update series on Youtube, serves to document my journey. Every Friday I will talk about what I accomplished during the previous week and what I plan to do in the following week. It will come in the form of a blog post right here and a Youtube video. Last Week New Year stuff. Lots of good (read: bad) eating....

January 4, 2025 · 1 min · 100 words · Bill