Post Archive
-
2024-10-27 A Database Indexing Pitfall
-
2024-07-28 Test Driving Fossil
-
2024-05-26 An XML Deserializer
-
2024-05-25 Goofing Around with XML and Type Hints
-
2024-04-13 Debugging a Weird Python Slowdown
-
2024-03-12 CGI Programming in Go
-
2024-03-09 Minor Python Annoyances
-
2024-03-03 Client Certificate Authentication with HAProxy
-
2024-02-25 Simple Automatic Site Generation
-
2024-02-18 State of the Server
-
2024-02-04 Profiling Hare Performance
-
2024-01-25 journald for centralized logging
-
2023-07-15 Basic Auth with Python's xmlrpc.server
-
2023-07-08 Spooky Web Application Idea
-
2023-07-01 dataclasses and XML
-
2023-06-25 zipapps for fun
-
2023-03-18 Integration Testing in Python
-
2023-02-19 Who has ever heard of the track element?
-
2023-02-11 Accounting for Traffic
-
2023-01-10 A Neat Workflow for Testing Changes
-
2023-01-07 SQLite full-text search (and TCL)
-
2022-11-01 Diagramming
-
2022-09-03 Zero Downtime Upgrades
-
2022-08-07 Test Driving Groff
-
2022-07-30 First Thoughts on Hare
-
2022-07-23 SQLite Pagination
-
2022-05-14 systemd-nspawn and Btrfs
-
2022-04-23 HAProxy Routing Basics
-
2022-04-22 WireGuard, VPN
-
2022-04-20 Distributed Database Replication, In One Evening
-
2022-04-01 Kubernetes Authorization Server
-
2022-03-12 A Few systemd Niceties
-
2022-02-22 Further Isolation, systemd
-
2022-01-30 System Administration, Isolation
-
2022-01-02 A Taste of TCL
-
2021-11-26 Thinking About Another Static Site Generator
-
2021-10-02 Thinking About Formal Methods
-
2021-07-18 Bulk Data Generation in SQLite
-
2021-07-15 A Minor SQL Epiphany
-
2021-07-13 Ook! in Emacs Lisp
-
2021-06-19 Messing with SVG
-
2021-04-09 Strategic Communication to C
-
2021-04-01 Common Lisp Refactoring
-
2021-03-29 Full-Text Search
-
2021-03-28 Language Stemming
-
2021-03-22 CSS Tip of the Day
-
2021-03-21 Understanding Asteroids
-
2021-03-05 Debugging Emacs
-
2021-02-20 Bike Share Data
-
2021-02-15 Back to Org?
-
2021-01-24 A New SQLite Function
-
2021-01-13 Explaining a Patch
-
2020-12-18 sourcehut
-
2020-11-28 Topological Sorting
-
2020-11-27 Revamping Local System Monitoring
-
2020-10-31 Slack Bugs
-
2020-10-17 More SQL Prototypes
-
2020-09-16 Leibniz Formula for π
-
2020-08-27 More Firefox Bugs, Android
-
2020-08-14 A Neat Nginx Configuration
-
2020-07-22 Guessing Hangman
-
2020-07-08 Tools, Complaints
-
2020-06-06 J Plotting Notes
-
2020-06-05 J as a CLI Calculator
-
2020-05-19 Bugs: Firefox
-
2020-05-14 Why Bother With Markdown?
-
2020-05-03 Simplifying This Site
-
2020-04-19 The Forest and the Trees
-
2020-04-18 Ray Tracing in J
-
2020-04-02 Auto Formatters, a Retrospective
-
2020-03-30 Yak Shaving and Data Munging (with J)
-
2020-03-25 Calculating the Day of Week Using Zeller's Congruence
-
2019-12-07 Nearest Neighbor Using K-D Trees
-
2019-11-16 Server Maintenance
-
2019-10-26 Advent of Code, Day Five
-
2019-09-01 K-Means Clustering in Klong
-
2019-08-08 Refactoring Klong
-
2019-08-04 Finding Contours
-
2019-07-21 Christmas in July
-
2019-06-26 Sierpinski Triangle in Klong
-
2019-06-22 Conway and Klong
-
2019-06-15 Postgres Deadlocks
-
2019-05-30 More Pictures in Racket
-
2019-05-25 Pictures in Racket
-
2019-03-09 Plotting Wizardry
-
2019-01-12 An Especially Annoying Python Bug
-
2018-12-16 OpenBSD, Up and Running
-
2018-12-10 Advent of Code, Day Two
-
2018-12-01 Advent of Code, Day One
-
2018-10-27 Colemak Attack
-
2018-10-13 Monty Hall in Common Lisp
-
2018-10-06 Twisted's Klein
-
2018-09-18 SQL Prototypes
-
2018-07-04 A Different Kind of Optimization
-
2018-06-30 Your Test Framework is Making Things Worse
-
2018-06-29 ORM Annoyances
-
2018-05-04 Configuring fail2ban
-
2018-04-21 A Bit Like Code Golf, With gnuplot
-
2018-04-18 Optimizing SQL
-
2018-02-10 Syntax Soup
-
2018-01-28 Visualizing Monitoring Metrics
-
2018-01-21 Reusable Software Components
-
2017-12-08 Quiescent
-
2017-11-09 Selenium Testing and Reproducible Environments
-
2017-09-25 Belated Spring Cleaning, Servers
-
2017-08-11 Formatting Python
-
2017-07-28 Poor Man's System Monitoring
-
2017-06-04 Code Review Metrics
-
2017-05-14 Text Search on a Static Blog
-
2017-03-19 Little Languages
-
2017-03-12 Extricating Calendaring From Outlook
-
2017-02-25 A Return To Basics
-
2017-01-07 Optimizing Static Site Generation
-
2016-12-07 Profiling Python
-
2016-12-04 Reading Comprehension and Color
-
2016-10-22 Wrangling Linting Tools
-
2016-09-25 Implementing a Simple Message Protocol
-
2016-09-13 A Brainfuck Interpreter in Forth
-
2016-09-06 Everything is an Object
-
2016-08-25 Forth, Data Modeling, Databases
-
2016-08-16 In the Weeds
-
2016-08-05 Linear Congruence Generator (in Forth)
-
2016-07-20 Static Site Generators
-
2016-07-13 A Microcosm of Project Management
-
2016-06-21 Manual Schema Migrations
-
2016-05-17 Space City JS
-
2016-05-06 ab Testing
-
2016-04-20 Image Capturing the 100 Most Popular Websites
-
2016-04-15 RIP Tiny Server
-
2016-03-24 Result: Scraped Color Palettes
-
2016-03-24 Scraping Color Palettes
-
2016-03-23 Trends in Web Design
-
2016-03-22 HTML5 Canvas: Images
-
2016-03-20 Simple, Unique CSS
-
2016-03-18 Top Web Servers
-
2016-02-29 Home Server
-
2016-02-23 Monitoring Spam Activity
-
2016-02-15 Increased Traffic, Yeah Right
-
2016-01-14 Fast Might Not Be Better
-
2015-11-24 Experimenting with HTML5: Canvas
-
2015-11-13 Browsers in 2015
-
2015-08-02 Yak Shaving
-
2015-04-23 Text Hackery with Sed
-
2015-03-24 Layers, like an Onion
-
2015-03-11 RFC 791, Internet Protocol
-
2015-03-02 Flakey Network Managers and Powershell
-
2015-02-18 Up and Running with Nginx
-
2015-01-30 Snippets and Stack Traces
-
2015-01-08 Book Review, Flask Web Development
-
2014-12-22 Rethinking Test Case Management