From cb6147436f5cdc42622e849cfd6612261704b839 Mon Sep 17 00:00:00 2001 From: Ben Sima Date: Sat, 23 Nov 2019 15:57:29 -0800 Subject: Add intro, capitalized namespaces, and reorganize --- README.md | 53 +++++++++++++++++++++++++++++++++-------------------- 1 file 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 -- cgit v1.2.3