Skip to main content

Work

Productivity. Produce something of value. Work is where calibration, connection, and a nourished body get turned into output the world can use.

1 - Problem-Solving

Solve problems.

1.1 - Analyze

Analyze the problem.

  • Gather data
  • Synthesize data

1.2 - Design

Design a solution.

1.3 - Build

Build the solution.

1.4 - Test

Test the solution to make sure that it works.

2 - Claude

  • CLAUDE.md: Every project should have one for Claude-specific direction.
  • Plan mode: Use for complicated tasks. Use shift + tab to switch modes.
  • References: Use direct path references for speed.
  • Interrupt: Use esc.

3 - Data

Understand data.

3.1 - Features

  • Types:

    • Qualitative — categories, not numbers. Answers "which kind?"

      • Nominal: Categories without a specific order (e.g., apple, banana, cherry). Only test is equal/not-equal.
      • Ordinal: Categories with a meaningful order but no consistent gap between them (e.g., satisfied, neutral, dissatisfied). Can rank, can't measure the distance.
    • Quantitative — numbers. Answers "how much?" Distinguished by whether zero means "none."

      • Interval: Consistent gaps but no true zero (e.g., 20°C, 30°C, 40°C). Can add/subtract, but ratios are meaningless — 40°C is not twice as hot as 20°C.
      • Ratio: Consistent gaps and a true zero, so ratios are meaningful (e.g., 0 kg, 50 kg, 100 kg — 100 kg is twice 50 kg). All arithmetic works.
  • Parameters

    • Volume: Amount of data. Think "how much?" Measured using a base 2 system.
    1 KB = 1024 B (~1024 characters)
    1 MB = 1024 KB (~1 png, ~1 min mp3)
    1 GB = 1024 MB (~10 min 1080p mp4)
    1 TB = 1024 GB
    • Velocity: Speed at which data arrives. Think "how often?"

    • Variety: The different types and formats of data. Think "what type?"

3.2 - Schema

  • schema.json — fetched programmatically; the source of truth. Easier for LLMs to parse than raw SQL. Table and column names are snake case. See json_schema_example.json.
    • server_name: string
    • database_name: string
    • tables: object keyed by table alias
      • {alias}: object — plural table alias (e.g. users); when the same table is derived from multiple sources, prefix with {source_name}_ (e.g. ms_accounts)
        • source_name: string — real table name
        • alias: string — matches the key
        • alias_single: string — singular form, used in FK naming (e.g. user for users)
        • display_name: string, optional — human-readable table name
        • description: string, optional — what the table stores
        • columns: object keyed by column alias
          • {alias}: object
            • source_name: string — real column name
            • type: string — e.g. uuid, varchar(255), decimal(10,2)
            • display_name: string, optional — human-readable label for UIs
            • description: string, optional — what the column means
            • is_primary_key: boolean, optional
            • is_unique: boolean, optional
            • is_nullable: boolean, optional
            • default: string, optional — default value
            • references: object, optional — parent relationship
              • referenced_table: string
              • referenced_column: string

Use Mermaid for visualization.

3.3 - Actions

CRUD (Create, Read, Update, Delete) operations are fundamental actions applied to data.

Here's an approach to standardize CRUD verbs:

  • Create: create (avoid build, append, save, setup, generate, add)
  • Read: read (avoid get, fetch, select)
  • Update: update (avoid modify)
  • Upsert: upsert (try create else update)
  • Delete: delete (avoid remove, destroy)

Here are some other useful verbs:

  • Initialize: init
  • Execute: run
  • Calculate: calculate
  • Refresh: refresh

3.4 - Wrangling

Cleaning, transforming, and organizing raw data into a structured, usable format. Core operations below (language borrowed from Power Query).

  • Name the table by approach:
    • Pivot tables (pure many-to-many — 2 tables, no extra columns): {table_a}_{table_b} (e.g. orders_users).
    • Associative entities (3+ tables, or has its own columns/meaning): a descriptive noun — ask "what is one row?" (e.g. orders + users + items → order_line_items).
    • Views / derived tables: {base_table}_{qualifier} (e.g. orders_recent).
  • Read table from source.
  • Select columns.
  • Rename columns.
  • Filter rows.
  • Reshape:
    • Unpivot / melt: gather columns into rows.
    • Pivot: spread rows into columns.
    • Concat: append rows or columns.
  • Merge / join:
    • Foreign keys are named {foreign_table_singular}_id (e.g. user_id).
  • Group
  • Add column
  • Append

3.5 - Visualization

  • Comparison: Bar Chart
  • Trends: Line Chart
  • Relationship: Scatter Plot (2 variables), Bubble Plot (3 variables)
  • Distribution: Histogram
  • Composition: Tree Map or Pie

See Charting Visualization cheat sheet.

3.6 - Spreadsheets

