programming posts

Speeding Up Embedding Comparisons

As I was reading through the Petar Maymounkov and David Mazières paper "Kademlia: A Peer-to-peer Information System Based on the XOR Metric", I was interested in the application of this XOR metric on work I had previously done on clustering embeddings. When implementing the Infer API for Clarity Hub, we focused on using the distance between vectors as a way to cluster utterances together into a topic. We did this via Euclidean distance between vectors, which we had to compare against all other vectors within the space.

performancearchitecturescalingprogramming

What Makes a Good TODO?

We all end up doing it: // TODO implement this function, or // TODO handle this edge case. Often as we write code, we use TODOs to track ephemeral work, and typically clean them up as we go along. But sometimes we keep that TODO around, and it ends up in main. Then what?

programming

Thoughts on Naming Utility Functions

We all know that naming things is right up there in the top three most difficult things about programming, right next to concurrency and caching.

programming

Reviewing Your Frontend Applications

Below are some notes I’ve taken from setting up new code repositories and onboarding new team members. Hopefully they can help improve your current documentation and notes to make onboarding a smooth process.

frontendprogramming

Component Library Checklist

The following is a checklist I like to use to ensure I'm covering all the bases when building a component library. It's a work in progress, but I hope it can be useful to others.

design-systemsfrontendprogramming

ChatGPT, Coding, and Language

I’ve been experimenting with ChatGPT, just like everyone else. But why has it become so popular? It truly is a revolutionary piece of technology. Is it The Next Big Thing? Will it really replace all of us?

aiprogramming

Revisiting GPTP - the Starcraft modding toolkit

One of the first PC games I played was Starcraft and the expansion Starcraft: Broodwar. We didn’t have a PC, so I had to play it on a friend’s computer, but I remember being immersed in the real-time strategy gameplay.

game-developmentprogramming

The Hierarchy of Webapp Needs

I was thinking about all the little projects I work on and how they grow over time. The applications end up hitting some milestones and end up needing similar functionality that compliments the core features. A small project ends up getting complex enough that it requires some unit tests. I’ll go to deploy the project and now I need some deployment scripts and analytics to ensure the application is running correctly. The technology may change between each project, but web applications always seem to have the same steps that need to be taken to strengthen the application as it is scaled up.

architectureprogrammingweb