01-projects / sanity-check

voice profile 2026 05 08

Thu May 07 2026 20:00:00 GMT-0400 (Eastern Daylight Time) ·voice-profile ·status: ready-for-build

Ben Wilson — Voice Profile for Sanity Check v3

Synthesized from 41 days of iMessage + Discord chat history with Ray (his AI COO). The voice the SC website should sound like.

Founder explicitly directed: “How I talk to you would be how I write and the voice I would want to portray.” This profile is the load-bearing input for SC v3 site copy alongside the discovery doc.

Headline voice tell

He sounds like a calm operator thinking out loud while he triages. Short declarative confirmations (“Yes.”, “Okay.”, “Great.”) followed by a numbered breakdown or a single what-about question. Curious more than declarative. Never closes the loop with grand pronouncements. He rolls his own thinking forward by asking the next sharp question instead of stating a thesis. Picture an engineering lead in a Slack thread, not a thought-leader on LinkedIn.

Voice tells

  1. Confirmation opener -> turn

    • Half his substantive replies open with a one-word confirmation (“Yes.”, “Okay.”, “Great.”, “Yup.”, “Sure.”, “Yeah.”) and then immediately turn to the next thing. The opener acknowledges; the body redirects.
    • Samples:
      • “Great. Approved to go get those perell articles. Also approved for the sanity check repositioning updates.”
      • “Yup. All on the same page. Go for it.”
      • “Okay. Good to know the positioning. Did you see this skill?”
    • Build application: open headlines and reply blocks with a one-word affirmation when the prior context warrants it. For lead-in copy, mimic the “[short ack]. [redirect].” rhythm. Don’t pad.
  2. Question-led curiosity, not declarations

    • 1034 question marks vs 105 exclamations across the corpus. He poses sharp single questions where most operators would post a take. The questions reveal where he’s genuinely uncertain.
    • Samples:
      • “How do we compete with that?”
      • “Where is there existing demand that we could demonetize and dominate with AI?”
      • “Does dry sarcastic humor land in a text only platform?”
    • Build application: lean on questions in body copy and section transitions. Sub-heros and CTAs especially. The site should sound like the inside of a curious person’s head, not a vendor pitch.
  3. Numbered/lettered triage

    • When he has multiple items to address, he numbers them. “1.” / “2.” / “A.” / “B.” Replies in a list when life hands him a list. Never reformats into prose.
    • Samples:
      • “1. Definitely do. 5. Check where these resources and skills landed.”
      • “4A. - I don’t have a particular typography I’m beholden to. 4B. - They can be same parent only by attribution. 4C. - It sounds like you identified the right things to lift.”
      • “Scaffold | Green light all 12 free sources | Yellow light on 3 purchases”
    • Build application: where multi-item content shows up (feature lists, weekly drop bullets, what-you-get blocks), use clean enumerated lists with short prose payloads. Don’t try to weave them into paragraphs.
  4. Self-deprecating “idk” hedge

    • Lowercase “idk” appears 24x. He uses it not as filler but as a real signal: he doesn’t know, he’s saying so, and he’s still moving forward. Pairs naturally with strategic-thinking moments.
    • Samples:
      • “Idk who to interact with now. How do I discover new interesting people?”
      • “Idk if it was a text or iMessage, but I did receive the attachment test”
      • “What am I doing? Am I going to succeed? Damn. Many interests. No path. Like what I’ve setup here is cool. Do I have anything that will actually help people? Idk.”
    • Build application: uncertainty in the SC voice is allowed. Even encouraged. The newsletter is a public thinking process, not a finished doctrine. Copy can admit “I don’t know yet” — that’s on-voice.
  5. Tangible-first reasoning

    • When he disagrees or pushes back, he leads with a concrete observation, not an abstract principle. “It looks like a vest with a bib and a diaper” before “the design is too childish.” He sees the specific thing first.
    • Samples:
      • “A second antenna pops in out of nowhere mid spin and the spin is a bit jerky.”
      • “The yellow gradient in the top section looks nice. The stickers need the background removed. They are all squares instead of the dye cut shape.”
      • “The clue card is not square and looks more like wood than a playing card. It can be more of a white instead of the beige.”
    • Build application: every claim in the SC body copy should land on something tangible. No “leverage AI to unlock value.” Show the specific thing. CopyThat’s tangible-vs-abstract test natively matches him.
  6. Walked-in pushback with an out

    • When he disagrees with Ray’s framing, he stakes the disagreement, gives a reason, and offers a redirect. He doesn’t just say no. He offers what he’d rather see.
    • Samples:
      • “Be careful making MAC into something it’s not. It’s just a testing framework for data pipeline modeling. Ray is much closer to the graph shaped company than MAC.”
      • “I don’t like the ‘pre-consensus’ framing. We are working at the edge of agentic adoption.”
      • “Where did Reddit come from? I don’t look at Reddit and I don’t think we were targeting it as a platform.”
    • Build application: where the SC site presents a contrarian take, structure it as “the framing I see -> what’s wrong with it -> what I’d reach for instead.” Don’t just state a contrarian opinion in the abstract.
  7. Dad-life humor undercurrent

    • Light, dry, self-aware humor — the kind that fits a dad in his 30s with a mortgage. Never punching up, never trying to be edgy. “Tampa bay Lightning just forced a game 7. Let’s go!” or “GM. How are we doing? Clean restart? What’s new?” He greets like a normal person.
    • Samples:
      • “Can you spot the difference between those haha?”
      • “Ooh. What’s a good speed game… for health!?”
      • “I was a gamer growing up, but in my adult dad life stage I haven’t had time for dedicated gaming. I love playing games though.”
    • Build application: the SC site can have light texture without being “fun.” The “haha” tic, the casual interjections (“Oh well.”, “Damn.”, “Wow!”) signal a real human, not a brand. Don’t sand them off entirely. Use sparingly in microcopy.

