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 5 series directly via the following links. Pestle, Four Steps to Async Iterators, Checking in on OpenMage and Magento in 2020, Text Encoding and Unicode, and, Shopware's Development Environment.


  1. Pestle 1.1.1 Released
  2. Pestle 1.1.2 Released
  3. Magento 2 Setup Migration Scripts
  4. Pestle 1.2.1 Released
  5. Sending Text Messages with PHP, pestle, and Nexmo
  6. Pestle 1.3 and AbstractModel UI Generation
  7. Pestle 1.4.1 and the Merits of Inheritance
  8. Pestle 1.4.4 Released
  9. Pestle Docs Done (for now)
  10. Pestle 1.4.2 Now Available
  11. Installing Pestle via. Homebrew
  12. Pestle 1.5.2 Released

Four Steps to Async Iterators

  1. ES6 Symbols
  2. Javascript Generators
  3. ES6's Many for Loops and Iterable Objects
  4. Async Generators and Async Iteration in Node.js

Checking in on OpenMage and Magento in 2020

  1. Checking in on OpenMage and Magento in 2020
  2. Composer Plugins and Installers
  3. Installing OpenMage: Bridging a Generational Gap

Text Encoding and Unicode

  1. Inspecting Bytes with Node.js Buffer Objects
  2. Unicode vs. UTF-8
  3. When Good Unicode Encoding Goes Bad
  4. PHP and Unicode

Shopware's Development Environment

  1. Composer Path Repositories
  2. Shopware's psh.phar Command Line Tool
  3. Shopware: Code that's theirs, Code that's yours
  4. Composer vs. History
  5. Wrap Up on "Shopware's Development Environment"

Distributing Software on Linux

This morning I converted what I think are the last of my self hosted commercial SSL certs to Let’s Encrypt certs via Certbot. I still have reservations about so many certs going through a single provider and, more generally, the value of HTTPS everywhere, but saving money on certs is suddenly more pressing as I stare down [...]


Composer vs. History

This entry is part 4 of 5 in the series Shopware's Development Environment. Earlier posts include Composer Path Repositories, Shopware's psh.phar Command Line Tool, and Shopware: Code that's theirs, Code that's yours. Later posts include Wrap Up on "Shopware's Development Environment". Composer has been a boon for anyone working with [...]


Composer Path Repositories

This entry is part 1 of 5 in the series Shopware's Development Environment. Later posts include Shopware's psh.phar Command Line Tool, Shopware: Code that's theirs, Code that's yours, Composer vs. History, and Wrap Up on "Shopware's Development Environment". By default, when you run $ composer require some/package Composer will ask [...]


Javascript Date String Parsing

One of my favorite features of PHP is the strtotime function. This function lets you pass in a date string and have a unix timestamp returned $time = strtotime('2021-04-01'); echo date('c',$time),"\n"; // outputs // 2021-04-01T00:00:00-07:00 What’s great about it is it works with a variety of date formats. $time = [...]


Shopware’s Technology

Some folks in my old Magento cohort have been spending time looking into the venerable open source Shopware ecommerce platform. I remember kicking Shopware’s tires a few years back and found the technology both comprehensive and — boring. Good for Shopware, but not ideal for someone who differentiates on technology. [...]


Email Servers: MTAs, MDAs, and MUAs

An older article from Ars Technia on running your own email server/service. I have a distinct memory of looking into how all this worked back in the late 90s or early 00s (the memory’s distinct, the timeline isn’t) and being stymied by the complexity as some old Times New Roman text and a grey background started talking about [...]


More PHP Unicode Resources

The main reason I stay on Twitter? I have a large enough follower count that useful information still comes at me, but not so large a follower count that it’s an overwhelming sh—tshow. Lists and judicious blocking also help. Two additional useful bits of information came my way on practical steps for dealing with Unicode in [...]


Security Researchers Notice Software Packages Typically don’t Have Canonical Names Across Private Repositories

It looks like security researchers have noticed that open source software package repositories are sort of bad at package name resolution, and that it’s relatively easy to slip a shady package into the public dependency chain when folks are publishing code in the open that references private packages. So that’s me checking [...]