About

I'm, according to my job history, a software developer or a system administrator. Sometimes, I look at metrics and try to make them go down or up, depending on the context. Other times, I investigate and fix critical issues at the poorly documented edges of production systems. Occasionally, I reflect on what metrics we should try to make go up and down.

Interests

I have a variety of interests and, personally, am frequently surprised when I develop an interest in something (I could dig up some messages in the past where I told someone "I could never be interested in X", only to become interested in X several months and/or years later). Given this, the list below might expand with time.

As of this time, topics I might discuss on this website include (but are not limited to):

At a high level, the intersection of all these topics is something like "simple ideas with generality of application". Sometimes, however, the universe demands specificity, so the specific will also be featured.

Content Philosophy

Many websites can be read as something like "a sequence of posts about various topics". Although this blog may be something like that at times, I have seen the value in updating and/or maintaining posts across time. With that in mind, I aspire to update content on this website as my thinking evolves. At the very least, I will strive to remove errors, if they are discovered.

Tools

This is a (mostly up to date and partially curated) list of tools I use daily, partially categorized. Notably, I prefer to use as few tools as possible from day to day.

Programming Languages

JavaScript

I've spent a lot of time writing JavaScript code and, by number of lines written, is the programming language I am most familiar with. I generally use JavaScript for certain types of one-off scripts (particularly, those which significantly benefit from asynchronous work), certain types of relative simple back-end services, and, when needed, to work on the front-end.

Front-end libraries I am fairly familiar with include React and Vue. Other libraries I have found useful include Node-config, node-fetch, express, dayjs, and bottleneck.

Python

I generally use python for writing one-off scripts, back-end services, and any sort of "numerics" work.

Libraries I have found useful include flask, numpy, scipy, pandas, xarray, and matplotlib.

SQL

I have fairly extensive SQL experience (at some point, I thought relational databases were very cool). I've written SQL for production systems, to troubleshoot issues, and to analyze data.

With respect to SQL databases, I have direct experience with both MSSQL, and PostgreSQL. MSSQL licenses are exorbitantly expensive for production systems, and I have not been convinced of the merits of MSSQL over PostgreSQL. I also have some experience with Amazon Aurora.

Others

I have experience with quite a few other programming languages (C, C++, C#, Rust, and Java as some examples) but do not use them in my "day to day". I, generally, don't have strong language preferences, and will pick up a language if it is needed to solve a problem.

Software Development Tools and Frameworks

Astro

I use Astro for hosting this website, which allows me to embed interactive visualizations alongside static content.

Visual Studio Code

For an IDE, I use Visual Studio Code.

Vim

When connected to a remote machine, I generally use Vim.

I am not a particularly proficient vim user, but it's widely available so I don't need to install an editor before trying to make any changes to files.

Excalidraw

Excalidraw is my (currently) preferred tools for making diagrams. I didn't initially like the aesthetic, but it quickly grew on me. When working in excalidraw, I try to limit myself to a single field of view, reducing working memory demands.

WSL

When working on a windows machine, I prefer to use WSL over using a VM. I generally use Ubuntu as the operating system, but this is a relatively weak preference.

Web Applications

Windy.com

I, for better or for worse, live in a place where the weather isn't always friendly to pedestrians. Windy is my preferred weather application, primarily due to the relative ease of access for both radar and model data.

Mobile and Desktop Applications

Notepad

If on a windows machine (primarily at work), I will use notepad to take notes. I will also sometimes share my screen and use notepad as a place to take shared meeting notes.

Notes

I use apple's built-in notes application to takes notes (about various things) and organize information (such as errands and to-do lists) in my personal life.

Corrections and Feedback

If you discover a mistake on my blog, please let me know, and I will do my best to correct it.