About this website:

Welcome to the Home page!


✅ COMPLETE !

I am currently Earlier this year, I was seeking a remote job where I can work as either a software developer or a technical writer.

I originally created this website to serve three purposes:

  1. Showcase my personal code + documentation.
  2. Contextually display my different writing styles.
  3. Demonstrate my willingness and ability to learn new frameworks and skills.

I'd never used CSS before creating this website, and only had a cursory familiarity with HTML.

I learned SO much, had a lot of fun, and discovered some really interesting toolchains while building this website.

I put a lot of labor and love into making this website, and I enjoy how it turned out. But if you think of any small tweaks or additions, I'm open to suggestions. Feel free to click the contact link (found in the upper-right corner of each page) and send me an email. Enjoy!

Future Plans:

After finding a job, When I get back into a good flow studying Godot and Blender again, I'll begin to post tutorials and walkthroughs for programs. (And I'll ensure that all current URLs in the Documentation section remain valid, regardless of any future tweaks).

Though my true loves in life are my wife, philosophy, and application writing-- I will definitely return to add to this website in the future. I just don't know when.

For now, my time as a web developer is very much on the backburner. I had to abandon many other projects for months and months to complete this. I desperately wish to return to my gigantic hobby project. And (if I can manage to convince myself :) I'd like to spend a bit of time relaxing now that this marathon is over.

Contents of this website:

Current State:

The Documentation section has the most content, at the moment.

For the sake of presenting a learn portfolio, I've written two thoroughly annotated AutoHotkey scripts. You can read both of them with full syntax highlighting and code block folding in the AutoHotkey subsection of the Documentation area.

"Program Launcher" is a small script I wrote years ago in AutoHotkey. I use it every day, but the initial version was not extensible (and definitely not in a clean nor clear enough state to distribute online). So I decided to rewrite it and expand it from scratch, documenting each step and algorithm.

The result is a clean, well-designed program which you can configure easily with a graphical user interface.

"Emulate Numberpad" is a short script I wrote for someone on the internet who was discontent that their laptop didn't have a numberpad. With this script, you press a hotkey and it converts the keystrokes for keys 7,8,9 (and the keys below them) into keystrokes which you typically need a numberpad to send. Pressing the hotkey again turns this mode off and returns the keyboard to its normal state.

Pictures, overviews, and the complete scripts for both can be found inside this website's Documentation/AutoHotkey section.

Future Plans:

Manuals, API calls, tutorials, and guides for extending my open-source programs will be added to the Documentation area.

As I experiment more with Godot, I'll add tutorials for both basic and advanced scripting.

I also plan to add a subsection to my Documentation named "Web" where I'll outline how this website and the Documentation section itself was built.

Personal note:

I began writing extensively commented code in college, and ever since graduation I've been extremely grateful for the great practices and habits my professors instilled in me.

Concise but complete documentation prevents mistakes, eliminates ambiguity, and increases productivity. But good documentation itself has an overall zen and peaceful aesthetic, formed from precise and practical blocks, which I never tire of.

System exploration, analysis, and design are compulsive hobbies for me. I thoroughly enjoy learning about and memorizing complex systems.

However, to me, it is even more satisfying to take a complex internal understanding -> and portray it as a clean, straightforward, delineated progression. When considering your audience may include a range of
(a) novices
(b) those with partial understanding and
(c) those with intimate understanding,
it's always a fascinating puzzle to solve with a balance.

If my passion is not evident in the Documentation section of my website, I hope my cleanliness and presentation will show at least my competence.

In the Application Gallery you will find a brief overview of my favorite personal projects and experiments.

Includes pictures if you're in a hurry, and expandable overviews per project if you're curious.

I have uploaded several productivity utilities written in AutoHotkey which you can download and use on Windows Operating Systems. These are all free, open source, and uploaded to a GitHub repository.

My more casual writing styles can be found in the Philosophy Blog. There I will post some personal essays. For fun, I'll also include a few short stories and poems.

Personal note:

I write frequently for fun, so keep in mind the writing found in my Philosophy Blog is not catered to any specific audience other than myself.

