# Tools


# 🔧 Tools I Use

These are the tools that I use everyday to write code and do fun stuff on the
internet. This is not necessarily an endorsement of these tools, but this is
what works well for me.

_Note: **None** of the links on this page are affiliate links._

See also:
[How I Use AI (in Early 2025)](/blog/2025/02/02/How-I-Use-AI-Early-2025/).

### 🖥 Hardware

-   💻 Laptop: [MacBook Air (M2, 2022)](https://support.apple.com/en-us/111867/)
-   🖥 Desktop:
    [Mac mini (M1, 2020)](https://support.apple.com/kb/SP823?locale=en_US)
-   🖱 Mouse:
    [Anker Ergonomic Vertical USB Wired Mouse](https://www.amazon.com/Anker-Ergonomic-Optical-Vertical-Buttons/dp/B00FPAVUHC)
-   ⌨ Keyboard:
    [Kinesis Freestyle Pro](https://kinesis-ergo.com/shop/freestyle-pro/) (with
    Cherry MX Red switches)
-   🎧 Headphones:
    -   [Airpods Pro 2](https://www.apple.com/airpods-pro/) - For use while
        on-the-go, running, or doing work around the house. Superb noise
        canceling.
    -   [Sony MDR-7506](https://pro.sony/ue_US/products/headphones/mdr-7506) -
        Workhorse headphones. Great for listening to music, or to use in music
        production.
        -   If you own/buy these, do yourself a favor and buy a set of
            aftermarket
            [foam pads](https://www.amazon.com/gp/product/B07FSPF3YV). The stock
            ear cups are quite uncomfortable, in my experience.
    -   [Sennheiser HD 6XX](https://drop.com/buy/massdrop-sennheiser-hd6xx) -
        Open-backed headphones for deliberately listening to music.
    -   _DAC/AMP:_ JDS [Atom AMP+](https://jdslabs.com/product/atom-amp/) and
        [Atom DAC+](https://jdslabs.com/product/atom-dac-plus/)
        -   I'm still a newbie audiophile, but these sound real good with my
            Sennheiser HX 6XX's. Superb clarity.
-   🖊 Pens
    -   Pentel EnerGel Needle Tip 0.3
    -   [Pilot G2 O7](http://pilotpen.us/categories/gel-ink-pens/g2/)
    -   [Pilot Juice Up 0.4](https://www.amazon.com/Pilot-juice-Retractable-Ultra-LJP-20S4/dp/B06Y3XY1TP)
    -   [Sakura Sigma Micron Black 03](https://sakuraofamerica.com/pen-archival)
-   📓 Notebooks:
    -   Daily Todos, Brainstorming, Ephemera:
        [Leuchtturm1917 A6 Hardcover Dotted Notebook](https://www.leuchtturm1917.us/notebook-pocket-a6-hardcover-185-numbered-pages-3-1-2-x-6-in.html)
    -   Longer term notes:
        [Leuchtturm1917 A5 Hardcover Dotted Notebook](https://www.leuchtturm1917.us/notebooks/all-formats/medium-a5/)

<!--
-   💻 Laptop (Semi-retired):
    [MacBook Pro (Retina, 13-inch, Early 2015)](https://support.apple.com/kb/sp715)
 -->

<!-- -   [Sennheiser HD 598 CS](https://en-us.sennheiser.com/headphone-around-ear-home-mobile-hd-598-cs) -
For use while working, and on airplanes. Very comfortable, great sound
quality, and they have an inline microphone, which is useful for video
calls. -->

### 👨‍💻 Development

-   [Claude Code](https://www.anthropic.com/claude-code) - My favorite
    in-terminal AI coding agent.
-   [Cursor](https://www.cursor.com/) - My go-to editor for most things.
-   [VSCode](https://code.visualstudio.com/) - Prior to Cursor, I used VSCode
    for ~everything. I still use it on occasion. I'm not a power user of it, but
    I think it has one of the better ecosystems of editor plugins of current
    GUI-based editors.
    -   [Boxy Theme Kit](https://marketplace.visualstudio.com/items?itemName=trongthanh.theme-boxythemekit) -
        Boxy Solarized Dark is my VSCode theme of choice.
    -   [JSON Tools](https://marketplace.visualstudio.com/items?itemName=eriklynd.json-tools) -
        Useful for pretty-formatting JSON.
    -   [Paste URL](https://marketplace.visualstudio.com/items?itemName=kukushi.pasteurl) -
        A simple extension for pasting URLs into Markdown documents.
        Automatically pulls the link's title, and formats it as `[title](url)`.
    -   [Auto Close Tag](https://marketplace.visualstudio.com/items?itemName=formulahendry.auto-close-tag) -
        Automatically adds closing HTML tags.
-   vim - When I'm not using VSCode/Cursor, I'm using vim.
    -   You can find my vim config [here](https://github.com/bcongdon/dotvim).
        I've also been keeping [notes](/vim) on my vim learnings.

<!-- -   [SourceTree](https://www.sourcetreeapp.com/) - This is a bit controversial,
    but I like having a GUI client for git. Not for everything (most in-depth
    git operations will still require dropping down into the CLI), but
    SourceTree allows me to minimize the number of common git mistakes that get
    made. Seeing graphically staged changes is a big deal for me, and SourceTree
    allows you to stage specific lines of a file much easier than the git CLI. -->

### ⌨ Terminal

-   [iTerm2](https://www.iterm2.com/) - Much more customizable than
    Terminal.app. Has better theming support, and a bunch of other functionality
    that I don't really use.
    -   [Source Code Pro Light](https://github.com/adobe-fonts/source-code-pro)
        Font - Super readable, and I like the aesthetic.
    -   I use either the builtin _Solarized Dark_ color scheme, or _Solarized
        Dark High Contrast_ (found [here](https://iterm2colorschemes.com/)).
    -   I highly recommend using the "Natural Text Editing" key presets, so you
        can use the normal macOS text navigation movements in iTerm. (Can be
        enabled with "Preferences -> Profiles -> Keys -> Key Mappings -> Presets
        -> Natural Text Editing")
-   [oh-my-zsh](https://github.com/robbyrussell/oh-my-zsh) - I'm not a hardcore
    ZSH user, but `oh-my-zsh` is really awesome. This shell gives you tons of
    productivity wins: git status in the prompt, super great auto-completion and
    history searching. Seriously, it's worth a try. I was skeptical of leaving
    bash, but it's really been worth the switch.
    -   [agnoster](https://github.com/robbyrussell/oh-my-zsh/wiki/themes#agnoster)
        theme - Agnoster is a great theme for zsh. I've been told it's a 'newb'
        theme by a more experienced user of zsh, but I really like it. It's a
        bit flashy, but that's what makes it fun.
-   [fzf](https://github.com/junegunn/fzf) - "fzf" is a fast fuzzy file finder.
    Works great in vim, on the CLI, and for searching shell history.
-   [zoxide](https://github.com/ajeetdsouza/zoxide) - zoxide is super useful for
    jumping between frequently used directories. Integrates well with "fzf".
    -   See also, the original ["z"](https://github.com/rupa/z)

### 📱 Services/Apps

-   [Overcast](https://overcast.fm/) - My preferred [podcast](/podcasts) player.
-   [Strava](https://www.strava.com/) - For tracking runs, hikes, and cycling.
-   [Runna](https://runna.com/) - For running training plans.
-   [Elevenreader](https://elevenreader.io/) - A great app for having articles
    read to you.
-   [Libby](https://libbyapp.com) - A slick app for renting ebooks and
    audiobooks from our local library.
    -   Here's [what I've been reading](/books).
-   [YNAB](https://www.youneedabudget.com/) - For budgeting.
-   [Tailscale](https://tailscale.com/) - "Zero config VPN." Makes it trivial to
    setup a personal VPN between various networks. I use it to connect to my
    home network when on-the-go.
-   [BookPlayer](https://github.com/TortugaPower/BookPlayer) - An open source
    audiobook player for iOS.

#### 🖥 Self-Hosted Services

-   [Miniflux](https://miniflux.app/) - An excellent minimalist RSS reader.
    -   Here's a [curated list](/blogroll) of blogs I subscribe to.
-   [Podsync](https://github.com/mxpv/podsync) - Tool for creating Podcast Feeds
    (RSS) from a Youtube channel. Useful for listening to tech talks on-the-go.

<!--
-   [Node-RED](https://nodered.org/) - Automation platform, similar to IFTTT.
    Has a large community plugin ecosystem.
-->

#### ☑️ Productivity

-   [Todoist](https://todoist.com/) - Todoist is my favorite todo application.
    It suits my needs very well: it's cross platform, has an open API, supports
    complex repeated tasks (i.e. "repeat every third Sunday of the month"), and
    has a pleasing design aesthetic. I pay for Todoist premium, and it's one of
    the few services that I feel delighted when my yearly subscription renews.
-   [Taskwarrior](https://taskwarrior.org/) - A simple, 100% local & offline,
    open-source task manager tool that lives in the CLI. This is what I use for
    tracking tasks at work.
    -   I wrote more about my usage of Taskwarrior
        [here](/blog/2024/08/31/TaskWarrior/).
-   [Obsidian](https://obsidian.md) - Personal knowledge management tool, with
    `[[wikilink]]` support.
    -   I wrote more about my usage of Obsidian
        [here](/blog/2021/01/12/My-Organization-Stack/#obsidian).
-   [Day One](https://dayoneapp.com/) - An excellent journaling app for Apple
    platforms (macOS, iOS).
    -   I wrote more about my usage of Day One
        [here](/blog/2021/01/12/My-Organization-Stack/#dayone).
-   [Raycast](https://www.raycast.com/) - A customizable Spotlight replacement
    for macOS.
-   [AnyList](https://www.anylist.com/) - My app-of-choice for making grocery
    lists. It keeps a history of items you've purchased in the past, supports
    list sharing, and has power-user features like associating items with a
    particular store.
-   [Drafts](https://getdrafts.com/) - I use Drafts as a medium-persistency
    notes app (similar to iOS's default Notes.app). It syncs consistently
    between macOS and iOS, supports Markdown formatting, and has a ton of
    power-user features like tagging, scripting, filters, customizable tool
    palettes, and Shortcuts integration.

### 🌐 Chrome Extensions

-   [Vimium](https://vimium.github.io/) - Vim keybindings for navigation and
    scrolling in Chrome.
-   [TamperMonkey](https://www.tampermonkey.net/) - User scripts for Chrome.
-   [DarkReader](https://darkreader.org/) - Automatic dark mode for all
    websites. (Works ~pretty well)
-   [Strict Workflow](https://chrome.google.com/webstore/detail/strict-workflow/cgmnfnmlficgeijcalkgnnkigkefkbhd?hl=en) -
    A pomodoro timer that has the added benefit of blocking distracting sites
    while you're in "work mode"
-   [Privacy Badger](https://chrome.google.com/webstore/detail/privacy-badger/pkehgijcmpdhfbdbbnkijodmdjhbjlgp) -
    Blocks tracking cookies and embeds. Created by the
    [EFF](https://www.eff.org/).
-   [Copy as Markdown](https://chrome.google.com/webstore/detail/copy-as-markdown/fkeaekngjflipcockcnpobkpbbfbhmdn) -
    Simple utility to copy links as `[markdown](links)`.
-   [Distill Web Monitor](https://chrome.google.com/webstore/detail/distill-web-monitor/inlikjemeeknofckkjolnjbpehgadgge?hl=en) -
    A useful extension for getting notified when a webpage changes.

### 🛠 Utilities

-   [Rectangle](https://rectangleapp.com/) - A great window resizing/tiling
    utility app for macOS.
    -   (RIP [Spectacle](https://www.spectacleapp.com/))
-   [Raycast](https://www.raycast.com/) - My preferred Spotlight replacement.
-   [grip](https://github.com/joeyespo/grip) - Grip allows you to preview Github
    speeds up the process of writing Github READMEs.
-   [stats](https://github.com/exelban/stats) - macOS system monitor menu bar
    utility.
-   [codemod](https://github.com/facebook/codemod) - Straight-forward tool for
    performing large-scale find-and-replace refactors on code.
    -   [fastmod](https://github.com/facebookincubator/fastmod) - A rewrite of
        `codemod` in Rust that's much faster. Great for very large codebases!

<!--
-   [SwiftBar](https://github.com/swiftbar/SwiftBar) (Previously
    [Bitbar](https://github.com/matryer/bitbar)) - A super flexible menubar tool
    for macOS that allows you to turn any script into a menubar program.
    -   I maintain a [repo](https://github.com/bcongdon/bitbar-plugins) of
        personal plugins.
-   [mojibar](https://github.com/muan/mojibar) - I use this all the time.
    Mojibar lets you search for emojis with a keystroke. An essential tool for
    communicating pictographically in the modern internet. 😝
-   [SensibleSideButtons](http://sensible-side-buttons.archagon.net/) - I use an
    Anker ergonomic mouse, which has side buttons. By default, macOS ignore
    these buttons. SensibleSideButtons allows these buttons to be used as
    forward/backward buttons in browsers.
-   [f.lux](https://justgetflux.com/) - Eye strain can be a real headache. I've
    found that "screen-yellowing" after sunset cuts down on the worst of eye
    strain. I don't use f.lux so much anymore - I've found that Night Shift is
    just as good, and is supported natively on macOS. I still do use f.lux on
    Windows and Linux.
 -->

### Single Serving Websites

-   [Kill the Newsletter!](https://www.kill-the-newsletter.com/) - Converts
    email newsletters to RSS feeds.
-   [rewind.website](https://rewind.website/) (a.k.a. "Cast Rewinder") - Allows
    you to listen to podcasts "from the beginning" by rehosting an RSS feed that
    emits olds episodes on a schedule.
-   [PolitePol](https://politepol.com/en/) - Creates RSS feeds from websites
    that don't publish feeds.

### 💽 Databases

-   [Sequel Pro](https://www.sequelpro.com/) - Sequel Pro is a great GUI
    interface for MySQL. It allows you to create and modify tables, query
    tables, edit and create rows, everything you'd need to bootstrap a database
    setup. Two thumbs up. 👍👍
-   [Postico](https://eggerapps.at/postico/) - Postico is pretty much at
    feature-parity with Sequal Pro, but for PostgreSQL.

---

(Updated )

