Building This Website
The snake guy doesn't do this. It's not fun without you.
The problem
Bill needed a place to put things. Free educational content about working with AI — setup guides, workflow patterns, case studies, a free book. Not a product page. Not a blog on Medium. Not a LinkedIn article that disappears into the feed. A permanent, static, no-bullshit website that he controls.
The constraints:
- No budget. Zero dollars per month.
- No web framework. No auto-builder. No static site generator.
- No CMS. No WordPress, no Squarespace, no drag-and-drop.
- No web development experience. Bill has never built a website. He's a data engineer who writes Python and SQL.
- Dark theme. Because he said so.
The stack
Hosting: AWS S3 static website hosting. A bucket configured to serve HTML files. No server. No content delivery network. Just files in a bucket with a public URL.
Content: Hand-written HTML and CSS. Every page is a standalone file. No templating, no build step, no compilation.
Analytics: Google Analytics 4 (a Google Analytics tracking code on each page, pending real measurement ID).
SEO: Standard files that help search engines find and index the pages (robots.txt, sitemap.xml). Because why not.
Cost: S3 storage for a handful of HTML files is effectively free. Bandwidth for a text-only site with no images is pennies. Total: $0.00/month rounded generously.
What was built
In one session — the same session that also distributed four books, submitted two award entries, filed an academic paper with the Bulletin of Symbolic Logic, and pitched three magazines — the following was created:
- index.html — Landing page with thesis statement and navigation cards
- book.html — Free book page with download link, quotes, award status
- setup-cli.html — Claude Code CLI installation guide
- setup-ui.html — Claude browser UI guide
- workflows.html — Four workflow patterns (Forge, Briefing, Book Factory, Skills)
- cases.html — Case study index with six cards
- readings.html — Reading list with Amazon/PDF links
- about.html — Bio page
- posts/index.html — Blog index (placeholder)
- 404.html — Error page with an undecidability joke
- style.css — One stylesheet, 134 lines, dark theme
- robots.txt — Allow all
- sitemap.xml — All pages listed
- cases/*.html — Individual case study deep-dives
The CSS
134 lines. Dark background (#0a0a0a), light text (#e8e8e8), accent blue (#4fc3f7). Max width 680px. Uses the device's built-in fonts. Cards with subtle borders. That's it.
No CSS framework. Just properties on elements, written by an AI that was told "dark theme, clean, readable, not fancy."
The deployment
aws s3 sync ./youplus/ s3://youplus-site/ \ --region us-west-1 --profile personal
One command. Syncs local files to the bucket. Changed files get uploaded. Unchanged files are skipped. No automated deployment pipeline. No deployment workflow. You change a file, you run the command, it's live.
The human/AI split
The human decided
- What the site is for: free educational content, not a product
- What pages to build and what goes on each one
- The design language: dark, minimal, text-forward
- The tone: direct, irreverent, no marketing speak
- S3 hosting (because Bill already had an AWS account and knows the CLI)
- Every word of content was reviewed and approved
The AI built
- Created the S3 bucket and configured static website hosting
- Wrote all the HTML and CSS from scratch
- Generated the sitemap.xml and robots.txt
- Deployed via
aws s3 sync - Updated all navigation links when new pages were added
- Built the case study pages from project knowledge
What you can steal from this
- Static sites are underrated. No server means no maintenance, no security patches, no downtime, no cost. For content that doesn't need a database, this is the correct architecture.
- S3 is a free web server. For low-traffic text sites, the cost rounds to zero. You don't need Vercel. You don't need Netlify. You need a bucket.
- You don't need to know HTML. Bill doesn't write HTML. He describes what he wants and the AI writes HTML. The skill that matters is knowing what you want, not knowing the syntax to express it.
- Ship ugly, then fix. The first version of this nav was ugly (the links wrapped to a second line). It was live in minutes anyway. The fix took 30 seconds. Perfect is the enemy of deployed.
- No framework is a feature. Every file on this site can be opened in Notepad. There's no build step. There's no dependency to update. There's nothing to break. In five years, these HTML files will still work exactly as they do today.
Disclosure: This page was generated by Claude (Anthropic) under Bill's direction. It's a page about building this website, on this website, built by the same process it describes. Bill is aware of the recursion.