Conventions

  • Color coding: static data blue (literals, and formulas over only literals like =32614+2000), dynamic data black (references another cell), imported data red.
  • Named ranges: {sheet_name}_{column_name} (e.g. users_name). Google forbids . in names. Reserve for record tables (one column = one field); on key/value tabs, name the individual value cells instead.
  • Formatting: use alternating colors, or a table (in Excel).
  • Keys: highlight the PK in yellow.
  • Notes: add notes to frozen header columns as needed.
  • Alignment: numbers align right, text aligns left (default).
  • Show formulas: To debug.
  • App Script: For Google Sheets native automations.
  • Python Script: Use Python scripts to have Claude edit Google Sheets programmatically.
  • Alternating colors: Use for all tables for readability.
  • Today: Hard code today to avoid updating snags.
  • Docs: Document important formulas as needed.
## Sheet Name

### Column Name

{detail}

{formula}

Formulas

  • Math: sum, average, count, counta, max, min, len, value.
    • type: 1 (number, right-aligned), 2 (text, left-aligned).
  • Logic: if, iferror, sumif, sumifs, countif, countifs, and, or, not.
  • Text: concat, concatenate, join, split, left, right, trim, text(value, format).
  • Datetime: today, now, date.
  • Lookup: xlookup.
  • Query: =QUERY({table},"select max(A) where (A="&A2&" and H starts with '90' and H contains 'C36')")
  • Indirect: reference named ranges — =INDIRECT(property_name&"!"&lower(kpi)).
  • Unique — dedupe a range.
  • Sort — order a range.
  • Arrayformula: arrayformula(vlookup({lookup_value},{lookup_range},{6,7,8,9},false))

3.7 - Statistics

Descriptive Statistics

What happened?

Describes a data set.

Central Tendency:

  • Mean: The average value of a dataset.
    • Rolling Mean: Uses a window to smooth out fluctuations in a dataset over time.
  • Median: The middle value of a dataset when the values are arranged in order.
  • Mode: The value that appears most frequently in a dataset.

Dispersion:

  • Range: The difference between the maximum and minimum values in a dataset.
  • Standard Deviation: A measure of the dispersion or spread of values in a dataset, indicating how much the values deviate from the mean.
  • Variance: The average of the squared differences from the mean, another measure of dispersion.
  • Percentile: A value below which a given percentage of observations in a dataset fall.
  • Quartile: Values that divide a dataset into four equal parts.

Shape:

  • Skewness: The asymmetry of the distribution.
  • Kurtosis: The "tailedness" of the distribution, indicating the frequency of outliers. High kurtosis suggests fat tails.

Relationships:

  • Correlation: A measure of the strength and direction of the relationship between two variables. The correlation coefficient (r) ranges from -1 to +1. Note that correlation does not imply causation (e.g., the correlation between study hours and exam scores). It reflects how tightly the data points fit the regression line or beta.

Inferential Statistics

Is this difference real?

Hypothesis testing is a statistical method used to make decisions or inferences about a population based on sample data. It involves formulating two competing hypotheses and using sample data to determine which hypothesis is more likely to be true.

  • Null Hypothesis (H₀): A statement that there is no effect, no difference, or no relationship in the population. It is the default assumption.
  • Alternative Hypothesis (H₁): A statement that there is an effect, a difference, or a relationship in the population. It is what the researcher aims to support.
  • Significance Level (α): The threshold probability for rejecting the null hypothesis. Common values are 0.05 (5%) or 0.01 (1%).
  • P-value: The probability of obtaining a test statistic as extreme as the one observed, assuming the null hypothesis is true. A smaller p-value indicates stronger evidence against H₀.

Predictive Statistics

Will the next roll be a 4?

Predicts based on patterns in data.

  • KNN: Predicts outputs by averaging k nearest points.
  • Regression: Models dependent vs. independent variables for numerical predictions (e.g., house prices). Metrics like R-squared measure fit.
  • Decision trees: Use rules from data for decisions. Handle categorical/numerical data and are interpretable. Random forests add feature randomness to reduce over-fitting.
  • Q-learning: Reinforcement learning algorithm that updates Q-values to learn optimal actions. Balances exploration and exploitation to maximize rewards, used in gaming and robotics.

4 - Startup

Build a startup.

Same loop as problem solving, aimed at a market. Analyze → Design → Build → Test.

4.1 - Analyze

Demand: What do people want?

  • Urgency — how badly, how soon.
  • Market size — how many.
  • Willingness to pay — how much.
  • Cost of acquisition — what it takes to reach them.

Supply: What can people already get? Who serves this demand today, and how well?

Gap: What are people missing? Demand minus supply. This is the opening.

Opportunity: Can you make money in the gap? Price minus cost, at scale, beats your alternatives.

Example — lemonade. People want cold lemonade at a fair price (demand). The stands nearby charge too much (thin supply). So thirsty shoppers walk away unserved (the gap). Buy ingredients in bulk, keep quality high, price under the incumbents, and hand out signs at grocery stores to pull traffic (the opportunity).

4.2 - Design

Landing Page

In modern times, design is a landing page. It's where a stranger learns your value prop and decides to pay.