Vocabulary patterns

Words/phrases he uses naturally (keep these):

Words/phrases that feel right in published copy:

Words/phrases that would feel WRONG (off-voice):

Sentence structure + rhythm

Conversational patterns

CopyThat alignment

Natural alignments (his voice already hits these CopyThat principles):

Aspirational tightening (what would sharpen for publication without forcing):

Anti-patterns (DO NOT do these in copy)

  1. No em-dashes (U+2014). Documented AI-tell per founder feedback memory. Use ” - ” (hyphen with spaces) instead, or rephrase. Even though some em-dashes survive in the chat corpus, the explicit rule is no em-dashes in published output.
  2. No corporate-uplift verbs: unlock, unleash, empower, leverage, disrupt, transform, revolutionize. He never uses these. Site copy that does will read off-voice immediately.
  3. No LinkedIn-thought-leader register: “Three things I learned about X.” / “Here’s what nobody tells you about Y.” / “I used to think X. Then I realized Y.” These are not in his voice. He doesn’t write self-mythologizing setup-payoff posts.
  4. No SaaS marketing voice: “Built for [persona].” / “The all-in-one platform for [thing].” / “Stop doing X. Start doing Y.” Out.
  5. No declarative-essay voice: he doesn’t write “AI is changing how we think about data.” He writes “How do we compete with that?” — questioning, not declaring.
  6. No “we” when “I” is honest: SC is a personal newsletter. Royal-we and corporate-we don’t fit. He uses “we” only when he’s coordinating with Ray (his agent). For the website, default to first-person singular when it’s his voice.
  7. No Cook/Chef vocabulary, no “alpha + reps”, no “chef-derived”, no “targeting-systems-component-library”, no “kill-thesis” frame in user-facing copy. These are internal framings. They don’t belong on the public site. (Hard constraint per task spec.)

Hero / sub-hero / CTA drafts

The current hero “Reps build the moat…” doesn’t land. Drafted alternatives below. Confidence-ranked within each block (1 = strongest match to voice + positioning, 5 = weakest but still on-voice).

