There's a long and hard, but beautiful road ahead of you
You can take the bypass unless you like those windy, bumpy roads.
No matter which way you go expect a long journey of learning.
Currently baremetal can be done in asm, C, C++, Free Pascal, Rust and ?????
Turning those into an OS is a bit more complex.
For me an OS requires some sort of shell scripting language, so you can write apps on the OS.
OS's by themselves don't actually do much, they need to run stuff.
That is the application level coding, which is mostly what I do these days with Ultibo.
It is very similar to using Arduino's where you have a startup section and a main section.
Everything else is done with library files.
As well as nix style OS's look at Real time Operating systems, FreeRTOS etc
I do most of my Pi OS GUI coding with Zero's using the USB boot mode.
Just saves all that uSD wear and tear.
A couple of the tuts linked to some of the regulars are very useful.
The ultimate OS is something like Oberon, which really needs updating and native porting to Pi's.
I'm dancing on Rainbows.
Raspberries are not Apples or Oranges