cat README.md
/
# Ryan Gerard Wilson

I’m Ryan: Catholic, husband to beautiful wife, and builder.

I build terminal-native tools, AI product systems, and interfaces for people
who are tired of browser sludge.

## Resume

- `/resume.pdf`

## Links

- GitHub: `https://github.com/ryangerardwilson`
- Notes: `https://notes.ryangerardwilson.com/`
- X: `https://x.com/ryan_improvises`

## What I Actually Build Against

I keep running into the same kinds of software pain:

- browser tabs turn simple work into tab-sprawl, login state, cookie junk, and
  interface chrome that fights the task
- operator workflows get buried under dashboards, forms, and undocumented
  rituals long before the real source of truth is clear
- shell glue works for a week, then turns into folklore only one person can
  maintain
- mouse-first file, spreadsheet, and note tools break flow and hide what the
  system is actually doing
- most planning software rewards list maintenance, guilt, and fake motion more
  than outcomes

That is why so much of my public work looks like a refusal.

## Public Evidence

- `erza` -> repo: https://github.com/ryangerardwilson/erza | docs:
  https://erza.ryangerardwilson.com/ | I got tired of treating the browser as
  the default container for docs and small product surfaces. `erza` is my
  attempt to move those screens into a terminal-native language and runtime,
  with a local Python model now and a remote protocol for broader reach later.
- `gmail` -> repo: https://github.com/ryangerardwilson/gmail | webmail is
  noisy, multi-account state is annoying, and send/reply/triage should not
  require tab choreography. I built a Gmail CLI with OAuth, presets, audit
  flows, reply/send, and cleanup.
- `gdrive` -> repo: https://github.com/ryangerardwilson/gdrive | backup should
  feel local-first and boring, not like dragging folders into a browser and
  hoping. I built a Drive backup CLI where the local folder is authoritative
  and sync can run on a timer.
- `tm` -> repo: https://github.com/ryangerardwilson/tm | tmux setups usually
  depend on half-remembered aliases and custom chooser bindings that rot. I
  built a real session browser with restore, index-session management, and
  repo-owned tmux config.
- `o` -> repo: https://github.com/ryangerardwilson/o | browsing files with a
  mouse usually means broken flow. I built a curses file manager with `hjkl`,
  reveal mode, picker/save flows, and handler-based opening.
- `vixl` -> repo: https://github.com/ryangerardwilson/vixl | big sheets get
  slow, opaque, and GUI-dependent fast. I built a terminal spreadsheet editor
  around Pandas, NumPy, explicit commands, and Vim movement.
- `gvim` -> repo: https://github.com/ryangerardwilson/gvim | I wanted a richer
  document surface without giving up Vim or moving my notes into browser sludge.
  I built a GTK4 block editor that keeps Vim as the editing core and publishes
  clean static output.
- `xyz` -> repo: https://github.com/ryangerardwilson/xyz | to-do apps often
  turn work into guilt and list cosmetics. I built a JTBD-first task tracker
  that forces outcomes, timing, and why the work matters.

## Biases

- keyboard-first over mouse-first
- local-first over dashboard-first
- precise interfaces over generic SaaS fog
- public artifacts over empty positioning