Notes
This is my digital garden. You can read more about this collection of notes. You might be interested in What’s top of mind for me now.
- A good hyperlink has enough context to work around broken URLs
- A good markup language is resilient against failure
- An enum with two choices is different from a boolean
- A #shipped channel for celebration and release notes
- Asynchronous working environments make it easier to divide up time
- A “users” table is a smell
- Avoid naughty words in hex digest strings by changing the set of characters
- Backwards compatibility (for behavior) is tough to get right
- Build processes should only generate new files
- Code in a good programming language does not reveal its author
- Double-entry bookkeeping is accounting’s law of conservation of energy
- Factorio teaches you about tech debt
- For a good gaming session, set a goal
- Good human-usable tokens are not random strings
- Grammar must serve communication
- Have a dot-com domain for your full name
- Hierarchies are resilient
- Importing notes from Bear
- It is hard in Nanoc to use reusable view components
- Lightweight markup languages are inadequate for technical writing
- Logging and caching are (usually) acceptable side effects
- Minimal language with arrays in Ruby
- “Mirroring” is using hyperlinks for the mind
- Nanoc needs file paths to be known before compilation starts
- Nanoc needs --json so that the CLI can be used programmatically
- Nanoc sites take too long to load
- Nanoc’s terminology is inconsistent with the industry
- Nanoc’s use of Ruby is not an appealing choice these days
- Notes are not articles
- Offices and creativity are at odds
- Phrase suggestions as open questions
- Ruby can be slow for short-running apps because it needs to load (require) dependencies
- Short-lived branches are indispensable for refactoring
- Sourdough bread
- Spreadsheets are fragile because they only deal with cells
- stderr is for all diagnostic output
- Taking a break is better than excess context switching
- The filesystem is global mutable state
- There are many embedded plaintext metadata formats
- Too easy in Nanoc to get undefined behavior
- Use stdin and stdout, but allow overriding
- Why can’t I git-push to a remote filesystem?
- You are not paid to be busy
- You might not need React