The Campaign for Cooler Coding and Programming is the philosophical and ethical foundation of the Rhodium Standard Repositories (RSR) framework.
CCCP defines principles and policies for building software that is:
-
Emotionally safe — development without shame or anxiety
-
Technically excellent — type-safe, memory-safe, formally verified
-
Politically autonomous — independent of Big Tech lock-in
| Temperature | Meaning |
|---|---|
Emotional |
Reduced anxiety through reversibility, safe experimentation, no shame in mistakes |
Computational |
Efficient systems, no unnecessary cycles, minimal runtime overhead |
Social |
Warm community with graduated trust, cool-headed technical decisions |
Political |
Resistance to monopolistic tooling, anti-corporate lock-in, autonomy through offline-first design |
Rejecting the npm/node ecosystem’s fragility in favor of:
-
ReScript — OCaml soundness, compiles to JS
-
Rust — Systems programming with memory safety
-
Deno — Secure-by-default runtime (when JS is unavoidable)
-
Work continues without constant connectivity
-
No cloud-dependent tooling
-
SaltRover for offline repository management
-
CRDTs eliminate locking and cache invalidation
-
Conflict-free by design
-
No single point of failure
-
Correctness is an act of solidarity
-
SPARK/Ada for safety-critical paths
-
Type systems prevent bugs before they happen
-
TPCF (Tri-Perimeter Contribution Framework)
-
Graduated trust without gatekeeping
-
Collective ownership patterns
| Language | Use Case | Notes |
|---|---|---|
ReScript |
Primary application code |
Compiles to JS, OCaml type safety |
Rust |
Systems, performance, WASM |
Preferred for CLI tools |
Deno |
Runtime & package management |
Replaces Node/npm/Bun |
Gleam |
Backend services |
BEAM or JS target |
OCaml |
Compilers, formal methods |
Strong type system |
Ada |
Safety-critical systems |
SPARK verification |
Julia |
Data processing, batch scripts |
High-performance numerics |
Guile Scheme |
State/meta files |
STATE.scm, META.scm, ECOSYSTEM.scm |
Nickel |
Configuration language |
Type-safe configs |
Bash/POSIX Shell |
Scripts, automation |
Keep minimal |
| Banned | Replacement | Rationale |
|---|---|---|
TypeScript |
ReScript |
Unsound gradual typing |
Node.js |
Deno |
Insecure by default |
npm/Bun/pnpm/yarn |
Deno |
Supply chain risks |
Go |
Rust |
Error handling, generics |
Python (general) |
ReScript/Rust |
No static types |
Java/Kotlin |
Rust/Tauri/Dioxus |
JVM overhead, platform lock-in |
Swift |
Tauri/Dioxus |
Platform lock-in |
|
Note
|
Python is permitted only for SaltStack configuration management (temporary exception). |
| Priority | Tool |
|---|---|
Primary |
Guix (guix.scm) |
Fallback |
Nix (flake.nix) |
JS deps |
Deno (deno.json imports) |
When encountering banned languages:
-
Immediate: Block new code in banned languages
-
Short-term: Convert TypeScript to ReScript
-
Medium-term: Replace Node/npm with Deno
-
Long-term: Rewrite Go/Python in Rust
The Citadel is where RSR meets CCCP — the actual implementation pattern that embodies both.
-
Defensible Position — Local dev environment can’t be taken away by service outages
-
Self-Sufficient — Nix + Podman + SaltRover = complete autonomy
-
Collective Defense — Architecture makes mutual aid easier than isolation
-
Safe Haven — Emotionally and technically safe to experiment
CCCP (Philosophy)
│
▼
RSR (Standards Framework)
├── Defines 150+ compliance criteria
├── CCCP principles embedded
└── Tier mapping (Bronze/Silver/Gold/Rhodium)
│
▼
Your Repository (Implementation)
├── Emotionally safe development
├── Technically excellent
└── Politically autonomousProjects can display CCCP certification when they:
-
Use only approved languages (see Language Policy)
-
Follow offline-first principles
-
Use FOSS tooling with independent governance
-
Implement reversibility patterns
-
Follow TPCF contribution model
-
Mustfile — Type-safe deployment
-
Palimpsest License — Multi-layered licensing
CCCP is a living document. Contributions that align with its principles are welcome.
See CONTRIBUTING.adoc for guidelines.