I am Tony Narlock

This is my professional website. I’ve been a software developer for over 17 years. If you’re not in the field, what I do might not make much sense to you.

I work at tech startups, building web-based applications. On the frontend, I use React, TypeScript, and Relay (GraphQL), and on the backend, Python and Amazon Web Services.

In my spare time, I plan, develop, and maintain a suite of developer tools. For instance, tmuxp, which constructs tmux sessions from a JSON or YAML file. A few years ago, I also wrote a book about tmux, titled “The Tao of tmux”. Another tool I’ve created is cihai, based on Unicode’s UNIHAN dataset, which supports Chinese, Japanese, and Korean languages.

I actively contribute to open-source software projects. You can find me on GitHub, GitLab, CodersRank, and OpenHub.

My CV documents everything I’ve ever done - professional work, my projects, and open-source contributions (I’m a polyglot; there’s even some C++ in there).

What's going on in my life as a programmer

What am I busy with outside of work?

2025

October 2025

vcspull

vcspull: Major CLI modernization (#472) for familiarity, aligning with DevOps tool conventions:

  • Support for adding repositories add (single repo) and discover (filesystem scan)
  • Normalized -f/--file for repo files across all commands
  • Added introspection commands: list (view repos) and status (health checks)
  • Added --dry-run support with Terraform-style plans for preview-before-apply workflows
  • Added structured output (--json/--ndjson) for CI/CD automation
  • Added semantic colors with NO_COLOR support
  • Short flags: -w for workspace, -n for dry-run, -f for file

See release notes for v1.39.0, v1.39.1, and v1.40.0.

July 2025

tony.sh

tony.sh: Migrated the homepage from Sphinx to Astro.

hskflashcards.com

hskflashcards.com: Migrated from Gatsby to Astro.

February 2025

libtmux

libtmux: Support for context managers have landed in v0.44.0, enabling automatic cleanup of servers, sessions, windows, and panes in tmux.

See more

Publications

Language Projects

Unix-like Utilities

Web Projects

Featured content

Coding around the web

Porting (Linux-to-BSD)

#893

#136

#147

  • pyston - An open-source Python implementation using JIT techniques #1072, #1073,

#1085

  • libpypa - Python parser implemented in pure C++ #50

Scrapyard

Experimental code / patches that never made it upstream:

Project templates

Permissively licensed starter templates you can use to bootstrap your projects.

These are mostly outdated

Frontend
Cookiecutter

Presentations

Industry and Press

Code Exploration

Other

  • Leather - PSA on why leather is cool

Donate

Like my open source projects and learning resources? Your support is appreciated!

Emboldening virtue, the Junzi

  • To be a righteous person (君子 jūn zǐ), as opposed to (小人 xiăorén)

What makes a good gentleman-scholar in Confucius' eyes?

  • Be coherent: "How did we get here?", "How do these things connect?"
  • Tolerate ambiguity
  • Treat matters in proportion to the issue
  • Secure attachment