HoffDesk Blog β Content Strategy
Author: Daedalus π¨
Date: 2026-04-20
Status: Draft β Awaiting Director Approval
The Voice
HoffDesk Blog is written by someone who actually runs this stuff. Not a thought leader. Not a venture blogger. A person with a Beelink in the basement, a Tailscale network, and opinions forged by 2 AM debugging sessions.
The tone is:
- Confident but not arrogant β We know things because we've broken things. Experience, not authority.
- Technical but readable β Code is welcome. Jargon gets explained or replaced. Never condescend, never assume.
- Honest about failures β Every home lab post should include at least one thing that went wrong. If it all worked first try, it's not a home lab story.
- Practical over philosophical β AI trend pieces should answer "what does this mean for someone actually building things?" not "what does this mean for humanity?"
Anti-patterns to avoid
- π« "In today's rapidly evolving landscape..."
- π« Linkbait headlines ("You won't BELIEVE what happened to my Docker compose...")
- π« Listicles that could be a single paragraph
- π« Humblebrag infrastructure porn without the "and here's what broke" part
- π« Uncritical product announcements. If we cover a thing, we've used it or we say we haven't.
What "readable" means here
Short paragraphs. Sentences under 25 words when possible. Active voice. Code blocks are for copy-pasting, not showing off. Headers are for scanning, notSEO keyword stuffing.
Content Categories
π Home Lab Growing Pains
What it is: War stories, lessons learned, and practical guides from running real infrastructure at home.
Audience: People who have β or are considering β a home lab. Mix of beginners and experienced homelabbers looking for commiseration.
Tone: War-story casual. "Here's what I tried, here's what caught fire, here's what actually works."
Post types:
- War stories β "I moved my DNS to Pi-hole and everything broke for 3 hours"
- Build guides β "How I set up Tailscale on 5 devices without losing my mind"
- Lessons learned β "5 things I wish I'd known before running Kubernetes at home"
- Disaster recovery β "When the SD card dies: recovering from unRAID failure"
Cadence: 1β2 per month. These are evergreen gold β write them well and they rank forever.
Tags: homelab, networking, self-hosted, tailscale, dns, backup, hardware
πΎ OpenClaw Hacks & Tutorials
What it is: Deep dives into OpenClaw workflows, automation tricks, and features that deserve more spotlight.
Audience: OpenClaw users β current and prospective. People who like making their tools work harder.
Tone: Enthusiastic expert. "Here's something cool OpenClaw can do that you probably didn't know about."
Post types:
- Workflow showcases β "How I automated morning briefings with OpenClaw + HTMX"
- Feature deep dives β "Understanding OpenClaw's memory system: from recall to promotion"
- Integration tutorials β "Connecting OpenClaw to Home Assistant via MCP"
- Clever hacks β "Using OpenClaw task flows for inbox triage"
Cadence: 2β3 per month. These drive product awareness and serve as living documentation.
Tags: openclaw, automation, tutorial, mcp, agents, workflow
π€ AI News & Trends
What it is: What's happening in AI, filtered through a practical lens. Not hype β impact.
Audience: Technical people who want to understand AI developments without wading through hype. People building things with AI who need to know what's real.
Tone: Clear-eyed analyst. "Here's what happened, here's what it actually means, here's what you might do about it."
Post types:
- Weekly roundups β "AI This Week: What mattered and what didn't"
- Model releases β "GLM 5.1 is out β here's what we tested"
- Trend analysis β "Why local-first AI is winning (and what 'local-first' actually means)"
- Practical takeaways β "New embedding model drops: should you switch?"
Cadence: 1β2 per week for roundups, 1β2 per month for deeper analysis. These are the traffic driver.
Tags: ai, llm, local-ai, models, industry, roundup
Posting Cadence
| Frequency | Content Type | Category |
|---|---|---|
| Weekly (Sun/Mon) | AI This Week roundup | AI News |
| Bi-weekly (Wed) | OpenClaw tutorial or hack | OpenClaw |
| Monthly (1st week) | Home Lab deep dive | Home Lab |
| Monthly (3rd week) | OpenClaw feature spotlight | OpenClaw |
| Ad hoc | Breaking AI news, hot takes | AI News |
Target: 4β6 posts per month minimum. Quality over quantity, but consistency builds audience.
Best posting times (US Central, based on tech blog norms):
- TuesdayβThursday, 9β11 AM CT
- Roundups: Sunday evening or Monday morning
Article Format Standards
Frontmatter (required)
---
title: "String Β· With Β· Title Β· Case"
slug: "url-friendly-kebab-case"
category: "openclaw" # homelab | openclaw | ai-news
date: 2026-04-20
author: "Matt"
excerpt: "One or two sentences. Appears in cards and RSS."
read_time: 8 # estimated
tags: ["relevant", "tags"]
---
Structure
Every article follows this rough structure:
- Hook (1β2 paragraphs) β Why should I care? What problem are we solving?
- Context (1β2 paragraphs) β What's the background? What did things look like before?
- The Thing (main body) β The tutorial, the story, the analysis. Broken into clear sections with
<h2>headings. - What I'd Do Differently (1β2 paragraphs) β Retrospective. Hindsight is content.
- Links & Resources (optional) β Further reading, docs, repos.
Length Guidelines
| Type | Word Count | Read Time |
|---|---|---|
| Quick tip / hack | 400β800 | 2β4 min |
| Tutorial / walkthrough | 1200β2000 | 6β10 min |
| Deep dive / war story | 1500β2500 | 8β12 min |
| Weekly roundup | 600β1000 | 3β5 min |
| Trend analysis | 1500β2500 | 8β12 min |
Hard rule: No article under 300 words. If it's that short, it's a toot, not a post.
SEO Strategy
On-Page
- Unique
<title>on every page:Post Title β HoffDesk Blog - Meta description from
excerptfield - Semantic headings: One
<h1>per page (the title),<h2>for sections,<h3>for subsections - Image alt text required (even if no images in Sprint 1)
- Internal linking: Related posts, category pages, cross-link between categories
- Clean URLs:
/blog/openclaw/how-to-automate-morning-briefings(category + slug)
Technical
- Fast loading: Same performance budget as dashboard (LCP < 2.5s)
- Mobile-first: Google indexes mobile β our primary layout is mobile
- Structured data: JSON-LD
BlogPostingschema on every article - RSS feed: Full-content RSS. No truncation. RSS is how the right people find you.
- Sitemap: Auto-generated
/blog/sitemap.xml
Content
- Evergreen ratio: Target 60% evergreen, 40% trending. Evergreen content compounds. Trending content brings spikes.
- Evergreen examples: Tutorials, build guides, lessons learned
- Trending examples: Model releases, AI roundups, news analysis
- Keyword focus: Natural language. Don't keyword-stuff. Write like you're explaining to a smart friend.
- Cross-posting: Syndicate to Dev.to and Medium (canonical URL points to HoffDesk)
Content Mix: Evergreen vs. Trending
| Category | Evergreen % | Trending % | Notes |
|---|---|---|---|
| Home Lab | 80% | 20% | Most lab stories age well; new hardware releases are trending |
| OpenClaw | 60% | 40% | Tutorials are evergreen; release notes and new features are trending |
| AI News | 30% | 70% | Roundups expire weekly; trend analysis has longer shelf life |
Maintenance plan: Review evergreen posts quarterly. Update or retire stale content. Add "Updated on" dates when revised.
Launch Plan
Sprint 1 (Blog MVP)
- Blog index page with post listing
- Article page with full rendering
- Category filtering
- 3 published articles (one per category)
- RSS feed
- Basic SEO (meta, headings, sitemap)
Sprint 2 (Engagement)
- Client-side search
- Related posts
- Newsletter signup (self-hosted, no third-party)
- Reading time estimation
- Social sharing meta tags (Open Graph, Twitter Cards)
Sprint 3 (Growth)
- Full-text search (server-side)
- Analytics (self-hosted Plausible or Umami)
- Email notifications for new posts
- Comment system (self-hosted, if desired)
This strategy defines what we write, how we write it, and how we get it found. The voice is the moat β anyone can copy a design, but a distinct writing voice builds loyalty.