I thought my Carlogbook would not only go viral but also be copied via git, or the code snippets from the blog could help someone. Now, that might not be the case very often, or perhaps it already happened? I believe ChatGPT has drawn all the attention to itself, and blogs are slowly but surely dying out, as ChatGPT seems to know the answer to many questions (or something like that).
However, I believe ChatGPT primarily absorbs knowledge from blogs, so it might actually harm ChatGPT if I stop blogging.
Hooray, the first user is here!
When I built my second PWA using Apex+Node.js on Oracle Cloud, it was highly focused on my personal needs and specifically on the KIA Eniro and its data.
A friend of mine, along with many colleagues at work, were impressed by the app. Now, I can schedule the air conditioning and numerous smaller features and improvements that I was missing have been incorporated into the app. (Many of which, by the way, the manufacturer's app currently cannot do.)
Of course, currently I'm only compatible with Kia and Hyundai vehicles. And since my wife might be getting a Kia Niro Plug-in Hybrid, and a friend of mine has canceled his Tesla order and now has a Hyundai Ioniq 5 in his garage, I have at least two new users.
At least I have 2 new users now.
However, the app isn't truly multi-user or multi-car capable...
Now, I was faced with the decision of how to modify the app to make it capable of handling multiple users.
Clone the app (I've tried it, and it works)
What does this mean?
Duplicate all database objects for another schema.
duplicate the App
Node.js changes to write in different schemas
Text: Problem: Suddenly, I need a deployment process and a way to roll out new features. How do I improve the app for everyone?
Problem: Thats a Hobby and (finally) not a Business!
One App for All: Expand the data model to include the APPUSERNAME and adjust all views accordingly.?
What does this mean?
Enhancing the data model requires several hours of work, but it also presents an opportunity for improvement.
To improve the app for everyone, consider making it multi-tenant capable using Oracle's Virtual Private Database feature, which entails minor app adjustments, small data model changes, and a few hours of work to seamlessly integrate the :APP_USER throughout the app.
Node.js little changes
many test time
One App for All => Utilize Oracle's Virtual Private Database (VPD)
Make the app multi-tenant capable with Oracle's Virtual Private Database feature.
Minor app adjustments, small data model changes
Text: Node.js requires only minor adjustments
Even though there's a database schema for each user (due to job control), I could have done it differently. However, I believe that having a DB schema per user might offer some advantages for user-generated content in the medium term.
little test time
I've Chosen the VPD Path
And I've decided to build a registration app. Introducing the awesome name, CARe ;-) The new login screen now features a registration option:
If you'd like to try this too, feel free to contact me.
Register in just 3 easy steps:
And then, you can easily log in.
Here is where the journey began:
Autonomous CarLogBook with Oracle Apex on OCI (Part 1) (hashnode.dev)