I’ve been away for a bit as I’ve been onboarding with my new employer and working through family circumstances. Now that things are returning to normalcy, I wanted to share an update on my different projects. I’m splitting my attention between four projects, two of which are instructive and two of which are productive endeavors….
Clarification (Seeking Semantic Similarities)
A quick nitpicking follow-up for the previous post about the embeddings used by LLMs. The examples I used were vectors in space, which is intuitive for someone to think about. However, the actual representation inside of vector databases and in LLMs is different – instead of being a point in space, a semantic concept would…
Seeking Semantic Similarities
When searching for data, we often rely on straightforward criteria like exact matches or proximity in attributes such as location. These types of matches are easy to calculate, as they involve direct comparisons. However, there’s a more complex challenge that arises when we need to determine if two things are similar in meaning. How can…
Bytes to Bites
How do we get from a user’s message to an informed response from Chom? I’ve been chewing on this one for a while and I think I have an idea for a first draft. So let’s go ahead and just hit you with the sequence diagram right away: (Go ahead and click to get a…
Om Nom Chom
For those not in the know, I’ve been working on a chatbot affectionately known as “Chom, Your Culinary Companion” — Chom for short. (Coming soon™ to https://chom.ai/ !) Chom is in an alpha state, capable of interacting with users but integrations and steering are still in the works. Chom interacts with users in a chat…
thread::sleep(a_little_longer)
Quick update from the lunch table. I’m still alive, just continuing to face significant challenges at work. The dry spell of personal development time will end very soon, however, and we’ll be back at it in no time. Tentatively looking at late May to resume Medusa development. I’m also planning to start working on a…
What a horrible night to have a curse.
Work on Medusa has been on pause for a bit while my energies and attention are focused towards a tight deadline at work. But! Fear not, adventurer! Lots of interesting content to come soon. My temporary hiatus should resolve at the start of November and we’ll press onward.
Medusa and Entity Component Systems
With the rewrite to Rust, the Medusa system is moving from a Javascript prototype-based engine (half OO, half data-driven) to a strictly typed entity component system, which is a somewhat confusing model to wrap one’s head around. My best understanding to date for the entity component system is along the lines of, a warehouse of…
Engine Determinism
One of the major hurdles I have struggled to overcome is the lack of exploration for engine determinism and its ramifications for building up a quality platform for a long-term game. Often the topic is glossed over or even outright ignored, with no discussion of seeding random values, writing multithreading such that order of operations…
I AM ERROR
With the renewed interest between my friends and I in development of Medusa, our 8-bit love letter to the NES era of puzzle games, I’ve engaged with the Rust programming language for the construction of the engine. The language makes a certain design pattern first class, which I want to discuss here. (Disclaimer: I am…