summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Sima <ben@bsima.me>2019-11-23 15:57:29 -0800
committerBen Sima <ben@bsima.me>2019-11-23 15:57:29 -0800
commitcb6147436f5cdc42622e849cfd6612261704b839 (patch)
treeb00fb7cdf4965fb16c918f2bd2586ae2aaeb204f
parenta89f4f145f586767097fef3760cd3fbea17c7cb3 (diff)
Add intro, capitalized namespaces, and reorganize
-rw-r--r--README.md53
1 files changed, 33 insertions, 20 deletions
diff --git a/README.md b/README.md
index 6a458fb..7413894 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,30 @@
-# Source Layout
+# Biz
+
+The end is financial independence. The means: write everything down,
+first in English, then in code. Automate it until we don't have to work
+any longer.
+
+Compounding returns are magical. Wealth is found in asymmetries.
+
+## Goals of the workflow
+
+- have minimal ceremony
+- default to asynchrony, but allow for synchronous work when necessary
+- automate the boring stuff
+- standardize environments, tooling, and versions to minimize friction
+ while collaborating
+- support the longevity and self-sustainability of the project
+
+Ideally, each contributor should be able to go off grid for a day or a
+week or more, continue working offline, submit their work when finished,
+and have no or minimal conflicts. This also refers to the resilience of
+the production systems.
+
+We should never need "out of office" email auto-replies, or urgent
+contact. No pager duty, no daily stand-ups. Yes, this policy will affect
+what code we write, not just how we write it; that is by design.
+
+## Layout
The source tree maps to the DNS namespace that we own. The purpose of
this mapping is to keep things organized hierarchically in how they are
@@ -18,7 +44,12 @@ of "do one thing and do it well" is advised.
For building the code, we use `nix` and basically copy the namespace
hierarchy into the main build file `./default.nix`.
-# Development
+Namespaces are always capitalized. I would prefer always lowercase, but
+`ghc` _really_ wants capitalized files, so we appeas `ghc`. In Scheme
+this actually translates quite well and helps distinguish between types
+and values.
+
+## Development
To build code, do:
@@ -42,24 +73,6 @@ use it like:
ag -l | entr -r ./rise Com.InfluencedByBooks
-# Goals of the developer workflow:
-
-- have minimal ceremony
-- default to asynchrony, but allow for synchronous work when necessary
-- automate the boring stuff
-- standardize environments, tooling, and versions to minimize friction
- while collaborating
-- support the longevity and self-sustainability of the project
-
-Ideally, each contributor should be able to go off grid for a day or a
-week or more, continue working offline, submit their work when finished,
-and have no or minimal conflicts. This also refers to the resilience of
-the production systems.
-
-We should never need "out of office" email auto-replies, or urgent
-contact. No pager duty, no daily stand-ups. Yes, this policy will affect
-what code we write, not just how we write it; that is by design.
-
TODO: document how we use the following:
- Org