Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsBlogPro
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Authors
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges
  • Chrome Extension
  • Skill Manager

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

ProTermsPrivacyRefunds
Back to skills

Format Design

ASecurity

How to design formats that succeed — simplicity, community, timing

56 stars
0 votes
0 copies
0 views
Added 10/6/2026
developmentjavascriptgojavac++expressgitdocumentation

Works with

cli

Security Analysis

A100/100

Pro scans all 5 files and shows the line behind each finding

Scanned 10/6/2026

$npx -y skills add SimHacker/moollm --skill format-design --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Format Design?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Format Design
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/simhacker-format-design/badge)](https://www.skillsdirectory.com/skills/simhacker-format-design)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
Files
SKILL.md
---
name: format-design
description: "How to design formats that succeed — simplicity, community, timing"
license: MIT
tier: 1
protocol: FORMAT-DESIGN
allowed-tools:
  - read_file
  - write_file
origin: "Anil Dash — 'How Markdown Took Over the World' (2025)"
lineage:
  - "Richard Gabriel — 'Worse is Better' (1989)"
  - "Jon Postel — Robustness Principle (1980)"
  - "John Gruber — Markdown (2004)"
  - "Anil Dash — 'How Markdown Took Over the World' (2025)"
related: [markdown, yaml-jazz, plain-text, postel]
tags: [moollm, philosophy, design, standards, worse-is-better]
---

# Format Design

> *"Smart people think of good things that are crazy enough that they just might work, and then they give them away, over and over, until they slowly take over the world."*
> — Anil Dash

---

## What Is It?

**Format Design** is the art of creating data formats, protocols, and conventions that actually get adopted. It's not about technical superiority — it's about fit, timing, and community.

Markdown beat Textile. JSON beat XML. RSS survived. Why?

---

## The 10 Reasons Markdown Won

From Anil Dash's "[How Markdown Took Over the World](https://anildash.com/2025/01/09/how-markdown-took-over-the-world/)" (January 2025):

### 1. Had a Great Brand

> *"'Markdown' as a name is clever as hell. Get it — it's not markup, it's markdown."*

- **Memorable** — Sticks in the mind
- **Self-explanatory** — Name implies purpose
- **Clever** — Rewards understanding

**MOOLLM parallel:** YAML Jazz, SOUL-CHAT, K-lines — memorable names that reward understanding.

### 2. Solved a Real Problem

> *"Millions of people were encountering the idea that it was too difficult or inconvenient to write out full HTML by hand."*

Not abstract improvement. A specific, felt problem.

**Test:** Can you describe the pain point in one sentence? Can users?

### 3. Built on Existing Behaviors

> *"The format is based on the ways people had been adding emphasis and formatting to their text for years or even decades."*

People already used `*asterisks*` for emphasis in email. Markdown just formalized it.

**Principle:** Don't invent new behaviors. Codify existing ones.

### 4. Mirrored RSS in Its Origin

> *"Both were spearheaded by a smart technologist who was also more than a little stubborn."*

A champion who believed, advocated, and refined. Community built around a person.

**Requirement:** Someone must care deeply enough to keep pushing.

### 5. Community Ready to Help

> *"Markdown was part of a community that could build on it right from the start."*

Prior art (Textile), beta testers (Aaron Swartz), early adopters (bloggers).

**Principle:** No format succeeds alone. Build with others.

### 6. Had the Right Flavor for Every Context

> *"Various communities that were implementing Markdown could add their own 'flavors' as they needed."*

CommonMark for standardization. GitHub-Flavored for tables. Obsidian for wikilinks.

**Principle:** Core should be simple. Extensions should be possible.

### 7. Released at a Time of Behavior Change

> *"You can get people to change their behaviors when they're using a new tool."*

Blogging was new in 2004. People were already learning new habits.

**Timing matters:** Launch during transitions (new platforms, new tools, new eras).

### 8. Came at the Cusp of the "Build Tool Era"

> *"Markdown is a raw material that has to be transformed into HTML, it perfectly fit this new workflow."*

Build pipelines became standard. Markdown fit the compile-to-output model.

**Principle:** Align with emerging workflows, not legacy ones.

### 9. Worked with "View Source"

> *"It only takes one glimpse of a source Markdown file for anyone to understand how they might make a similar file of their own."*

Inspectable. Learnable by example. No teaching required.

**Test:** Can someone learn your format by looking at one example?

### 10. Not Encumbered by IP

> *"There are no legal restrictions around Markdown. Nobody's been afraid to use the format."*

No patents. No licenses. No approval needed.

**Principle:** Generosity enables adoption. Give it away.

---

## The "Worse is Better" Principle

Richard Gabriel (1989):

> *"Simplicity is the most important consideration in a design."*

### The Two Philosophies

| MIT/Stanford ("The Right Thing") | New Jersey ("Worse is Better") |
|----------------------------------|--------------------------------|
| Correctness is paramount | Simplicity is paramount |
| Consistency matters | Interface should be simple |
| Completeness required | 80% solution acceptable |
| May sacrifice simplicity | May sacrifice correctness |

### Why "Worse" Wins

The simpler thing:
- Gets implemented faster
- Gets adopted more easily
- Gets modified more readily
- Survives longer

**Examples:**
- Markdown beat Textile (simpler, less precise)
- JSON beat XML (simpler, less expressive)
- JavaScript beat Java in browsers (simpler, less typed)
- Unix beat Multics (simpler, less secure)

### The Lesson

> *"If you're using ALL of C++ in your projects you're 'doing it wrong.' It is not a well-designed language."*
> — @calmbonsai, Hacker News

Complex formats that aren't fully used are worse than simple formats fully used.

---

## Postel's Law in Format Design

> *"Be liberal in what you accept, and conservative in what you send."*

### For Parsers

Accept:
- Variant spellings
- Missing optional fields
- Extra whitespace
- Unknown extensions

### For Generators

Output:
- Canonical form
- Complete required fields
- Minimal complexity
- Maximum compatibility

---

## The Superset Pattern

From HN:

> *"CommonMark Markdown is a rough superset of HTML, like how YAML is a superset of JSON."*

Successful formats often nest:
- Markdown ⊃ HTML
- YAML ⊃ JSON
- JSX ⊃ JavaScript

**Benefit:** Easy migration path from simpler format.

---

## Case Studies

### Markdown (2004) — Won

| Factor | Score |
|--------|-------|
| Brand | ✅ Clever name |
| Problem | ✅ HTML too verbose |
| Existing behavior | ✅ Email conventions |
| Champion | ✅ John Gruber |
| Community | ✅ Bloggers |
| Timing | ✅ Blog era |
| Simple | ✅ 10 minute learning curve |
| Inspectable | ✅ Raw = readable |
| Free | ✅ No restrictions |

### Textile (2003) — Lost

| Factor | Score |
|--------|-------|
| Brand | ❌ Obscure name |
| Problem | ✅ Same as Markdown |
| Existing behavior | ⚠️ Some |
| Champion | ⚠️ Dean Allen (less visible) |
| Community | ⚠️ Smaller |
| Timing | ✅ Same era |
| Simple | ⚠️ Slightly more complex |
| Inspectable | ✅ Yes |
| Free | ✅ Yes |

### XML (1998) → JSON (2002)

| | XML | JSON |
|--|-----|------|
| Verbosity | High | Low |
| Types | Complex | Simple |
| Parsing | Hard | Easy |
| Learning | Weeks | Hours |
| Adoption | Declined | Dominant |

---

## Designing for MOOLLM

When creating new formats (skill cards, room files, etc.):

### Checklist

- [ ] **Name** — Memorable? Self-explanatory?
- [ ] **Problem** — Clear, specific pain point?
- [ ] **Existing behavior** — Building on something familiar?
- [ ] **Community** — Who will help?
- [ ] **Simplicity** — Can you remove more?
- [ ] **Inspectable** — Learnable by example?
- [ ] **Free** — No restrictions?

### Format Smell Tests

**Red Flags:**
- Requires documentation to understand examples
- Has more than 5 required fields
- Uses abbreviations or codes
- Needs special tools to view
- Includes binary components

**Green Flags:**
- One example teaches the format
- Readable without rendering
- Extensible without breaking
- Works with standard tools

---

## The Community Point

From Anil:

> *"The people who make the real Internet and the real innovations also don't look for ways to hurt the world around them, or the people around them."*

Formats succeed when:
- Created to solve the creator's own problem
- Shared freely for others' benefit
- Refined through feedback
- Not used to extract rent

**Generosity scales. Greed doesn't.**

---

## Dovetails With

- [markdown/](../markdown/) — Case study in success
- [yaml-jazz/](../yaml-jazz/) — MOOLLM's data format
- [plain-text/](../plain-text/) — The substrate
- [postel/](../postel/) — Liberal parsing
- [k-lines/](../k-lines/) — K-lines (symbolic activators)

---

## Protocol Symbol

```
FORMAT-DESIGN
```

Invoke when: Designing new formats, evaluating existing ones, choosing between options.

---

## The Bottom Line

> *"Nearly every bit of the high-tech world, from the most cutting-edge AI systems at the biggest companies, to the casual scraps of code cobbled together by college students, is annotated and described by the same, simple plain text format."*

That format wasn't designed by a committee. It was created by one person to solve their own problem, tested by a teenager, and given away for free.

**Design like that.**

Attribution

SimHackerSimHacker
View sourceSee grades on GitHubMore from SimHacker →
SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Related Skills

Clean Code

Pragmatic coding standards - concise, direct, no over-engineering, no unnecessary comments

304955 votes

Browser Extension Developer

Use this skill when developing or maintaining browser extension code in the `browser/` directory, including Chrome/Firefox/Edge compatibility, content scripts, background scripts, or i18n updates.

286712 votes

Seo Optimizer

SEO optimization with keyword analysis, readability assessment, technical validation, content quality. Use for search rankings, blog posts, content audits, or encountering keyword density, readability scores, meta tags, schema markup errors.

2222 votes

Google Official Seo Guide

Official Google SEO guide covering search optimization, best practices, Search Console, crawling, indexing, and improving website search visibility based on official Google documentation

1862 votes

Writing Plans

Use when you have a spec or requirements for a multi-step task, before touching code

2927051 votes
View all in development →