Recent Posts


Category: Programming Quickies

Back in they day, I ran a Tumblr blog named Magento Quickies where I’d post shorter, less in-depth posts about my travels through Magento’s source code. This Programming Quickies categories is the successor to that Tumblr blog. You’ll find all the old Magento Quickies content here, as well as new short posts about programming in general.

This section has its own RSS feed, the old Magento Quickies feed should should be redirecting, and we’re cross posting notifications for new posts over to In other words, you shouldn’t need to know any of this, but the duct tape that keeps the internet held together isn’t aging well, so your mileage may vary.

Below you'll find all the Programming Quickies articles on the site, followed by a chronological listing of the same. You may also browse the 4 series directly via the following links. Pestle, Four Steps to Async Iterators, Checking in on OpenMage and Magento in 2020, and, Text Encoding and Unicode.

Pestle 1.5.3 Released

A small bug fix release for everyone’s my favorite Magento 2 code generation tool and ad-hoc PHP module system. This fixes a small bug in the magento2:generate:schema-add-column command that only triggered when using pestle’s interactive mode. This bug, although small, was interesting to the software builder in me for a a few [...]


Pulse Storm Site Refreshed

After over a decade on the 2010 version of Square Space I decided it was time to migrate my company’s tiny little website over to the new version of Square Space — the hegemony of black text on a white background comes for us all. Hats off to Square Space for keeping the old platform around for for commoditizing the bespoke [...]


Good Old PHP

After three years at the day job I’ve been granted access to a physical escape key. I prefer a “build everything back by hand” approach to setting up a new laptop, and this includes pulling over two locally run PHP applications I use to automate my job. One’s a WordPress P2 instance I use to log my daily work, the [...]


Javascript Generators

This entry is part 2 of 4 in the series Four Steps to Async Iterators. Earlier posts include ES6 Symbols. Later posts include ES6's Many for Loops and Iterable Objects, and Async Generators and Async Iteration in Node.js. Generators are weird. They make programs behave in ways that are non-obvious. This weirdness easily turns into [...]


ES6 Symbols

This entry is part 1 of 4 in the series Four Steps to Async Iterators. Later posts include Javascript Generators, ES6's Many for Loops and Iterable Objects, and Async Generators and Async Iteration in Node.js. One pattern that keeps coming up when I’m spelunking older NPM packages for Node.js is using Symbols to define properties [...]


NPM’s Dependency Model

I’m coming up on about a year of full-time NodeJS work, and it’s only now that I’m starting to understand the true nature of NPM’s dependency management. When I’ve used other systems, (primarily composer), “management” of those dependencies meant your package manager will yell as you if [...]


How does Deno Use Rust

Reddit is not my natural enviornment, but I occasionally hover around its various programming communities. This is a personal archive of an answer to a question about the Deno, the new “run javascript on your own computer” project. I’m far from an expert in all the real details here, but I’ll give this a go. Deno [...]


Async/Await and Recursion

So here’s a “fun” side effect of async/await in NodeJS. I had a bug. It seemed like it might be run away recursion bug. NodeJS doesn’t let you set an explicit recursion depth limit, but it does limit the size of your call stack. So how could there be a recursion bug without Node throwing up errors and/or crashing [...]


@grpc/grpc-js Goes 1.0

A quick note to congratulate anyone working on the @grpc/grpc-js project for their 1.0 last month. There’s been a C++ native module of GRPC around for awhile now, but @grpc/grpc-js a pure TypeScript (that compiles to pretty clean javascript) implementation, and we’ve found That it’s mostly a drop in replacement for grpc [...]


TypeScript won’t Save us

A few weeks ago I started working with gRPC for the first time. These days gRPC stands for “general-purpose remote procedure call”, but I still think of it as “Google remote procedure call”, as it’s a project that came out of, and is primarily maintained, by Google engineers. It’s a system for building [...]