Code Matters

Is Linux Growing Out of All Proportion?

October 13, 2021

The kernel source code isn't as big as you might think


Our Standard Stack Analogy Is Wrong

October 7, 2021

In search of a better stack metaphor


Is Code Review Always A Good Thing?

September 5, 2021

Not all changes are equally risky


Unit Testing Shell Scripts

July 16, 2021

(With the Test Anything Protocol)


Restoring The Missing B 5000 Manual

July 4, 2021

Shell programming to the rescue


Bash Function Names Can Be Almost Anything

June 20, 2021

Freedom > portability?


Search Man Pages With Apropos

June 13, 2021

How to find the docs you are looking for


Three Ways to Get a Unix Epoch in Bash

June 13, 2021

And the pros & cons of each


Modulinos In Bash

June 12, 2021

How to make a shell script behave like a library


The Trouble with Reference Counting

January 25, 2021

Is tracing garbage collection a realistic alternative for Perl?


Perl Closures As Objects

December 13, 2020

How lexical scope and anonymous functions can create powerful object systems


Inspecting Catalyst

November 11, 2019

What Routes Does Your Catalyst App Respond To?


Creating IP Address Tools From Scratch

September 19, 2019

Playing with IP addresses for fun


Find Relationships Quickly In Data With Chart::Plot

January 21, 2019

This lightweight module powers through data


Spidering websites with Headless Chrome and Selenium

January 13, 2019

How I Setup And Controlled Headless Chrome With Perl


Validating Untrusted Input: Numbers

December 3, 2018

Common techniques and edge cases


Patching Perl: Loading Modules That Return False

July 23, 2018


Writing New Testing Tools With Test2

June 12, 2018

Extending Perl's powerful new test framework


How Does Traceroute Work?

February 28, 2018

Identifying which routers process an IP request


Git Bisect And Perl

August 8, 2017

Bisecting Perl commits doesn't always work by itself


On Sigils

May 14, 2017

Should programming languages use them?


AWS Cloudfront Cache Invalidation With Paws

April 3, 2017

Another useful AWS script built with Paws


Deploy a Static Website With AWS S3 And Paws

February 21, 2017

Paws is a comprehensive Perl distribution for AWS services


Perl Module Names Are Filepaths - And That's All

December 14, 2016

Understand how Perl loads code


How To Build A Base Module

November 30, 2016

Establish consistency and reduce boilerplate across your project


Save Space With Bit Arrays

August 23, 2016

An old school data structure that efficiently stores data


Identify Slow Code With Devel::Timer

August 17, 2016

How timing statements can help you pinpoint bottlenecks


Building A UTF-8 Encoder In Perl

August 2, 2016

Learn UTF-8 by encoding it yourself


Untangling Perl's Subroutine Attributes

June 29, 2016

How they work and how to implement your own custom versions


How to parse binary data with Perl

April 18, 2016

Parsing Binary Data Is Easy With Unpack


An Introduction To Tmux

February 24, 2016

How to get started with the open source terminal multiplexer