Writing
Introduction
Since 2007 I have been writing here — essays on design, code, philosophy, minimalism, Japan, and the life of the mind. A collection of essays on Ninja and Ninjutsu grew into a book. Medium featured one essay as their recommendation of the day. I also write Haiku.
Filter
2026
2025
- 15 Years at XING: Reflections and a Farewell
- OK, Boomer: A Post-War Psychoanalysis
- From Typewriter to Split Keyboard: How I Fell in Love with Typing
- The Modern Atlas Shrugged 3: The Strike
- The Modern Atlas Shrugged 2: The Looters in Action
- The Modern Atlas Shrugged 1: The Signs of Decline
- Fuck you, Sonos: Journey of Disappointment and Search for New Audio Solutions
- My 2025 Note-Taking System: Obsidian, Readwise, and AI
2024
2023
2022
- The Advent of AI 4: Getting Started with Text-to-Image Generation
- The Advent of AI 3: Text-to-Image Generation
- The Advent of AI 2: Text Generation
- The Advent of AI 1: Introduction
- The Return of the News Feed: The case for RSS in the age of algorithmic feeds
- Tools for Better Writing: The essential toolkit I rely on for clearer, cleaner, more effective writing
- Civil War for Truth 7: Conclusion
- Civil War for Truth 6: Science
- Civil War for Truth 5: Academia
- Civil War for Truth 4: Media and Journalism
- Civil War for Truth 3: Political Division
- Civil War for Truth 2: Corporatism and Technocracy
- Civil War for Truth 1: Introduction
- Manage References for Note-Taking: A sane system for finding and citing what you read
- iA Writer Template 2: Shibui
- iA Writer Template 1: Nanzan
- I Counted Everything I Own: Minimalism, measured
- Dreaming of the Old Normal: A portrait of normalcy, drawn from memory
2021
- Setting Up a Web Developer Work Environment: Neovim
- Setting Up a Web Developer Work Environment: Terminal, Zsh, and TMUX
- If— Guidance for a Virtuous, Stoic Life: A Modern Interpretation of Rudyard Kipling’s Great Poem
- How to Prepare for the Worst Case: Plan now, panic less later
- The Decentralized Web 3: Develop and Publish a Website
- The Decentralized Web 2: The Wild West Web
- The Decentralized Web 1: Why Do We Need It?
- Using Readwise with Obsidian for Note-Talking: Make your highlights work for you
- The Old Man on the Bench: A quiet friendship found on a forest path
- Learning Poems: Verse you can carry anywhere
- DEVONthink and Obsidian: The Perfect Pair of Tools for Note-Taking
- The Gods of the Copybook Headings: A Warning Against Loss of Virtue, Morality, and Reason
- How I Process Information Into Notes: Turn what you read into what you remember
- New Website 2021: Faster site, simpler stack, happier writer
2020
- Best of 2020: The year’s most compelling rabbit holes
- Tools I Use For Note-Taking: Notes built for connection, not clutter
- New Website 2020 – Development: How I engineered the stack, testing, theming, MDX, and deployment
- New Website 2020 – Design: Designing a personal site with constraints I actually wanted
- New Website 2020 – Inspiration: How Japanese aesthetics shaped my site
- New Website 2020: After 250 hours, a complete rebuild—design, code, and content
- Zettelkasten Note-Taking Method With DEVONthink: Build a Zettelkasten that lasts
- Apps, Tools & Services: My everyday apps, all in one place
- 101 Things You Can Do While Being on Lockdown: Learn, create, move, and explore—without leaving your living room
- Everyday Carry: What’s in my pockets (and why)
2018
2017
2016
2015
2014
- Introduction to Gulp.js 16: PostCSS
- Introduction to Gulp.js 15: Performance Improvements with WebP and Gzip
- Introduction to Gulp.js 14: Deploying the Website with Rsync
- Introduction to Gulp.js 13: Revisioning
- Introduction to Gulp.js 12: Optimize CSS, JavaScript, Images, and HTML
- Introduction to Gulp.js 11: Production Build, Server, and Jekyll
- Introduction to Gulp.js 10: Generating CSS Image Sprites
- Introduction to Gulp.js 9: Syntax-Check of SCSS and JavaScript
- Introduction to Gulp.js 8: Watch for Changes
- Introduction to Gulp.js 7: Base64 Encoded Images
- Introduction to Gulp.js 6: Images and Vector Fonts
- Introduction to Gulp.js 5: Bundling JavaScript with Browserify
- Introduction to Gulp.js 4: Creating CSS and Source Maps with Sass and Compass
- Introduction to Gulp.js 3: Build, Clean and Jekyll
- Introduction to Gulp.js 2: Setting up a Development Server with BrowserSync
- Introduction to Gulp.js 1: Setting up Gulp.js and Jekyll
- John Seymour’s Books on Self-Sufficiency: Self-sufficiency, beautifully explained
- Typography of My Website: Type first, everything else follows
- Design of My New Logo: From sketches to seal