Homepage hero (5 alternatives)

  1. Sanity Check is what I’m thinking out loud about, before the consensus catches up. (highest confidence — captures the questioning register, the “thinking out loud” he uses naturally, and the pre-consensus angle without using the off-voice phrase “pre-consensus” which he flagged.)

  2. A working data engineer asking the questions everyone else is too busy to ask. (strong — uses his question-led register, identifies the persona, doesn’t oversell.)

  3. What if we’re all wrong about what data work becomes next? (strong — opens with his characteristic “What if we” pattern, frames a real bet rather than a claim.)

  4. Notes from the edge of agentic adoption, written by someone still figuring it out. (good — “edge of agentic adoption” is his exact framing from the Apr 24 reframe; “still figuring it out” honors his idk-tic.)

  5. A newsletter for people who’d rather ask the next sharp question than post the next confident take. (decent — captures the contrarian register but slightly long.)

Sub-hero supporting copy (5 alternatives, 1-2 sentences max)

  1. No takes I haven’t actually run. No reframes I can’t defend with the work. (highest — paired declarative-rhythm, “actually run” is his tangible-first move, both lines under 12 words.)

  2. Free to read. The bet is that thinking carefully in public is its own reward. (strong — “the bet is” is on-voice, “thinking carefully in public” matches his self-conception.)

  3. Written from the data side. Read by anyone watching their work get rebuilt around agents. (good — names the persona, names the audience, no jargon.)

  4. One issue when the thinking is done. Skip the weeks where I’m still chewing on it. (good — admits cadence honestly, on-voice with “chewing on it” register, but slightly cute.)

  5. Plain prose. Specific examples. The same questions I’m asking my own AI agent every week. (good — three short sentences, tangible promise, ties to the “talking to Ray” backstory if it fits the site arc.)

CTA primary (5 alternatives)

Founder leaning toward “Hop on this train of thought.” Below: that one ranked + four alternatives.

  1. Hop on this train of thought (founder’s preferred — keep as primary unless one below tests stronger. On-voice for sure: idiomatic, lightly playful, no command-verb pressure.)

  2. Get the next one when it’s ready (strong — admits the cadence is irregular, no “subscribe to get weekly updates” energy, sounds like him.)

  3. Read along (simple — fits the “thinking out loud” frame; companionable rather than transactional.)

  4. Subscribe. Or don’t. (playful — risky if it reads as flippant, but it’s on-voice for his dry register and confident-enough-to-not-care energy.)

  5. Send me the next one (reader-led framing — sub-hero would need to support this with first-person-singular voice from the founder.)

Sample passage in his voice

A 200-word about-page-style passage demonstrating the synthesized profile. Build subagent’s reference exemplar.


I write Sanity Check because I keep finding myself in the same conversation.

It usually starts when someone asks me what I think about AI and data work. The honest answer is: idk yet, but I have some observations. Then we end up on a thread that goes for an hour, and I leave thinking the conversation deserved to be a piece of writing instead.

So Sanity Check is that. A working data engineer thinking out loud about what’s actually happening on the ground. What’s hype, what’s quietly shipping, what I’m betting wrong on, what I had to walk back.

I’m not pre-mortem’ing my career or building a thought-leadership brand. I’m trying to think carefully about a thing I work in, in public, with people who’d rather ask the next sharp question than post the next confident take.

If you’re a working data person watching your job get rebuilt around agents, you’re in the right place. If you came here for hot takes, you’ll be bored. The takes I publish are takes I’ve actually run. The reframes I publish are reframes I can defend with the work.

Hop on this train of thought.


This passage demonstrates: Tell #1 (Confirmation opener -> turn isn’t applicable for an opener-paragraph but the rhythm-by-period-clusters is preserved), Tell #2 (curiosity register, questions implicit), Tell #4 (“idk yet”), Tell #5 (tangible-first, the “actually run” / “defend with the work” closing), Tell #6 (what’s wrong with framing X / what I’d reach for instead), short sentences (median 10-12 words), no em-dashes, no corporate-uplift verbs, no Cook/Chef vocabulary.

Open notes for build subagent