Landing page: Sell the gap you found.

  • Hero — the promise. One line: what they get, why it beats the alternative.
  • How it works — the three steps from sign-up to value.
  • Why we built this — the story. Reasons to believe.
  • Pricing — what it costs, stated plainly.
  • Call to action — the one thing to click. Repeated top and bottom.

Business Plan

Value: What you deliver that's worth paying for. The sections (Demand, Supply, Gap, Opportunity) from 4.1, turned into a product/service. Operations = How you deliver your product/service.

Marketing: How strangers find you. Get in front of the audience, then bring them to the page. Sales = How you turn leads into sales.

  • Organic — SEO and content. The page earns its own traffic.
  • Direct — outbound, DMs, cold email. How the first ten customers actually arrive.
  • Social media — build an audience where they already scroll. Content that earns attention, not just ads.
  • Advertising — pay for reach. Search, social, display. Buy attention you can't earn yet.
  • Referral — customers bring the next customers.
  • Ambassador — incentivize non-customers to promote for you.

Finance: Prove the money works. Model it before you build; prove the opportunity pencils out.

  • Unit economics — price minus cost per customer, CAC vs. lifetime value. If one customer doesn't pay back, scale makes it worse.
  • Runway — cash on hand ÷ burn. How long you have to be right.
  • StatementsBusiness Template.gsheet!statements — revenue, costs, cash over time.
  • DCFBusiness Template.gsheet!dcf — discount future cash flows to what the business is worth today.

4.3 - Build

Build the smallest version that a real customer can pay for. Ship it.

4.4 - Test

Put it in front of paying customers. Demand is proven by revenue, not by opinion. Measure, keep what sells, cut what doesn't.

4.5 - BPE

Business Process Engineering — automate business workflows from a Markdown source of truth.

  • GitHub: Start with a GitHub project.

  • Markdown: Markdown is SOT (source of truth).

    • Hierarchy
      Process/ # end-to-end business objective
      └── Workflow/ # orchestrated sequence that carries out the process
      └── Action # atomic step: Tech + Labor
    • Google Docs: For collaboration.
    • Mermaid: Visualize workflows in a Mermaid diagram based on the Markdown SOT.
      • Subgraphs: Think sections.
        • Each artifact should have its own subgraph with the artifact name as title.
      • Nodes: Think operations.
        • Read = Light blue
        • Logic = Light gray
        • Write = Light yellow
        • User = Light purple
      • Arrows: Only use for clear success/fail junctions. Think connectors.
        • Success = Light green
        • Fail = Light red
    • Video: Use recording resources to supplement written docs.
  • Principles:

    • Question assumptions.
    • Reduce waste.
    • Ensure clear ownership/accountability.
    • Ensure the design clearly articulates the value proposition.
  • Technologies:

    • Data: Sheets
    • Scripts: Python, N8N
    • Communication: Gmail
  • Project Management: Use Business Template.gsheet!project_management to manage projects. Inspired by monday.com.

    • Date: date
    • Task Name: string
    • Assigned To: Person
    • Status: string
      • To Do
      • In Progress
      • Paused
      • Completed
    • Priority: string, allows the user to prioritize when multiple tasks are present
      • Low
      • Medium
      • High
    • Notes: string
    • Last Touched: date, records when the task was last touched
    • ID: =Project_ABC[Date]&"_"&Project_ABC[Task Name]&"_"&Project_ABC[Assigned To].
  • Approach

    • Analyze
    • Design
    • Build
    • Test

5 - Development

Build great apps.

5.1 - Next JS

Fullstack framework.

  • Server components: Default. Fetch data from the server.
  • Client components: Manage state.
  • Layout: Wraps children.
  • Routes: Can be dynamic [param].

5.2 - Shadcn

Frontend responsive component library. Uses Tailwind.

  • Inputs

    • Input
      • Text
      • Number
      • Date
      • Time
    • Select: 5 options or less.
      • Single Select
      • Multi Select
    • Combobox: 6 options or greater.
      • Single Select
      • Multi Select
    • Button
  • Outputs

5.3 - Supabase

Database and auth.

  • Model: define the schema.
  • Local: develop against a local instance.
  • Cloud: deploy to the hosted instance.
  • Auth: email sign-in for easier testing.

5.4 - Playwright

End-to-end testing for coverage.

5.5 - Deployment

  • Squarespace: buy the domain.
  • Resend: email sending.
  • Vercel: hosting.
  • Pastel: Comments.

6 - Voting

Government has three jobs.

6.1 - Liberty

Protect individual liberties.

Liberty = Protect individual liberties

  • Free markets: Make sure people play fair. Address negative externalities.
  • Gun control: People who are violent forfeit their right to bear arms.
  • Abuse: Protect people from abuse.
  • Speech: Calls for violence and explicit materials.

6.2 - Welfare

Care for the poor.

Welfare = Ensure the poor are cared for on a basic level

6.3 - Defense

Protect against foreign threats.

Protect people from:

  • Terrorism
  • Market abuses
  • Unlawful immigration

Tariffs can be used to protect local interests (restriction) and for other diplomatic bargaining (reciprocity).