Apple Vision Pro reminds me that computers have become too efficient.
I'm currently typing this blog post in a floating window in the middle of
snow-covered Yosemite. I am a floating body manifested into the transcendental
Tim Cook matrix. I look into the sky and follow the soft clouds as they pass
overhead. They slowly part, revealing Steve Jobs' smiling face watching over me
from the heavens above. I am merely one more thing.
In 2011, I was selected to be a part of Google's Chrome OS Test Pilot
Program.
I received a free Google Cr-48 laptop, and it was an absolutely charming
machine.
The rubbery, matte-black chassis had absolutely no branding anywhere on it. Upon
opening the lid, the system would boot into Chrome OS, which, at the time, was
literally nothing more than a fullscreen Chrome browser—no desktop, no apps,
nothing.
I used the Cr-48 throughout college, often as a thin client that would connect
to my desktop PC via Chrome Remote Desktop.
One day, I got fed up with constantly reaching for the arrow keys or the mouse
while typing. So, I set up a few simple keybinds that let me jump the cursor
around and select text without having to move my hands off the keyboard.
Earlier this year, I had to figure out how I was going to load level data into
Magicore Anomala. A level
contains backgrounds, sprites, animations, dialogue scripts, and much more.
Ideally, I want to pack all of these things into a single file, so that I can
deal with the filesystem and file names as little as possible.
I did some cursory searching on tools or frameworks that make it easy to define
and build custom file formats, but the stuff I found was a little too complex
for my use case, and not flexible enough. So I created my own tool, and I
open-sourced it in case others find it useful too.
If there was, it would be spelled "Assemblify", which is now the name of your
next startup.
So, the cool thing about Assembly is that whenever you perform an instruction,
the CPU runs a bunch of comparisons automatically! They are stored in "condition
flags", which you can use to branch (goto) or do other stuff if the right
conditions are met.