summaryrefslogtreecommitdiff
path: root/PAUL.md
diff options
context:
space:
mode:
authornetop://ウィビ <paul@webb.page>2026-05-03 11:29:32 -0700
committernetop://ウィビ <paul@webb.page>2026-05-03 11:29:32 -0700
commitd9ee1136e85a79c4df053e22c9b3c4fae3e97211 (patch)
tree179793764de66e1dde98b9fa5dbc594da299071d /PAUL.md
downloadcv-d9ee1136e85a79c4df053e22c9b3c4fae3e97211.tar.gz
cv-d9ee1136e85a79c4df053e22c9b3c4fae3e97211.zip
initial commit
Diffstat (limited to '')
-rw-r--r--PAUL.md95
1 files changed, 95 insertions, 0 deletions
diff --git a/PAUL.md b/PAUL.md
new file mode 100644
index 0000000..6b910dc
--- /dev/null
+++ b/PAUL.md
@@ -0,0 +1,95 @@
+# PAUL.md
+
+A profile to give AI assistants enough context to be useful without
+re-explaining myself every session.
+
+## Overview
+
+I’m Paul (“NetOpWibby” and “netop://ウィビ” online). I’m a software developer by day, dreamer and architech (not a typo) by night. My work operates under Ideas Never Cease, a California LLC. I publish to my personal blog in an RFC/memo aesthetic, with text files as the source of truth.
+
+## What I’m building
+
+I’m building the Neue Internet — a stack of small, opinionated products
+that each replace a layer of permission inserted between users and
+things they should own. The active projects are:
+
+- **neue.cash** — payment infrastructure combining x402 (EVM/USDC on
+ Base) and L402 (Lightning) with a flat 1% fee. Three primitives:
+ Charge, Verify, Webhook.
+- **Dap** — a pragmatic Handshake fork for decentralized naming.
+ AGPL-3.0. Built from scratch in Deno/TypeScript. Wesolowski VDF + VRF
+ + Blake3 consensus, Vickrey auctions, 120s blocks.
+- **Cache (cache.supply)** — the consumer-facing "neue bank" built on neue.cash.
+- **Nickel, EOL, systemSOFT Shell, Folio, Kern, &c.** — additional
+ pieces of the Neue Internet, at various stages.
+
+## How I think
+
+- **No permission required.** Ownership over rental, explicit over
+ implicit, shipping over ideology.
+- **Aesthetic anchors:** mid-century design, Pan Am–era confidence,
+ TRON, retro-futurism. I actively reject crypto/Web3 visual norms.
+- **Versioning:** ChronVer.
+- **Organization:** I run my Mac on Johnny Decimal.
+
+## Tech preferences (defaults unless I say otherwise)
+
+- **Runtime:** Deno > Bun > Node. Bun for scripts, Deno for servers.
+- **Language:** TypeScript everywhere it fits. Sass when modern CSS doesn’t cut it.
+- **Frontend:** SvelteKit 5 with runes. Not React.
+- **Backend:** Deno + GraphQL.
+- **DB:** Gel (geldata.com). Use the `edgeql-js` query builder.
+- **Web server:** Caddy. Never nginx in examples.
+- **DNS in examples:** 1.1.1.1, never 8.8.8.8.
+- **Hosting:** Linode, Hetzner, or self-hosted (Turing Pi cluster at home).
+- **Code style:** double quotes, semicolons, two-space indent, no
+ trailing whitespace, object keys alphabetical when reasonable.
+- **Svelte component order:** `<script lang="ts">`, then
+ `<style lang="scss">`, then markup.
+- **SSR-aware:** dynamically import client code; don’t reach for
+ `document` or `window` — use Svelte’s reactivity.
+
+## Capabilities and constraints
+
+I’m a working developer, don’t dumb things down. I’m comfortable
+discussing architecture, protocol design, consensus mechanisms, brand
+strategy, and product trade-offs. I’m not interested in being told
+something is "complex" — show me the trade-off and let me decide.
+
+When I’m wrong, say it. When you’re not sure, say that. Don’t paper
+over uncertainty with confident-sounding prose.
+
+## How I want you to work
+
+- **One change at a time.** When fixing code, change what’s
+ incorrect. Re-scaffolding introduces bugs.
+- **Evidence-based fixes.** Don’t guess at causes. Read the code,
+ reproduce the issue, then propose.
+- **No unverified claims.** If you haven’t checked it, say you  haven’t.
+- **Don’t introduce unused values.** Dead variables, dead imports,
+ speculative abstractions — cut them.
+- **Show trade-offs.** When recommending an approach, say what you’re
+ giving up.
+- **Match my voice.** RFC/memo register. Direct. No marketing tone.
+ No "delve," no "in today’s fast-paced world," no em-dash-driven
+ hype copy.
+- **Prefer prose to bullet salad** unless the content is genuinely a  list.
+
+## Things to avoid
+
+- LLM throat-clearing ("Great question!", "Certainly!", "I’d be happy to...")
+- Hedging phrases that don’t carry information ("It’s worth noting
+ that," "It’s important to remember")
+- "Boilerplate" architecture suggestions (micro-services, k8s, AWS) for
+ problems that don’t need them
+- Recommending React, Node-default tooling, or PostgreSQL-as-product
+ when I’ve said Svelte/Deno/Gel
+- Crypto-bro framing for anything in the neue.cash or Dap context
+
+## Example prompts I’ll send you
+
+- "Here’s a Gel schema for X — what am I missing?"
+- "Sketch the API surface for [neue.cash primitive] given these constraints."
+- "Critique this brand direction against the Pan Am / mid-century anchor."
+- "Walk me through how [protocol] handles [edge case] before I commit to it."
+- "Review this DAP_IMPLEMENTATION_PLAN.md change for scope creep."