It should nevertheless prove to be insightful for potential employers: uninhibited writing tends to reveal the internal methodologies of thought and organization of the author.

For those who are curious, the rest of this page is a brief summary of myself, my dreams, and a bit about how (and why) I strive to live a good, ethical, helpful life.

click a section to expand

I am a writer.

I think incessantly, and as a byproduct I write about many topics in a variety of styles.

Casually, I enjoy exhaustively and precisely writing on philosophical topics, but in a professional setting I cater to the tone of the context and the needs of the audience.

Combining all of my:

  • code,
  • documentation (personal + Open Source contributions),
  • tutorials (primarily posted to online Q&A sites),
  • essays (on mediacraft, philosophy, ethics, human nature, self improvement, brains, and the subconscious),
  • notes (on ideas for future projects, design principles, brainstorms, game ideas, outlines for sprints, etc.),
  • fiction stories,
  • and poetry
I have written at least 880,000 words over the last decade. (Verified word count, but not complete: I will update this occasionally as I sift through my old hard-drives.)

I am a programmer.

I've been programming for 15 years, verbosely writing documentation for personal projects for 10 years, and learning web design since May 2020.

My main life goal is to create a GNU desktop environment specifically (and comprehensively) tailored for education, complex data organization, self-improvement, and game design. Contemporary operating systems are incredible for file management. However the human angle is often centered around files, instead of files being centered around human need as their core purpose.

In the meantime, I am building my skills and knowledge-base in pursuit of this ideal.

Presently, this site mainly details a framework I wrote for AutoHotkey and a few productivity utilities I've built using it. Progress is ongoing and it is by no means exhaustive in coverage yet, but it will be useful to anyone working with complex user interfaces in AutoHotkey.

I am a game designer.

My current game plan is to build utilities to organize my plethora of personal notes, then shift gears to design and program videogames.

I am determined to publish a commercially successful game within 20 years. But, more importantly, I want to hone my abilities to create and portray information in novel and streamlined ways. Fortunately, practice with software related to building videogames brings me closer to both endeavors.

My end-goal is to create tools which allow users to easily craft educational experiences that feel like (and are as fun as) playing videogames. Many lessons would be better served as interactive models, especially for students. I would love to see the day where every textbook has an app companion which has interactive 3D models for every chapter and topic.

I am, primarily, a philosopher.

Have you ever had a moment of realization which... completely filled you with awe?  Thinking about infinity and paradoxes?  Or learning about electricity and atomic elements for the first time?  Or trying to picture the immensity of the entire universe with all its stars and galaxies?  Or exploring that alien world of microscopic intricacies and machinery inside our cells and DNA?  Or appreciating the vast diversity of information and creativity our brains can provide on a whim?

As a child, I savored and cherished all the moments when I learned something so new, wild, and fantastic about any of the many systems of our universe.

I've spent all my life in pursuit of three things:

  1. Finding the love of my life.
    [Status: Check!]

  2. Discovering (and cherishing) as many eureka moments as I can.
    [Status: Perpetually in progress :) ]

  3. Becoming the best and most ethical version of myself I can envision.
    [Status: Perpetually in progress :) ]

I've written a copious amount of personal essays, explorations, and realizations but never published -- initially thinking I would eventually compile them into a series of books by topic and release them.

While I still intend to publish a book or two eventually, it's not likely I'll have enough time to exhaustively give each idea the time it deserves.

So while I was in the process of putting together an online portfolio, I thought it would be nice to aggregate some of my ideas and writings into a blog, to have a place to publish stray ideas sooner rather than later. Mainly for fun, but also for a little peace of mind.

Fun:

This website adapts to your window orientation.


If you are on a desktop computer, try playing with:
  • the dimensions of the window (when the window is a tall rectangle, the sidebar automatically moves to the top of the page to save space)
  • zooming in and out (ensure the window's width is greater than its height for this to have an effect)

If you are on mobile, try:
  • rotating your screen to view in portrait mode
  • rotating your screen to view in landscape mode

Enjoy =)