14 January 2024

49 links · Sunday

Do Repeat Yourself

One of the first things we teach aspiring software engineers is the principle Don't Repeat Yourself. While this is a very useful rule of thumb, it doesn't apply in every case. In this post we will discuss when it does not.

HOWTO: Change your behavior

For the purposes of this article, it’s important to distinguish between the short term and the long term when it comes to behavior.

WebSockets for dummies | The Sloth Blog

A simple write up on what is WebSocket protocol and how does it work. WebSocket protocol enables two way real-time communication between a client and a server over a TCP connection. One well known example where WebSockets are beneficial is a chat applications.…

When am I

There comes a point at which continuing with your startup is just falling prey to the sunk cost fallacy. That point is about 4 years in.

Code Reviews

Let me tell you a story. I worked with a client in the early days of my career. It was a social media sentiment analysis platform when Twitter was still

Between Art and Algorithms

I was more of a humanities person in high school. Didn’t do great in math and informatics, loved history and philosophy. So most people were surprised when I…

Chat is poor UX for most users.

Large Language Models (LLMs) like ChatGPT have rapidly become commonplace tools. They’re the most transparent AI application I can think of, users know they’re interacting with an AI. Despite that, I see chat as a complex and difficult user experience for most…

Mason Secky-Koebel

Mason Secky-Koebel's website

Unfork with ArgoCD

Post provides strategies for customizing third-party software in Kubernetes without maintaining a fork, focusing on ArgoCD integration and management techniques

Time is Limited

It's sad to accept it, but time is limited.

Compressing Text into Images

(This is, I think, a silly idea. But sometimes the silliest things lead to unexpected results.) The text of Shakespeare's Romeo and Juliet is about 146,000 characters long. Thanks to the English language, each character can be represented by a single byte. So …

The Slow Frontier of Genetic Choice

Neither you nor I have consented to the genes we inherited. Our general makeup was dictated to us. I had no say whatever in my allergies, my short stature, my baldness, my tone deafness, nor in my general optimistic bent, … Continue reading →

A Beautifully Productive Terminal Experience

I highlight the benefits of using the command line for developers and suggest a combination of iTerm 2, Zsh, Prezto, Tmux, and Tmuxinator for a productive setup. I also discuss the features and advantages of each tool, as well as how they can be combined to im…

ArchiveBox is Super Cool

Have you ever used archive.org’s Internet Wayback Machine? It’s a free tool that’s been archiving the web since 1996. So, if you want to see what Google looked like in 1999, they’ve got it. Internet Archive capture of Google from April 22, 1999 Arc…

Listening with LLM

Overview This is the first part of many posts I am writing to consolidate learnings on how to finetune Large Language Models (LLMs) to process audio, with the eventual goal of being able to build and host a LLM able to describe human voices.

LukeW | The More Features You Add...

As Dave Fore once said: "features are the currency of software development and marketing." Spend time in any software company and you'll begin to echo that sent...

A Cloudflare Workers primer: hello world

The vast majority of my software development experience has been centered around client-side software. The few times I've needed a server-side component for a hobby project, I've historically provisioned a linux virtual machine somewhere and ran whatever servi…