The Archive — all posts
2026
Tennis tournament rankings are just binary numbersJul 20Don't trust AI (but use it)Jul 13The person inside the boxJul 7The foundations barely moveJun 27The question behind the questionJun 5Pointing Claude Code at a local modelMay 19Curiosity is expensiveMay 18You are not your labelApr 14Making Tailwind CSS classes semantic with @applyApr 7Peer Module ArchitectureApr 6The frequency underneathMar 28How PHP 8 attributes workMar 12Ship it anywayMar 9The merge conflictMar 6How I fixed an iPhone 6 cellular data failure using Claude CodeMar 2Your git repo is huge and you don't know whyFeb 27
2020
Setup TailwindCSS on Svelte & SnowpackNov 1Create, modify & manage Magento configurationAug 17Fix ConvertKit data corruption by migrating tags to custom fieldsAug 4Fixing images in Gatsby RSS FeedsJun 25The easy way to add Tailwind CSS to GatsbyMay 29Magento \"classic\" frontend vs. decoupled headless PWAMay 28Simplifying Magento Setup Data Patch Scripts with SimpleDataMay 26Semantic Versioning in Magento 2Apr 28Resolving 'upstream sent too big header' error for NginxJan 2
2019
The ergonomic workstation for programming and screencastingDec 28Updating the Magento Cloud metapackage with ComposerDec 20Fix Google Chrome slow or hanging resolving hostDec 17Unqualified and fully qualified name usage in codeDec 11Let Magento Kill YouOct 29Magento 2 models & entitiesOct 10Create Git patches for third-party Magento modulesAug 30Apply a Magento 2 patch from a GitHub pull requestAug 26Defining technical job titles & roles for web development agenciesMay 23Creating canonical URLs for specific pages with GatsbyApr 27Setup a Magento 2 Development Environment with DockerApr 27Real-Time SMS Order Notifications with Magento and TwilioApr 25Magic (Pass-Through) ViewModels for Magento 2Mar 13Create a product attribute data patch with Magento 2.3's declarative schemaFeb 19I'm an educator 👨🏫Feb 11Fix 5xx server validation errors in Google Search Console for GatsbyJan 31Bypass CSRF form validation for Magento POST submissionsJan 29Magento database resource model not persisting on saveJan 22Migrating my personal blog from Drupal to GatsbyJan 14Locally overriding or extending third-party Composer modulesJan 1
2018
2017
2016
The JavaScripter's guide to rational developmentAug 23Create and deploy a NodeJS Express app with DockerAug 14Creating a better reactive ReactJS JavaScript architectureAug 12Creating a multi-page form using MobX with Meteor & ReactJun 2Magento 2 speed, security permissions & dockerApr 21Creating a Custom Production Docker Image for Meteor 1.3Feb 1
2015
Deploy Magento 2 to Digital Ocean using TutumDec 21Setting Up Kubernetes Architecture on Google Cloud PlatformNov 23Creating a Meteor + React Hello World app with FlowRouterOct 23Create a customer address attribute in Magento with a custom installer scriptOct 21Using Docker Machine on OS X with DinghySep 3How to create a template block in Magento 2Aug 20Setting up your Magento 2 module the right way with Composer & PackagistJul 22Magento 2 Development with Docker on OS XJul 15Making a Keen.io Dashboard Real-time by Integrating it with Firebase & D3.jsMar 6Have a special Super Bowl with the Tessel and NFL's APIJan 20
2014
2013
Creating a Node.js server/client with Socket.IO & MySQLNov 7How to install OroCRM on MacMay 28My suggestion on setting up Magento's app/etc/local.xml file for dev/stage/prod environmentsMay 25My review of Instant Magento Performance Optimization How-To by Nayrolles MathieuMay 20How to setup a chroot'd SFTP account in LinuxApr 1Install ionCube loader on Mac OS XJan 18
2012
Why you shouldn't use the core diff feature of MageUpdateNov 2Deploying Magento on Heroku with Amazon RDSOct 29Create the checkout_cart_product_add_before observer in MagentoAug 27Better way to modify conditions in Magento template filesAug 8Creating Magento Adminhtml Grids, simplifiedJul 5Easiest way to install git flow on Mac OS XMay 2How to target CSS for different product typesMar 12Packaging a community extension for distribution on Magento ConnectFeb 27The golden master list of Magento performance enhancementsFeb 13There is absolutely no difference in Magento Community and Enterprise extensions / modulesFeb 1Removing htaccess files from Magento and moving contents into Apache configurationJan 11Creating custom layout files and variables in Magento blocks and templatesJan 9
2011
Useful script for working with remote branches in gitDec 28How to implement LESS CSS into MagentoDec 12The correct way to give clients permission and access to Jira projectsSep 23Syncing a Magento instance from production to developmentSep 8Controlling how static blocks are displayed in MagentoJun 29Adding trailing slashes to Magento for SEO purposesJun 20Using the new command line tool 'mage' replacement for pear in MagentoJun 20How the Magento control flow works when creating a moduleMar 23
2010
Creating a Drupal module from scratch and getting it published on drupal.orgDec 6How to setup Subversion (SVN) on a shared web hostSep 24First steps to fixing a non-functioning php mail() functionSep 20Webmin boot autostart bugfix for CentOSSep 2Create your own version of ChromeOS with UbuntuAug 31How to beat Slowloris HTTP DoS attacksJan 18