Timeframe: circa 2014 – 2022
Position: Developer
Technologies: JavaScript, Phaser, Apache Cordova, SQL, CytoscapeJS, NodeJS
Status: Unreleased prototypes, AI experiments, etc.
The Story:
As I’ve been making a lot of tools over the years, from back-end apps to support game projects to plugins to other tooling apps, I’ve also looked at making tools for my day-to-day activities. One of the things that’s never really satisfied me personally was navigating the Windows interface to run apps. Even pinning apps has limited utility compared to, say, the spacebar menu in Maya. And using a system such as Rainmeter, while allowing me to customize my desktop, doesn’t grant me the ability to really do more powerful things. So, I wrote a series of increasingly powerful desktop augmentation tools. Consisting of customized menus and buttons that run anything from Powershell scripts to JavaScript functions, these apps have saved me a ton of time.
Ultimately, I open-sourced one of the latest ones, known as WorkSprite, on my GitHub repository. This is closest to the version that I use in day-to-day work. It’s based on NWJS, VueJS, and JavaScript. It features customizable menus and a pluggable GUI system using VueJS, and a plugin system for the omnibox functions. Basically, it’s Node with a fancy GUI on it running side by side with Windows for productivity.
I also have done some experiments with parsing text to graphs. Above, I was able to do some pretty fast brute-force pattern matching to extract a large percentage of the information in a given block of text. This code still holds up against the likes of GraphGPT, especially if you compare the round-trip times!
This led me to doing more with visual graphs, and doing online-learning with knowledge graphs that start out as dictionaries to aid in parsing. The results were great, and the only real weak point was the pattern-matching getting unwieldy. Not wanting to get into neural-net territory, I tested other ways of getting this done, and satisfied myself with following that rabbit hole. I used NWJS, Cytoscape, and JavaScript for these experiments.
I continue to run these experiments, and some of the learnings will be present in a note-taking app that I’m currently developing.
Above is an early (2nd) version of a note-taking app I worked on using block editors. The revision that replaced this is in production for early 2024 for mobile and desktop, and is meant to take advantage of our spatial thinking, as well as aiming to eventually augment that with sparse representations to give the user insights into their notes. This was done with Apache Cordova, Phaser, and HTML/JS.