How to verify this record
Publishing "what I have done" is cheap. What is expensive is letting a reader confirm that the same person really did it, in that order, over that time. Three mechanisms do that here.
1. Hash chain: the head tells you if the body changed
At build time every published entry is sorted by date and chained: each digest = SHA256(previous digest | index | file id | ISO8601 date | title | full body). Change a title, a date, or one character of prose, and every digest after it — including the head — changes. The summary field used in listings is not hashed.
Stated limits: this proves nothing was edited after publication. It cannot prove the writing is true. The head is stamped by a Cloudflare Pages deployment; the source sits in Git (the footer names the commit this content was built from). Together they form checkable time evidence.
c69b33040b4fd0fb6818acdb96cb17766bb00feaa4a3cd62937a55fb6adaa303
2. Deployment time: the content is stamped by the platform
The site is a static build; deployment output cannot be rewritten server-side. What you see matches the files a given deployment uploaded, and the page footer names the commit that produced it.
3. External anchors: one person, several places
- GitHub: github.com/OwenJiong24 — public commit history is the hardest engineering evidence.
- Source of this site: github.com/OwenJiong24/personal-site — the footer names the commit this page was built from. Check that commit out, run 'pnpm build', and the chain head in the footer should match: a reproducible anchor, not a claim.
- Email: [email protected] — the domain is mine and receives mail.
- RSS: /rss.xml (English feed) — aggregators can archive it externally.
Not done yet (stated plainly)
- Periodically anchoring the head somewhere immutable (a public repo, an RFC3161 timestamp authority).
- Signing the head with a private key and publishing the key fingerprint.
Digests of the ten most recent entries
| Date (UTC) | Section | Title | Digest |
|---|---|---|---|
| 2026-10-30 | projects | OrangeKnows site (this record) | 0bf2cc6a6239 |
| 2026-10-30 | guides | Small-budget ads: three tests before a maker spends $100 on traffic | 1c5834f0ad55 |
| 2026-10-30 | guides | Listing-ready photos on zero budget: window light, background, scale, hero shot | 4458f58538b9 |
| 2026-10-30 | guides | Moving buyers off the platform: a checklist you can finish this month | 94bdf904499b |
| 2026-10-30 | guides | Pricing handmade work: the cost you are not counting | 9271d1279254 |
| 2026-10-30 | guides | AI for makers: three jobs worth handing over, one that will cost you | 7b0d64ce7737 |
| 2026-10-30 | guides | Own your domain, site and inbox for under $20 a year | 61bfa21642dd |
| 2026-10-30 | essays | Nine questions before you build anything | 8031f7bf7677 |
| 2026-10-30 | essays | Luxury is not efficiency; it is what people endow | b3262c29e736 |
| 2026-10-30 | essays | Tags are the interface: structured data beats channel lists | 45ec00f8228c |