I've been pretty consistently inconsistently posting on this blog in one way or another for the last 11 years (probably more, but my memory is as good as my backups). Some of it is pretty good, some less so, but I hope that overall it shows some growth.
If you like what I've written, I'd love to hear from you. If you don't, I'd still love to hear from you, because I like writing, and would like to continue to get better at it. Either way, I hope you get some value out of some of what I've posted over the years.
I know I have.
2024
- Hello, Is It Me You're Looking For?
- Duplicating a Database Record in Laravel
:: hackernoon - I Just Quit My Job to Become a Teacher
- My Journey into Computing
:: medium - Batteries Redux
- Back to Basics
- Default Apps — June 2024
- You Are Not Your Impostor Syndrome
:: medium - 15 Pieces of Advice That Will Make You a Better Leader
:: medium - Stop Second-Screening at Work
:: medium - Shameless
- The Great Outdoors
- Doggone It
- Batteries Not Included
- To Newsletter, or Not to Newsletter
- Push Off
- Turn of the Century
- Splitting Personalities
- LepreCAUGHT!
- Buy Me a Coffee... or Don't
- Batten Down the Hatches
- Spring Forward
- Saved by the Extended Warranty
- Cylinder 3 Misfire Detected
- "For," Not "To"
- Eloquent Interactions Redux
- Pulse Check — February 19, 2024
- Repositories Are at the Center of Development and Production
:: sweetcode - Working with Serverless Log Data
:: sweetcode - How I Read
- Sunday Reboot — January 28, 2024
- How Cloud9 Kept Me on Track after a Hardware Failure
:: sweetcode - CI/CD/CV: Emphasizing Continuous Visibility
:: sweetcode - Post-Mortem Incident Report Do's and Don'ts
:: sweetcode - Sunday Reboot — January 21, 2024
- How to Dockerize EnvyMUD
:: the mud coders guild - The Old Web Is a Slowly Decaying Corpse
- Stop Trying to Sell Me Shit
- Authentically Speaking
- Sun...Monday Reboot — January 15, 2024
- Four, Oh, Four...
- Sunday Reboot — January 7, 2024
- AlphaSmart 3000
- Return to The Gopherverse
- Sun...Monday Reboot — New Year Edition
2023
- A Polyglot Hello World Has Appeared!
- Adopt-a-Nerd
- Sunday Reboot — December 24, 2023
- Portable Ergonomics
- Work-Life Imbalance
- Let's Get Digital
- Sunday Reboot — December 17, 2023
- Sunday Reboot — December 10, 2023
- Sunday Reboot — November 26, 2023
- Automation for Automation's Sake
- Over-Engineering a #100DaysToOffload Counter in Jekyll
- Jekyll Is Good Enough
- Default Apps
- 100 Days to Offload: Part Deux
- Screen Time Is for Chumps
- Happy Halloween from 1998
- Will It Render?
- README.ZACH
- Self-Care Happens Offline
- Common CWE Finds: Reachable Assertion
:: mayhem - Artificial Poetry
- Goodbye, Gopher
- YA'22R (Yet Another 2022 Retrospective)
2022
- There's No Reason to Pirate Music Anymore
- Chasing Imperfection
- Thanks Be Unto...
- My Writing Laptop is 15 Years Old
- The Satisfaction of Fixing the Broken
- Merit Badges for Grownups
- You Should Probably Go Donate Blood
- My Grandfather Still Gets Typewritten Mail
- Things I Forgot to Bring to KubeCon
- Breathing into Discomfort
- On Buying Used Books
- Keep Calm and Comic Con
- Balancing Parenthood and Startup Life
- My Favorite Coding Interview Exercise
- How To Completely Disable Your Favicon
- Long Live ASCII Art
- Rediscovering Discovery on the Web
- Embracing Offline-First Technology
- What's on Your Open Source Bucket List?
- A Few Heroku Alternatives
- Adding Custom Global Arguments to Artisan Commands
- I Hate My Smartphone
- Obsolescence Is a State of Mind
- The Joy of Single-Purpose Tech
- How To Build an Absurdly Backwards Compatible Website
- 100 Days to Offload
- I Don't (Care Enough To) Track You
- 35 Lessons Learned in 35 Years
- WTF is a Postmortem?
- 2021: The Retrospective
2021
- Hello Darkness, My Old Friend
- From the Kitchen of...
- Enter The Gopherverse
- New Job, Who Dis?
- Searching for Kid-Friendly Searching
- This Post Was Written by GitHub Copilot
- Take the Scenic Route
- Life Is Too Short to Waste Time
- 5 Simple Things I Do Every Morning to Sabotage My Day
- What Our Children Deserve
2020
- Get a Typewriter. Write a Friend.
- 5 Git Aliases I Can't Live Without
- Fix Spaghetti Code and Other Pasta-Theory Antipatterns
:: techtarget - An Introduction to Vagrant Aliases
- 4 Tired Developer Debates That Need to Just Die Already
- Write Clean PHP Code (or "else")
- Lazy, Stupid, and Mean: The Art of Writing Defensive Documentation
- Establishing a Documentation Strategy: A Practical Template
- Writing a Damn Good README File
- Host Your Own Internet Radio Station
- # Always Be Commenting
2019
- Never Install a Thing Again (Except Docker)
- Putting the "Code" in Configuration Management
:: automox - The Life and Times of Configuration Management: A Brief History
:: automox
2018
- Soft(there): Dealing With Deprecations
:: automox - Soft(where): Where Does Software Come From?
:: automox - Trust, but Verify
:: automox - The Ins-and-Outs of Package Management
:: automox - The Linux (R)evolution
:: automox - Apple, Updates, and You
:: automox - Everything You Ever Wanted to Know About Microsoft Windows Updates
:: automox - Introducing Eloquent Interactions: A Command Pattern Implementation for Laravel
2017
- Magento on Vagrant: Lessons Learned
- Beyond the Ban: Creatively Enforcing Rules Without Losing Players
:: the mud coders guild - (Updated) Speeding Up the Craft CMS Admin Dashboard
2016
- Why We Review
- Good Code Is Subjective, Documentation Is Not
- Incident Management and Continuous Integration, a Partnership for Success
:: pagerduty - Messing with the GitHub Contribution Graph
- MIME Type Validation Sucks
- Connecting to a PostgreSQL Database in Vagrant with PSequel
- The Rise and Fall of the Free Lance
- Convenience Is Making Me Lazy and Poor
- Setting Up CloudFlare SSL for Laravel on Heroku
- How (and why) to Perform a Project Audit
- I'm Not a Writer, and so Can You!
2015
- What is Full Stack Deployment?
:: sumologic - Leveraging AWS Spot Instances for Continuous Integration
:: sumologic - API Design: A Documentation-first Approach
:: dzone - Why Vagrant is the Best Developer Environment
:: dzone
2014
- How to Force Installation of Vagrant Plugins
- Running CodeIgniter Controllers in the Command Line
- PHP Binary Search Tree Implementation
- PHP Queue and Stack Implementations
- Quickly Determine If Two Strings Are Anagrams in PHP
- A Linked List Implementation in PHP