+17
.github/workflows/handbook-publish.yml
+17
.github/workflows/handbook-publish.yml
···
1
+
name: Deploy davidgasquez.com
2
+
3
+
on:
4
+
push:
5
+
branches:
6
+
- main
7
+
8
+
jobs:
9
+
trigger-deploy:
10
+
runs-on: ubuntu-latest
11
+
steps:
12
+
- name: Trigger Cloudflare Pages deploy hook
13
+
env:
14
+
DEPLOY_HOOK_URL: ${{ secrets.DEPLOY_HOOK_URL }}
15
+
run: |
16
+
set -euo pipefail
17
+
curl -X POST -sS "${DEPLOY_HOOK_URL}"
+28
-2
Artificial Intelligence Models.md
+28
-2
Artificial Intelligence Models.md
···
5
5
- Classic ML system where humans are designing how the information is organized (feature engineering, linking, graph building) scale poorly ([the bitter lesson](http://www.incompleteideas.net/IncIdeas/BitterLesson.html)). LLMs are able to learn how to organize the information from the data itself.
6
6
- [LLMs may not yet have human-level depth, but they already have vastly superhuman breadth](https://news.ycombinator.com/item?id=42625851).
7
7
- Learning to prompt is similar to learning to search in a search engine (you have to develop a sense of how and what to search for).
8
+
- LLMs have encyclopedic knowledge but suffer from hallucinations, jagged intelligence, and "amnesia" (no persistent memory).
8
9
- AI tools amplify existing expertise. The more skills and experience you have on a topic, the faster and better the results you can get from working with LLMs on that topic.
9
10
- [LLMs are useful when exploiting the asymmetry between coming up with an answer and verifying the answer](https://vitalik.eth.limo/general/2025/02/28/aihumans.html) (similar to how a sudoku is difficult to solve, but it's easy to verify that a solution is correct).
11
+
- [Software 2.0 automates what we can verify](https://x.com/karpathy/status/1990116666194456651). If a task/job is verifiable, then it is optimizable directly or via reinforcement learning, and a neural net can be trained to work extremely well.
10
12
- [LLMs are good at the things that computers are bad at, and bad at the things that computers are good at](https://www.ben-evans.com/benedictevans/2025/2/17/the-deep-research-problem). Also good at things that don't have wrong answers.
11
13
- Context is king. Managing the context window effectively is crucial for getting good results.
12
14
- Add websites as context with [jina.ai](https://jina.ai/) or [pure.md](https://pure.md/)
···
15
17
- LLMs amplify existing expertise rather than replacing it.
16
18
- Be aware of training cut-off dates when using LLMs.
17
19
- "AIs" can be dangerous in underspecified environments (e.g: pausing games to last longer in the level) but those are the places where we will use them most. If something is well specified, there might be better solutions/optimizations (maths, code, ...).
20
+
- [When the main purpose of writing is to demonstrate your thinking (building trust, applying for a job), don't use LLM output](https://x.com/HamelHusain/status/1976720326106173673). Use LLMs when you need to communicate info, or do admin stuff, where the person really just wants info and doesn't need to be convinced "how you think". LLMs are good at writing but bad at thinking.
21
+
- LLMs are helpful when you want the output/result and don't need to do the work yourself (e.g: [going to the gym](https://danielmiessler.com/blog/keep-the-robots-out-of-the-gym) doesn't work if the weights are automatically lifted).
22
+
- LLMs as "stateless functions". Fixed weights, no updating. LLMs are in-context learners.
18
23
19
24
## Prompting
20
25
···
46
51
- Consider new technologies or contrarian ideas, not just the conventional wisdom.
47
52
- You may use high levels of speculation or prediction, just flag it for me.
48
53
- Map out all the interconnected ideas around the core principles. What other topics, assumptions, or implications does it silently touch upon, challenge, or depend on?
54
+
- [Now that you wrote the code, what would you do better?](https://x.com/steipete/status/1982563870138081790)
49
55
50
56
## Coding Tips
51
57
52
58
- Using LLMs for coding is difficult and unintuitive, requiring significant effort to master.
53
59
- English is becoming the hottest new programming language. [Use it](https://addyo.substack.com/p/the-70-problem-hard-truths-about).
60
+
- [Prompts are code](https://mariozechner.at/posts/2025-06-02-prompts-are-code/). Markdown and JSON files are state.
54
61
- Use comments to guide the model to do what you want.
55
62
- Don't delegate thinking, delegate work.
56
63
- Describe the problem very clearly and effectively.
···
61
68
- Provide the desired function signatures, API, or docs. Apply the TDD loop and make the model write tests and the code until the tests pass.
62
69
- Prioritize exploration over execution (at first). Iterate towards precision during the brainstorming phase. Start fresh when switching to execution.
63
70
- Many LLMs now have very large context windows, but filling them with irrelevant code or conversation can confuse the model. Above about 25k tokens of context, most models start to become distracted and become less likely to conform to their system prompt.
71
+
- [Use Progressive Disclosure](https://www.humanlayer.dev/blog/writing-a-good-claude-md) to ensure that the agent only sees tasks or project-specific instructions when it needs them.
72
+
- Prefer pointers to files than copies (no code snippets, ...).
64
73
- Make the model ask you more questions to refine the ideas.
65
74
- Take advantage of the fact that [redoing work is extremely cheap](https://crawshaw.io/blog/programming-with-llms).
66
75
- If you want to force some "reasoning", ask something like "[is that a good suggestion?](https://news.ycombinator.com/item?id=42894688)" or "propose a variety of suggestions for the problem at hand and their trade-offs".
···
71
80
- Balancing log verbosity is crucial. Informative yet concise logs optimize token usage and inference speed.
72
81
- [You need quick and clear feedback loops](https://lucumr.pocoo.org/2025/6/12/agentic-coding/) (fast tool responses, clean logs, ...).
73
82
- Give them the ability to interactively test the code they are writing too.
74
-
- Linters, type checkers, auto-formatters - give coding agents helpful tools to run and they'll use them.
83
+
- Linters, type checkers, auto-formatters - give coding agents helpful tools to run and they'll use them. Always use deterministic tools whenever you can!
75
84
- Prefer functions with clear, descriptive and longer than usual function names over classes. Avoid inheritance and overly clever hacks.
76
85
- Write legible (text based) relevant content and link it with anything else (code, diagrams, ...).
77
86
- Use a checklist. Plan, iterate, and refine.
78
87
- [Fail early and often. Agents are pretty good at getting oriented, and failure is cheap. Throw out your problem, and let it work at it. If it fails, start over, adding the tidbits of information it couldn’t figure out on its own](https://sketch.dev/blog/seven-prompting-habits).
79
88
- Go concurrent. Many agents can work in parallel on different tasks or even the same task with different approaches (you can then choose the best one).
80
-
- [LLMs actively reward existing top tier software engineering practices](https://simonwillison.net/2025/Oct/7/vibe-engineering/):
89
+
- Applying software engineering best practices is key. [LLMs actively reward existing top tier software engineering practices](https://simonwillison.net/2025/Oct/7/vibe-engineering/):
81
90
- Automated testing.
82
91
- Planning in advance.
83
92
- Comprehensive documentation.
···
89
98
- The ability to ship to a preview environment.
90
99
- An instinct for what can be outsourced (to AI vs what needs human attention).
91
100
- An good (updated) sense of estimation.
101
+
- Some [[programming]] rules for code design from the Unix philosophy help here:
102
+
- Modularity: Write simple parts connected by clean interfaces.
103
+
- Clarity: Clarity is better than cleverness.
104
+
- Separation: Separate policy from mechanism. Separate interfaces from engines.
105
+
- Simplicity: Design for simplicity. Add complexity only where you must.
106
+
- Transparency: Design for visibility to make inspection and debugging easier.
107
+
- Fold knowledge into data so program logic can be stupid and robust.
108
+
- When a program has nothing surprising to say, it should say nothing.
109
+
- When you must fail, fail noisily and as soon as possible.
110
+
- Prototype before polishing. Get it working before you optimize it.
111
+
- Distrust all claims for "one true way".
112
+
- Build "partial autonomy" products where humans stay in the loop to verify output, rather than fully autonomous agents.
113
+
- [If you need to gather context, do that first in its own session](https://mariozechner.at/posts/2025-11-30-pi-coding-agent). Create an artifact that you can later use in a fresh session to give your agent all the context it needs without polluting its context window with tool outputs.
114
+
- In a world of abundant, near-unlimited coding capacity, human taste becomes most of the game.
92
115
93
116
## Agents
94
117
···
110
133
- Tools come in three flavors: context retrieval (finding information), feedback loops (verifying actions), and planning (structuring work over longer horizons).
111
134
- Tool overload confuses models. Just because you can connect every tool doesn't mean you should. Each tool description consumes context window space and can confuse the model about which tool to use when.
112
135
- Unix philosophy beats vertical integration. The most powerful coding agents follow Unix principles, simple, composable tools that do one thing well.
136
+
- The way you wrap, feed, and observe a powerful model often matters more than fancy prompt tricks or extra bells and whistles on the model itself.
137
+
- Decomposing your agent into discrete steps improves reliability and efficiency. If there is a bit of work that happens often and is easier to _eval_ than your entire task, that's a good thing to break out and optimize.
113
138
114
139
## Use Cases
115
140
···
155
180
- [LiveBench](https://livebench.ai/#/) ([SWE](https://liveswebench.ai/))
156
181
- [Kagi LLM Benchmark](https://help.kagi.com/kagi/ai/llm-benchmark.html)
157
182
- [Scale AI Leaderboard](https://scale.com/leaderboard)
183
+
- [The Emerging Science of Machine Learning Benchmarks](https://mlbenchmarks.org/)
+5
Blogging.md
+5
Blogging.md
···
42
42
- The title can also convey your writing style and tone.
43
43
- Be cautious with overly clever or punny titles if you don't have an established audience.
44
44
- Consider title-driven creation: first choose a compelling title, then write content that delivers on its promise.
45
+
- [Good titles are pointers to a latent space](https://taylor.town/how-to-title). Titles travel on their own through [[news]] feeds and social networks. Many people share or curate from the headline alone, so it must stand on its own. Choose headlines that respect reader [[focus]] and align with your [[values]]. Good titles:
46
+
- Make a strong claim about the content
47
+
- Are almost too specific
48
+
- Use unusual word combinations
49
+
- Evoke curiosity
45
50
- The inverted pyramid works well for blog posts. Put the tweet-length version of the post in the title or first paragraph. Get to the point quickly, then elaborate. Readers can bail out at any point of the text and still take home most of what mattered, while the meticulous crowd can have their nitpicks addressed toward the end.
46
51
- [You're not just writing for today's invisible audience](https://web.archive.org/web/20250219111210/https://andysblog.uk/why-blog-if-nobody-reads-it/). You're writing for:
47
52
- Future you. Your posts become a time capsule of your evolving mind.
+3
-1
Communication.md
+3
-1
Communication.md
···
1
1
# Communication
2
2
3
-
![[Quotes#^a6f960]]
3
+
> To effectively communicate, we must realize that we are all different in the way we perceive the world and use this understanding as a guide to our communication with others — Tony Robbins
4
4
5
5
Communication is the science of transmitting knowledge to other humans. It goes by many names: debate, negotiation, [[Resolving Disagreement|discussion]], [[Talking|talking]], [[Learning|education]], [[listening]], and many more. Communication is a skill that is learnable.
6
6
···
16
16
- Break up a giant nuanced block into sections.
17
17
- If something is critical, make it visual.
18
18
- **Beware [semantic diffusion](https://martinfowler.com/bliki/SemanticDiffusion.html)**. Popular terms lose their precise meaning as they spread through repeated misinterpretation. Complex ideas get simplified, then distorted, like a game of telephone. The more desirable a term sounds, the more likely it gets misappropriated. Keep pointing back to original definitions rather than abandoning diffused terms.
19
+
- [Use plain language for complex concepts](https://www.scientificdiscovery.dev/p/salonis-guide-to-data-visualization) — most ideas can be understood by most people if explained clearly. But keep jargon when precision matters (e.g., distinguishing mean from median); in those cases, add a brief definition alongside the technical term.
20
+
- [[Data Visualization]] can communicate faster than 1,000 words; [that power comes with responsibility](https://www.scientificdiscovery.dev/p/salonis-guide-to-data-visualization) — misleading charts spread just as easily as accurate ones.
19
21
- If you want an answer, you have to [[Asking Questions|ask a question]]. People typically have a lot to say, but they'll volunteer little.
20
22
21
23
## Resources
+8
Culture.md
+8
Culture.md
···
10
10
- Foster a culture of [people who care](https://grantslatton.com/nobody-cares).
11
11
- Culture conforms to the shape of communication. E.g: open, transparent communication fosters more trust and collaboration.
12
12
- You get a good culture when people want to participate in it because it is a good culture.
13
+
- If a culture officially says to do one thing, but actually people do something else, then the latter is more decisive.
14
+
- Culture is shaped by [[Incentives]], but then incentives are themselves implemented by people, who are guided by culture.
15
+
- You want an environment [where cultures improve and compete](https://vitalik.eth.limo/general/2025/12/17/societies.html), but not on the basis of violent force, and also not exclusively on low-level forms of memetic fitness (eg. virality of individual posts on social media, moment-by-moment enjoyment and convenience), but rather on some kind of fair playing field that creates sufficient space to showcase the longer-term benefits that a thriving culture provides.
16
+
- Truly instantiating a culture with any level of depth requires not just talking about the culture's themes, but actually living them. This requires deep immersion, instantiating the culture's values and aesthetics and practices at a level that goes far beyond a few decorations and posters.
17
+
- [Cultures are not museum pieces](https://vitalik.eth.limo/general/2025/12/17/societies.html). They are the working machinery of everyday life. Cultures are there to serve their people, not touristic onlookers appreciating their existence from far away.
18
+
- Cultural innovation works better when it arises out of a collection of habits, attitudes and goals that are shared by a particular group, and adapted to the group's needs. Over-indexing on legibility and explicit ideology often leads to problems.
19
+
- [Universal culture is the collection of the most competitive ideas and products](https://slatestarcodex.com/2016/07/25/how-the-west-was-won/). It's what spreads when barriers to communication fall. It's distinct from any traditional culture (including Western). Universal culture is high-entropy: it survives and spreads without protection. All other cultures are low-entropy: they survive only if someone keeps pushing energy into the system to protect them.
20
+
- Universal culture has adapted to diverse environments through social atomization: everybody does their own thing, and the community exists to protect them and perform lowest common denominator functions everyone can agree on.
+1
-1
Curiosity.md
+1
-1
Curiosity.md
···
1
1
# Curiosity
2
2
3
-
![[Quotes#^307613]]
3
+
> Everyone you will ever meet knows something you don't. Your job is to discover what it is, and it won't be obvious. Bill Nye.
4
4
5
5
- Never stop [[learning]], practice [[Thinking|rational thinking]] and internalize [[mental models]] and other concepts that will help you think more effectively.
6
6
- Knowledge is a powerful tool. The more you [feel like a noob](http://paulgraham.com/noob.html), the better. Feeling stupid now is better than feeling stupid in 10 years.
+2
-1
Dashboards.md
+2
-1
Dashboards.md
···
9
9
- The data will move 1 of three directions; up, down or stay the same. Ahead of time, what will the stakeholder do in each case? Are all three answers the same?
10
10
- Strive to create dashboards that are either standalone or include links to provide the relevant context. Without meaning, data is just digits.
11
11
- Ideally, push visualizations to the tools that have the context (e.g. a chart in a Slack message, a chart in a Jira ticket, a chart in a HubsPot, etc).
12
-
- [Make your charts professional](https://bsky.app/profile/peck.phd/post/3lbfgjdnvy22k).
12
+
- [Make your charts professional](https://bsky.app/profile/peck.phd/post/3lbfgjdnvy22k). [[Data Visualization]] is important.
13
13
- [Add all the possible context into the dashboard](https://www.youtube.com/watch?v=Kub2bXrKmOE):
14
14
- Instructions.
15
15
- Purpose and explanation of the data being shown.
···
23
23
- Metadata (owner, related OKRs, TTL, …).
24
24
- Make them so it's easy to go one layer down (X went down in Y location, or for Z new users, etc).
25
25
- Recreate dashboard from first principles periodically.
26
+
- Concise and to the point dashboards! Stuffing a dashboard with a bunch of random metrics is a guaranteed way to waste everyone's time.
26
27
- When plotting a rate, add the top of funnel and bottom of funnel numbers to make sure things are as expected.
27
28
- A large change is not necessarily worth investigating, and a small change is not necessarily benign. What you want to know is if the change is exceptional.
28
29
- Be clear with your stakeholder about whether this is a one-off vs. something that should be referenced more than once.
+9
-4
Data Culture.md
+9
-4
Data Culture.md
···
8
8
- [Data's impact is tough to measure — it doesn't always translate to value](https://dfrieds.com/articles/data-science-reality-vs-expectations.html)
9
9
- The value of "insights" is often unknown.
10
10
- The Data Team should be building and iterating the [Data Product](https://locallyoptimistic.com/post/run-your-data-team-like-a-product-team/).
11
-
- Notebooks are a workshop. Production systems are the factory. Not everything needs to be put into production. Not everything should be a notebook. You need both. Lean in to the strength of each.
11
+
- Notebooks are a workshop. Production systems are the factory. Not everything needs to be put into production. Not everything should be a notebook. You need both. Lean into the strength of each.
12
12
- Data is fundamentally a collaborative design process rather than a tool, an analysis, or even a product. [Data works best when the entire feedback loop from idea to production is an iterative process](https://pedram.substack.com/p/data-can-learn-from-design).
13
13
- [To get buy in, explain how the business could benefit from better data](https://youtu.be/Mlz1VwxZuDs) (e.g: more and better insights). Start small and show value.
14
14
- Run _[Purpose Meetings](https://www.avo.app/blog/tracking-the-right-product-metrics)_ or [Business Metrics Review](https://youtu.be/nlMn572Dabc).
···
54
54
- On the other hand, data analysis and data science are domain level problems and cannot be centralized.
55
55
- Create a single space to [[Data Practices|share the results of analysis and decisions made based on them]].
56
56
- Log changes so everyone can jump in and be aware of what's going on.
57
-
- Log assumptions and lessons learned somewhere. This information should loop back into the data product.
57
+
- [Log assumptions and lessons learned somewhere](https://commoncog.com/no-learning-dont-close-loops/). This information should loop back into the data product.
58
58
- Make the warehouse the source of truth for all the teams.
59
59
- What data is Finance/HR/Marketing using to set their OKRs? Put that on the warehouse and model it.
60
60
- [[Metrics]] should be derived from the most realistic data sources. E.g: using internal databases instead of product tracking for "Users Created".
61
61
- Do you want better data? Hire people interested in data!
62
62
- Having managers tell the data team to "Find Insights" is a telltale mark of bad data management and organizational structure.
63
+
- The method to improve _anything_ over time:
64
+
1. What are you trying to accomplish?
65
+
2. How will you know a change is an improvement?
66
+
3. What changes can you make that might lead to improvement?
63
67
- Good use of data is, ultimately, a question of good epistemology. ("Is this true? What can we conclude? How do we know that?") Good epistemology is hard. It must be taught.
64
68
- **When things are going well, no one cares about data**. The right time to present data is when things are starting to go bad. Use your early warning detection systems to understand when it looks like it's gonna be time for data to step in and save the day and then position data as a solution in the context of whatever meaning makes sense. The stakeholders are decision makers and they don't have a ton of time. They're looking to make decisions, they're looking to solve problems.
65
69
- [So much of data work is about accumulating little bits of knowledge and building a shared context in your org so that it's possible to have the big, earth shattering revelations we all wish we could drive on a predictable schedule](https://twitter.com/imightbemary/status/1536368160961572864).
66
70
- A big purpose of data is knowledge. Knowledge is **"theories or models that allow you to predict the outcomes of your business actions"**. Insights may originate from data but are confirmed through actions.
67
71
- You won't have the best allocation of resources in a reactive team. Data teams need extra [[slack]]. [Balance user requests with actual needs](https://scientistemily.substack.com/p/product-management-skills-for-data).
68
-
- Do weekly recaps in Slack in to highlight key items, company-wide progress toward north-stars, improvements in certain areas, new customer highlights. All positive and fun stuff.
72
+
- Do weekly recaps in Slack to highlight key items, company-wide progress toward north-stars, improvements in certain areas, new customer highlights. All positive and fun stuff.
69
73
- How can we measure the data team impact?
70
74
- Making a [[Writing a Roadmap|roadmap]] can help you telling if you are hitting milestone deadlines or letting them slip.
71
75
- Embedded data team members need to help other teams build their roadmap too.
···
95
99
- [Aim for a culture of celebrating measurable progress and learnings, versus celebrating shipping](https://erikbern.com/2021/07/07/the-data-team-a-short-story.html).
96
100
- Align company on key actions. Every stakeholder should know how to explore that data.
97
101
- Do pre-mortems. Where would we see the impact of _X_ going wrong? Model that and plot it on a dashboard.
98
-
- You can force coordination by making a chart and start the discussion with it. Having a default chart will foce people to fight on the definition and also provides a starting point. Discussions are much better when there are based on data and definitions.
102
+
- You can force coordination by making a chart and start the discussion with it. Having a default chart will force people to fight on the definition and also provides a starting point. Discussions are much better when there are based on data and definitions.
99
103
- Coordination happens when people agree on data, direction, and how to move to the desired place.
100
104
- [Send surveys](https://docs.google.com/forms/d/e/1FAIpQLSfufs_0zOGlFiE6oqrdZU7xCi399CBYbIlZkAMe15GTRRcPZA/viewform) from time to time trying to get pain points and know where issues are.
101
105
- E.g: Do you have access to the data I need to make decisions in your role?
···
153
157
- Progress in data isn't linear. As a research discipline, you might spend hours making no progress and then have a breakthrough. Or worse, prove your entire approach won't work.
154
158
- [Apply a research mindset to data](https://jxnl.co/writing/2024/10/25/running-effective-ai-standups). Focus on input metrics, build scientific intuition, and embrace uncertainty.
155
159
- [How can science – loosely, the production of facts – do more to "steer" the outcomes of these processes?](https://jscaseddon.co/2024/02/science-for-steering-vs-for-decision-making/)
160
+
- You don't hit a quantitative goal by focusing on the goal. You hit a quantitative goal by focusing on the process. Focus on finding the controllable input metrics and drive that.
156
161
- Data is not superior or inferior to intuition or qualitative sensemaking; it is a third sense for operators. Effective decision-making uses all three: intuition, qualitative sensemaking, and data. [Data is just an added sense](https://commoncog.com/data-is-an-added-sense/). Treat data as a tool for building and verifying intuition, not as a replacement for it. Over-reliance on any single sense—data, intuition, or qualitative feedback—limits understanding.
157
162
- Underlying most of the problems around data, there is the question: [how do we represent reality with data, without flattening it](https://denniseirorere.com/posts/graph-the-true-data-and-reality/)?
158
163
+1
-1
Data Engineering.md
+1
-1
Data Engineering.md
···
25
25
- **[[Modularity]]**: Steps are independent, declarative, and [[Idempotence|idempotent]]. This makes pipelines composable.
26
26
- **Consistency**: Same conventions and design patterns across pipelines. If a failure is actionable by the user, clearly let them know what they can do. Schema on write as there is always a schema.
27
27
- **Efficiency**: Low event latency when needed. Easy to scale up and down. A user should not be able to configure something that will not work. Don't mix heterogeneous workloads under the same tooling (e.g: big data warehouses doing simple queries 95% of their time and 1 big batch once a day).
28
-
- **Flexibility**: Steps change to conform data points. Changes don't stop the pipeline or losses data. Fail fast and upstream.
28
+
- **Flexibility**: Steps change to conform to data points. Changes don't stop the pipeline or lose data. Fail fast and upstream.
29
29
30
30
### Data Flow
31
31
+2
-2
Data Package Manager.md
+2
-2
Data Package Manager.md
···
63
63
- **Declarative**. Transformations should be defined as code and be idempotent. Similar to how Pachyderm/Kamu/Holium work.
64
64
- E.g: The transformation tool ends up orchestrating containers/functions that read/write from the storage layer, Pachyderm style.
65
65
- **Environment agnostic**. Can be run locally and remotely. One machine or a cluster. Streaming or batch.
66
-
- **Templated**. Having a repository/market of open transformations could empower a bunch of use cases ready to plug in to datasets:
66
+
- **Templated**. Having a repository/market of open transformations could empower a bunch of use cases ready to plug into datasets:
67
67
- Detect outliers automatically on tabular data.
68
68
- Resize images.
69
69
- Normalize sound files.
···
87
87
- Make sure the datasets are there for the long run. This might take different forms (using a domain name, IPFS, ...).
88
88
- **Subscribable**. Datasets are not just derived from upstream data, they should actually be updated every time the upstream data is updated (e.g: recomputing a metric of wildfire risk whenever new satellite imagery becomes available).
89
89
- **Dual Role Support**. Recognize that data providers are often data users and vice versa, similar to how GitHub understands that code writers are also code consumers. Design interfaces and tools that support this dual role effectively.
90
-
- **Data Product**. A data product is a collection of data created explicitly to be used by someone else. Incentivize data products as they are the atomic unit of consumption for data.
90
+
- **Data Product**. A data product is a collection of data created explicitly to be used by someone else (dataset, dashboard, report, benchmark, ...). Incentivize data products as they are the atomic unit of consumption for data.
91
91
- Data is an _experience good_. Its true value often remains uncertain until after it has been used and analyzed. This characteristic creates information asymmetries between data collectors (like local communities) and potential buyers or users, making quality assurance and standardization crucial for building digital trust in data markets.
92
92
93
93
## Simple Package Manager Design
+1
-16
Data Practices.md
+1
-16
Data Practices.md
···
82
82
4. **What if I want to know more?** A **link to additional information** can be valuable for people who have time for more than a quick scan and want to understand how you developed the insight, or do some of their own related exploration.
83
83
5. **What if I have a question?** Explicitly **inviting questions** and responses is crucial. It's the best part of sharing an insight! This is where you get to learn about things your colleagues know that you don't, or what they're curious about but has not yet risen to the level of becoming a data request from them.
84
84
6. **What if posting this prompts a whole bunch of follow-up questions, or exposes incorrect assumptions?** If you have hit on something that's interesting to a lot of people there likely will be questions that spin off, new ways to slice the data you're looking at, or assumptions you have made that need to be corrected.
85
+
- Apply [[Data Visualization]] principles so shared charts stay clear when they travel.
85
86
86
87
### Slack Template
87
88
···
94
95
95
96
_Questions, concerns, ideas? Thread on!_ 🧵
96
97
```
97
-
98
-
## Charting Principles
99
-
100
-
[Some principles to keep in mind when creating charts](https://www.eugenewei.com/blog/2017/11/13/remove-the-legend).
101
-
102
-
- Don't include a legend; instead, label data series directly in the plot area. Usually labels to the right of the most recent data point are best. Some people argue that a legend is okay if you have more than one data series. My belief is that they're never needed on any well-constructed line graph.
103
-
- Use thousands comma separators to make large figures easier to read
104
-
- Related to that, never include more precision than is needed in data labels. For example, Excel often chooses two decimal places for currency formats, but most line graphs don't need that, and often you can round to 000's or millions to reduce data label size. If you're measuring figures in the billions and trillions, we don't need to see all those zeroes, in fact it makes it harder to read.
105
-
- Format axis labels to match the format of the figures being measured; if it's US dollars, for example, format the labels as currency.
106
-
- Look at the spacing of axis labels and increase the interval if they are too crowded. As Tufte counsels, always reduce non-data-ink as much as possible without losing communicative power.
107
-
- Start your y-axis at zero (assuming you don't have negative values)
108
-
- Try not to have too many data series; five to eight seems the usual limit, depending on how closely the lines cluster. On rare occasion, it's fine to exceed this; sometimes the sheer volume of data series is the point, to show a bunch of lines clustered. These are edge cases for a reason, however.
109
-
- If you have too many data series, consider using small multiples if the situation warrants, for example if the y-axes can match in scale across all the multiples.
110
-
- Include explanations for anomalous events directly on the graph; you may not always be there in person to explain your chart if it travels to other audiences.
111
-
- Always note, usually below the graph, the source for the data.
112
-
- Include targets for figures as asymptotes to help audiences see if you're on track to reach them.
+89
Data Visualization.md
+89
Data Visualization.md
···
1
+
# Data Visualization
2
+
3
+
Charts can be more memorable, shareable, and quickly understood than written explanations. They help explore data, explain concepts, and [share information effectively](https://www.scientificdiscovery.dev/p/salonis-guide-to-data-visualization). Clear visuals strengthen [[Communication]] and [[Dashboards]].
4
+
5
+
## Why Visualize Data
6
+
7
+
- Visualizing data helps spot patterns, trends, and unusual data points that are hard to see in averages or summaries alone. A chart can reveal what an aggregate hides (e.g: [Anscombe's quartet](https://en.wikipedia.org/wiki/Anscombe%27s_quartet)).
8
+
- Diagrams can explain concepts faster than text. A few-second visual can replace a long, confused explanation.
9
+
- A good chart communicates faster than 1,000 words, but that power comes with responsibility. Misleading charts spread just as easily as accurate ones.
10
+
- Plotting data helps spot potential errors and artefacts before publishing.
11
+
12
+
## Chart Type Selection
13
+
14
+
- Pick the chart type and [[Metrics|metric]] that answers the exact question; rates, counts, and shares reveal different truths, so show multiple small views when one cut feels incomplete.
15
+
- Use familiar or practical units (minutes, not standard deviations) when possible. They're easier to interpret and sense-check.
16
+
17
+
## Clarity
18
+
19
+
- Keep labels horizontal and close to the data. Direct labels beat legends.
20
+
- Don't include a legend, instead, [label data series directly](https://www.eugenewei.com/blog/2017/11/13/remove-the-legend) in the plot area (usually to the right of the most recent data point). Exception: many categories referring to many elements (e.g., maps).
21
+
- Use small multiples when too many lines overlap. Splitting into panels makes individual trends easier to follow, though it trades off direct comparison between entities.
22
+
- Sort categories logically (inherent order) or alphabetically (easier to skim).
23
+
- [Data looks better naked](https://www.darkhorseanalytics.com/blog/data-looks-better-naked).
24
+
- Reduce non-data-ink as much as possible without losing communicative power.
25
+
- Don't include more precision than needed.
26
+
- Format axis labels to match the figures being measured (e.g., currency for dollars).
27
+
- Look at axis label spacing and increase intervals if crowded.
28
+
29
+
## Color
30
+
31
+
- Match colors to concepts (plants → green, bad → red) so readers aren't forced into a [Stroop test](https://en.wikipedia.org/wiki/Stroop_effect).
32
+
- Use [color-blind friendly palettes](https://davidmathlogic.com/colorblind/). About 4-5% of the population has some form of color blindness.
33
+
- Direct labeling also helps color-blind readers distinguish categories.
34
+
35
+
## Axes
36
+
37
+
- Start your y-axis at zero (assuming no negative values).
38
+
- Avoid deceptive scale tricks.
39
+
- Leave breathing room on axes instead of extreme zoom.
40
+
- The lowest point shouldn't appear to be the lowest possible value.
41
+
- Pair relative effects with absolute numbers (or prediction intervals instead of confidence intervals) to show real-world risk.
42
+
43
+
## Context
44
+
45
+
- Include explanations for anomalous events directly on the graph.
46
+
- For unfamiliar chart types, guide readers with annotations. Add a mini-tutorial if needed.
47
+
- Include targets as asymptotes to help audiences see if you're on track.
48
+
- Make the chart standalone. Add purpose, units, timeframe, and source so it can travel without losing meaning and slot into [[Dashboards]] or memos without extra explanation.
49
+
- Titles for graphs should be the conclusion or key takeaway.
50
+
- Always note the data source below the graph.
51
+
52
+
## Reproducibility
53
+
54
+
- Publish provenance with the chart (data source, assumptions, and ideally a link to code) so others can verify or reuse it and keep [[Data Practices]] consistent.
55
+
- A chart with no source isn't much better than claiming a trend was revealed in a dream.
56
+
57
+
## Common Pitfalls
58
+
59
+
- Skip arrows or other glyphs that imply trends you can't support.
60
+
- Don't use 3D charts. They distract and make values harder to read.
61
+
- Avoid confidence intervals when showing variability. They're often [misinterpreted as ranges](https://www.dangoldstein.com/papers/Hofman_Goldstein_Hullman_Visualizing_Uncertainty_Mislead_Scientific.pdf). Consider prediction intervals or underlying percentages instead.
62
+
- Try not to have too many data series; 5-8 is the usual limit depending on clustering.
63
+
64
+
## Guiding Questions
65
+
66
+
Ask yourself when creating a visualization:
67
+
68
+
1. Is my chart type meaningful for the question?
69
+
2. Can I make it clearer?
70
+
3. If complicated, can I guide the viewer through it?
71
+
4. Does the chart work as a standalone?
72
+
5. Is my chart's presentation justifiable?
73
+
6. Is my chart reproducible?
74
+
75
+
## Tools
76
+
77
+
- [Datawrapper](https://www.datawrapper.de/). Quick interactive charts with great defaults.
78
+
- [Raw Graphs](https://app.rawgraphs.io/). Open-source, unusual chart types.
79
+
- [Observable Plot](https://observablehq.com/plot/). JavaScript-based exploratory charts.
80
+
- [Kepler](https://kepler.gl/). Geospatial visualization.
81
+
82
+
## Resources
83
+
84
+
- [Saloni's Guide to Data Visualization](https://www.scientificdiscovery.dev/p/salonis-guide-to-data-visualization)
85
+
- [The Data Visualization Catalogue](https://datavizcatalogue.com/) and [Project](https://datavizproject.com/)
86
+
- [Visualization Curriculum](https://jjallaire.github.io/visualization-curriculum/)
87
+
- [Guides for Visualizing Reality](https://flowingdata.com/2020/06/01/guides-for-visualizing-reality/)
88
+
- [Datawrapper's Do's and Don'ts](https://www.datawrapper.de/blog/category/datavis-dos-and-donts)
89
+
- [The Science of Visual Data Communication: What Works](https://journals.sagepub.com/doi/10.1177/15291006211051956)
+78
-33
Deep Funding.md
+78
-33
Deep Funding.md
···
1
1
# Deep Funding
2
2
3
-
The goal of [Deep Funding](https://deepfunding.org/) is to develop a system that can allocate resources to public goods with a level of accuracy, fairness, and open access that rivals how private goods are funded by markets, ensuring that high-quality open-source projects can be sustained. Traditional price signals don't exist, so we need "artificial markets" that can simulate the information aggregation properties of real markets while being resistant to the unique failure modes of public goods funding.
4
-
5
-
In Deep Funding, multiple mechanisms work together:
3
+
The goal of [Deep Funding](https://deepfunding.org/) is to develop a system that can allocate resources to public goods with a level of accuracy, fairness, and open access that rivals how private goods are funded by markets, ensuring that high-quality open-source projects can be sustained. Traditional price signals don't exist, so we need "artificial markets" that can simulate the information aggregation properties of real markets while being resistant to the unique failure modes of public goods funding. [Deep Funding is an Impact Evaluator](https://hackmd.io/@dwddao/HypnqpQKke).
6
4
7
-
1. A mechanism that generates an up to date and comprehensive DAG of relevant dependencies given a source node.
8
-
2. Another mechanism that fills the graph with relevant weights. This might be broken down into:
9
-
1. Collecting human judgement accurately.
10
-
2. Scaling Human Judgement to fill the rest of the graph. This can be something like a prediction market, an AI model, ... Basically anything that predicts the human judgement
11
-
3. Reward Distribution.
5
+
In Deep Funding, multiple mechanisms (involving data, mechanism design, and open source) work together. Each layer can be optimized and iterated independently.
12
6
13
-
This problem touches data, mechanism design, and open source! Each layer can be optimized and iterated independently.
7
+
1. A mechanism that generates an up-to-date and comprehensive DAG of relevant dependencies given a source node
8
+
2. A mechanism that fills the graph with relevant weights. These weights represent the latent item utilities. There can be many ways of getting to them!
9
+
- Aggregating human preferences (polls, pairwise comparisons, ...)
10
+
- Using prediction markets
11
+
- Getting weights from an AI model
12
+
- Collaborative Filtering
13
+
- Having experts fill weights manually
14
+
3. A mechanism that takes that weight vector as input and distributes money to the projects
14
15
15
-
In its current shape, the graph's vertices are projects and the edges are the relative impact of each project in its parent. The same approach could be used for anything that matches the graph shape (e.g: science research).
16
+
Deep Funding can be viewed as a [Software-2.0](https://karpathy.medium.com/software-2-0-a64152b37c35) approach to public-goods allocation. Instead of manually designing funding rules, evaluation processes, and governance structures, define an objective function, tests, eval sets, and scoring criteria. Then, let any kind of mechanism (AI models, prediction markets, statistical algorithms, human raters, etc.) compete to solve them. The human work shifts from hand-crafting decision procedures to specifying what "good allocation" looks like and collecting high-quality data. Everything else becomes an optimization problem where participants will try to produce weight predictions that best fit the data. Deep Funding can be seen as **an evolving benchmark suite for truthfully estimating public-goods value**, and progress comes from iterating on the evals rather than hard-coding the system itself.
16
17
17
18
## Desired Properties
18
19
···
28
29
- Skin in the Game. Participants have something to lose from bad assessments
29
30
- Project Independence (no need to participate in the process to get funded)
30
31
32
+
## Current Approach
33
+
34
+
So far, Deep Funding has been implemented like this:
35
+
36
+
1. A list of projects is chosen. This is usually provided by an external entity or process (e.g: the [best model from the ML competition](https://cryptopond.xyz/modelfactory/detail/2564617) chooses the next 100 projects). So far a DAG/graph structure has not been needed since all projects have been compared for their impact on the "Ethereum Ecosystem".
37
+
- In its current shape, the graph's vertices are projects and the edges are the relative impact of each project in its parent. The same approach could be used for [anything that matches the graph](https://x.com/VitalikButerin/status/1981946493780345303) shape (e.g: science research).
38
+
2. Jurors do pairwise comparisons between projects. An aggregation method is chosen (Huber loss, L2 norm in log space, ...) to derive the "ground truth" relative project weights.
39
+
3. An ML competition and [a Prediction Market](https://ethresear.ch/t/deep-funding-a-prediction-market-for-open-source-dependencies/23101) are kicked off. Modelers and traders are evaluated against a holdout set of pairwise comparisons.
40
+
4. Participants are rewarded based on how close they get to the "jurors' ground truth".
41
+
42
+
### Open Problems
43
+
44
+
After participating in the ML competition and Prediction Market, and doing a few deep dives into the data and methodology, I think these are the main open problems.
45
+
46
+
- **Juror Reliability**
47
+
- So far, expert juror's pairwise comparisons have been inconsistent, noisy, and low in statistical power
48
+
- Getting comparisons has been quite expensive in time and resources
49
+
- The jury (secret) pool diversity is not guaranteed
50
+
- Asking jurors "how much better" introduces order‑dependence and scale mismatch
51
+
- Messy jurors have [disproportionate impact on the weights](https://davidgasquez.github.io/deepfunding-trial-data-analysis/#-robustness-checks)
52
+
- Weights are not consistent due to the limited amount of data collected and the variance on it
53
+
- Large graphs (hundreds of projects) make getting accurate weights from the pairwise evaluation infeasible
54
+
- E.g. GG24 round has ~100 projects and [would need more than 3000 "actively sampled" comparisons to get to a relative error of 10%](https://arxiv.org/pdf/1505.01462)
55
+
- This approach/paradigm requires more training examples than jurors can produce in a reasonable span of time
56
+
- **Mechanism Settings**
57
+
- Some parameters have a large effect and haven't been adjusted
58
+
- The aggregation formula (huber, log loss, bradley terry, ...) has a very large impact on both modelers/traders and project rewards
59
+
- Need more process around who chooses the aggregation formula and why it is chosen
60
+
- In the pilot (huber loss), some projects got weights on a scale jurors didn't feel reasonable (e.g: EIPs repo got 30%)
61
+
- The prediction market might cause good modelers to not participate as time of entry is more important than having a good model
62
+
- There might be an incentive to game the market at the last minute
63
+
- Might be worth it to increase your project share given the money distribution
64
+
- **Weights Evaluation**
65
+
- [How do we measure success?](https://davidgasquez.com/weight-allocation-mechanism-evals/) If the goal of pattern recognition was to classify objects in a scene, it made sense to score an algorithm by how often it succeeded in doing so. What is the equivalent for Deep Funding? What is the [metric we are optimizing](https://mlhp.stanford.edu/src/chap4.html#sec-metric-elicitation)?
66
+
- Once the weights are set, there isn't [a process to evaluate how "fit" those are](https://davidgasquez.com/weight-allocation-mechanism-evals/)
67
+
- E.g: the current idea is to gather a connected graph of pairwise comparisons, why not use that to reward projects directly and skip the Prediction Market?
68
+
- We need falsifiable hypotheses to validate Deep Funding is "better"
69
+
- **Graph Maintenance**
70
+
- If the process takes a few weeks, the weights might change significantly (e.g: a project releases a major version)
71
+
- Jurors are also affected by temporal drift and their preferences evolve over time
72
+
31
73
## Ideas
32
74
33
-
- Let the dependent set their weight percentage if they're around.
34
-
- The most elegant mechanism is probably something like a [prediction markets](https://docs.fileverse.io/0x7248Fe92e7087d02D3604396b057295026FC62A1/49#key=DgfQgJ-bCAVr0NNFU0vp1HNW_Sh23GVieRmA_QXsDbHIRVyhv37c1XnOBM8lW6PT).
35
-
- Solves the current issues there of missing dependencies (due to technical issues or because they're more abstract), preference drift, adversarial situations, ...
36
-
- Replaces the "Collecting accurate project dependencies" issue with an ongoing market
37
-
- Instead of one canonical graph, allow different stakeholder groups (developers, funders, users) to maintain their own weight overlays on the same edge structure. Aggregate these views using quadratic or other mechanisms.
38
-
- If there is a plurality of these "dependency graphs" (or just different set of weights), the funding organization can choose which one to use! The curators gain a % of the money for their service. This creates a market like mechanism that incentivizes useful curation.
75
+
- An alternative is to take an ([inspired by RLHF](https://www.itai-shapira.com/pdfs/pairwise_calibrated_rewards_for_pluralistic_alignment.pdf)) approach. **Use only a few significant data points to choose and reward the final models** instead of deriving weights for the entire set of children/dependencies of a project. Resolve the market with only a few, well-tested pairs!
76
+
- Fix weight distributions (Zipf law) and make modelers/jurors focus on predicting the rank. Pick the model that aligns the most with the pairwise data collected.
77
+
- Win rates can be derived from pairwise comparisons
78
+
- Lean on the [[Pairwise Comparisons]] playbook (binary questions over intensity, active sampling, filtering noisy raters) for any human labeling.
79
+
- Instead of one canonical graph, allow different stakeholder groups (developers, funders, users) to maintain their own weight overlays on the same edge structure. Aggregate these views using quadratic or other mechanisms
80
+
- If there is a plurality of these "dependency graphs" (or just different set of weights), the funding organization can choose which one to use! The curators gain a % of the money for their service. This creates a market-like mechanism that incentivizes useful curation.
81
+
- Let the dependent set their weight percentage if they're around
82
+
- Let the applicants apply with wathever "abstractions level" they want (e.g: a whole framework, one repository, an entire organization). Rely on pairwise comparisons to resolve conflicts.
39
83
- Have hypercerts or similar. The price of these (total value) sets the weights across dependencies (`numpy`'s certificates trade at 3x the price of a utility library, the edge weight reflects this)
40
-
- If there are reviewers/validators/jurors, need to be public so they have some sort of reputation.
41
-
- Reputation system / ELO for Jurors which score is closer to the final one. This biases towards averages.
42
-
- Stake based flow:
43
-
- Anyone can propose a new edge, and anyone can stake money on that. If they get funding, you get rewarded. Could be also quadratic voting style where you vouch for something.
84
+
- If there are reviewers/validators/jurors, need to be public so they have some sort of reputation
85
+
- Reputation system for Jurors
86
+
- E.g: whose score is closer to the final one. This biases towards averages
87
+
- Use graph algorithms ([MaxFlow](https://maxflow.one/how-it-works)) to weight jurors. This trust layer makes all human inputs (juror ratings, edge proposals, curation) sybil-resistant and accountable. People don't get "one vote per account": they get influence proportional to how much the network trusts them, based on who publicly vouches for whom. Vouches are binary and simple, but they're recursively weighted by the voucher's own trust and penalized if someone vouches for too many others, which makes spam and fake networks costly.
88
+
- Account for jurors' biases with Hierarchical Bradley Terry or similar
89
+
- Allow anyone to be a juror, select jurors based on their skills
90
+
- Stake-based flow:
91
+
- Anyone can propose a new edge, and anyone can stake money on that. If they get funding, you get rewarded. Could also be quadratic voting style where you vouch for something.
44
92
- Should the edge weights/stake decay over time unless refreshed by new attestations?
45
93
- Quadratic funding or similar for the stake weighting to avoid plutocracy
46
94
- Anyone can challenge an edge by staking against it
···
48
96
- Doing [something similar to Ecosyste.ms](https://blog.ecosyste.ms/2025/04/04/ecosystem-funds-ga.html) might be a better way
49
97
- A curated set of repositories. You fund that dependency graph + weights.
50
98
- Could be done looking at the funding or license (if there is a license to declare your deps).
51
-
- Graph Completion (Scaling Human Judgement) might be done in different ways:
52
-
- Constraint-Based Optimization (`scipy.optimize.minimize`)
53
-
- Collaborative Filtering (like a recommendation system where you're predicting weights between nodes)
54
-
- Matrix Factorization (NMF)
55
-
- Prediction Markets
56
-
- AIs
57
-
- Run the mechanism on "eras" / batches so the graph changes and the weights evolves.
99
+
- Run the mechanism on "eras" / batches so the graph changes and the weights evolve.
58
100
- How to expand to a graph of dependencies that are not only code?
59
101
- Academic papers and research that influenced design decisions
60
102
- Cross-language inspiration (e.g., Ruby on Rails influencing web frameworks in other languages)
61
103
- Standards and specifications that enable interoperability
62
-
- Allow projects to "insure" against their critical dependencies disappearing or becoming unmaintained. This creates a market signal for dependency risk and could fund maintenance of critical-but-boring infrastructure.
104
+
- Allow projects to "insure" against their critical dependencies disappearing or becoming unmaintained. This creates a market signal for dependency risk and could fund maintenance of critical-but-boring infrastructure
63
105
- Composable Evaluation Criteria
64
-
- Rather than a single weighting mechanism, allow different communities to define their own evaluation functions (security-focused, innovation-focused, stability-focused) that can be composed. This enables plurality while maintaining comparability.
65
-
- Create a bounty system where anyone can claim rewards for discovering hidden dependencies (similar to bug bounties).
106
+
- Rather than a single weighting mechanism, allow different communities to define their own evaluation functions (security-focused, innovation-focused, stability-focused) that can be composed. This enables plurality while maintaining comparability
107
+
- Create a bounty system where anyone can claim rewards for discovering hidden dependencies (similar to bug bounties)
66
108
- This crowdsources the graph discovery problem and incentivizes thorough documentation.
67
-
- Projects can opt out of the default distribution and declare a custom one. Organizers can allow or ignore that.
68
-
- Self declaration needs a "contest process" to resolve issues/abuse.
109
+
- Projects can opt out of the default distribution and declare a custom one for dependencies. Organizers can allow or ignore that
110
+
- Self-declaration needs a "contest process" to resolve issues/abuse
69
111
- Harberger Tax on self declarations? Bayesian Truth Serum for Weight Elicitation?
70
-
- Projects continuously auction off "maintenance contracts" where funders bid on keeping projects maintained. The auction mechanism reveals willingness-to-pay for continued operation. Dependencies naturally emerge as projects that lose maintenance see their dependents bid up their contracts.
112
+
- Projects continuously auction off "maintenance contracts" where funders bid on keeping projects maintained. The auction mechanism reveals willingness-to-pay for continued operation. Dependencies naturally emerge as projects that lose maintenance see their dependents bid up their contracts
113
+
- [Explore Rank Centrality](https://arxiv.org/pdf/1209.1688). Theoretical and empirical results show that with a graph that has a decent spectral gap `O(n log(𝑛))` pair samples suffice for accurate scores and ranking.
114
+
- Report which mechanism is closer (distance metric) to each juror
115
+
- Reward maintainers of the actual projects for pairwise choices
+2
Focus.md
+2
Focus.md
···
10
10
- [[Meditation|Mindfulness meditation]], e.g. breath-counting, seems to be a go-to technique for developing focus.
11
11
- Periodic exposure to nature and out-of-doors in a relaxing, undemanding way can restore attention capability.
12
12
- [Attention is a scarce resource](https://youtu.be/ZWI4_Oe-Qbs). Everything in the world is fighting to get yours.
13
+
- [When a problem becomes the top idea in your mind](https://www.benkuhn.net/attention/), you reach the 50%+ focus tier that drives [[Productivity]]. You can only hold one such slot at a time. Stay with one problem even when blocked to force [[Problem Solving]] breakthroughs instead of context-switching.
14
+
- Batch low-value chores into a fixed window and close open loops fast to protect [[Time]].
13
15
- Some [sounds or music](https://mynoise.net/) can help you focus.
14
16
- [The main thing is keeping the main thing the main thing](https://mattrickard.com/keep-the-main-thing-the-main-thing).
+1
Governance.md
+1
Governance.md
···
5
5
- There is an idea that governance — public or corporate — [is driven by the self-interested effort of leaders to acquire and keep their power](https://fs.blog/the-dictators-handbook/).
6
6
- [Governance means conflict](https://twitter.com/armaniferrante/status/1450878886535839745). It also means resolution. Accept the former, focus on the latter, via transparency.
7
7
- [There is still much room to try different things around Governance](https://www.cold-takes.com/ideal-governance-for-companies-countries-and-more/).
8
+
- A multi-level liquid democracy where every voter chooses a delegate, and 50-200 delegates can empower second-level delegates, [biases for sophistication](https://vitalik.eth.limo/general/2025/12/17/societies.html) (because each level ends up more sophisticated than the previous) and guards against populism (because a delegate can't amass extreme power by gaining a huge following directly) while avoiding empowering pre-selected aristocracies.
8
9
9
10
## Resources
10
11
+7
-5
House.md
+7
-5
House.md
···
2
2
3
3
- [Living in the same place as the people you love matters](https://waitbutwhy.com/2015/12/the-tail-end.html).
4
4
- As with many other things, there are [patterns that will help you structure it](http://web.archive.org/web/20230411022833/http://www.architectureweek.com/topics/patterns.html).
5
+
- Any time you have a problem, search for a solution.
6
+
- Be pro-active about modifying your environment. You can drastically improve your environment for usually little effort and money.
5
7
6
8
## Buying
7
9
8
-
- Be clear about why you're buying a home. Every large [[Making Decisions|decision]] you have to make about home ownership should somewhat tie in to this.
9
-
- Look at houses based on the lifestyle you have not the lifestyle you aspire to have.
10
+
- Be clear about why you're buying a home. Every large [[Making Decisions|decision]] you have to make about homeownership should tie into this.
11
+
- Look at houses based on the lifestyle you have, not the one you aspire to have.
10
12
- Balance commuting against other goods and costs (Commuting Paradox).
11
-
- The availability heuristic says that people over count scenarios that are easy and vivid to imagine, and under count scenarios that don't involve any readily available examples or mental images. The real estate version of this fallacy involves exciting opportunities that you will rarely or never use. For example, a house with a pool may bring to mind the opportunity to hold pool parties. But most such plans will probably fall victim to akrasia, and even if they don't, how often can one person throw pool parties without exhausting their friends' interest? Pool parties may be fun to imagine, but they'll probably only affect a few hours every couple of months. Other factors, like the commuting distance and whether your children end up in a nice school, may affect several hours every day.
13
+
- The availability heuristic says that people overcount scenarios that are easy and vivid to imagine, and undercount scenarios that don't involve any readily available examples or mental images. The real estate version of this fallacy involves exciting opportunities that you will rarely or never use. For example, a house with a pool may bring to mind the opportunity to hold pool parties. But most such plans will probably fall victim to akrasia, and even if they don't, how often can one person throw pool parties without exhausting their friends' interest? Pool parties may be fun to imagine, but they'll probably only affect a few hours every couple of months. Other factors, like the commuting distance and whether your children end up in a nice school, may affect several hours every day.
12
14
- Good illumination (daylight has a strong effect on mood) and a view of natural beauty (nature increases mental functioning and concentration) aren't just pleasant luxuries, but can make important practical differences in your [[Health]]. Light and plants make a difference.
13
15
- Aim for a small sunny place in the winter!
14
16
- Aim for a place where you can set up a fire. Humans have spent most of their history around fire sharing stories.
15
17
- Research nearby future facilities. Schools, shopping malls, coffee shops, transportation, ...
16
18
- Check the electrical and water installations of the building.
17
-
- Treat it as a [[Finances|finance]] asset. Think for how much it'll sell.
19
+
- Treat it as a [[Finances|financial]] asset. Think about how much it'll sell for.
18
20
19
21
### Mortgage
20
22
21
-
- Aim for the minimum links with the bank.
23
+
- Aim for minimal ties with the bank.
22
24
23
25
### Resources
24
26
+7
-7
IPFS.md
+7
-7
IPFS.md
···
1
1
# IPFS
2
2
3
-
- It's a file system with [content based addressing](https://www.youtube.com/watch?v=5Uj6uR3fp-U). Instead of domains, you use the content as the domain. Because content can be very very long, we run a small program on it to produce a unique identifier based on that content (a hash). These identifiers are long enough that the possibility of two pieces of content creating the same one is virtually impossible.
3
+
- It's a file system with [content-based addressing](https://www.youtube.com/watch?v=5Uj6uR3fp-U). Instead of domains, you use the content as the domain. Because content can be very long, we run a small program on it to produce a unique identifier based on that content (a hash). These identifiers are long enough that the possibility of two pieces of content creating the same one is virtually impossible.
4
4
- Files are automatically deduplicated.
5
-
- [It chunks, hashes and organizes blobs in a smart way](https://docs.google.com/presentation/d/1Gx8vSqrWZ7X-3SCgITXqQdinZQeXIAA7ITqL25SsPN8/edit#slide=id.g741b4d76cd_0_13).
5
+
- [It chunks, hashes, and organizes blobs in a smart way](https://docs.google.com/presentation/d/1Gx8vSqrWZ7X-3SCgITXqQdinZQeXIAA7ITqL25SsPN8/edit#slide=id.g741b4d76cd_0_13).
6
6
- Once something is added, it can't be changed anymore.
7
-
- At the heart of everything, is the concept of content identifiers (CIDs).
7
+
- At the heart of everything is the concept of content identifiers (CIDs).
8
8
- A CID isn't just a hash of a file—it's a combination of the hash, metadata about how the content is hashed, details about encoding, and instructions for interpreting the data.
9
-
- They provide Portability and Openness.
9
+
- They provide portability and openness.
10
10
- Keeping files available is a challenge. If the nodes storing a file go down, it'll disappear from the network.
11
-
- Filecoin idea was to help with this adding incentives to the equation.
11
+
- Filecoin's idea was to help with this by adding incentives to the equation.
12
12
- [Content addressing enables robust data integrity checks and efficient networking: systems can verify they received exactly what they asked for and avoid downloading the same content twice. The linked data part lets you link to stuff by its hash. You can build very big graphs with these primitives](https://dasl.ing/).
13
13
14
14
## [IPLD](https://ipld.io/)
···
21
21
22
22
## LibP2P
23
23
24
-
- Modular peer to peer networking layer.
25
-
- Multiple users across the decentralized ecosystem.
24
+
- Modular peer-to-peer networking layer.
25
+
- Used across the decentralized ecosystem.
26
26
- [Many implementations](https://libp2p.io/implementations/) of each module.
+9
Ideas.md
+9
Ideas.md
···
2
2
3
3
A few personal random ideas. A multitude of bad ideas is necessary for one good idea!
4
4
5
+
## How Ideas Happen
6
+
7
+
- Most "new" ideas are the next reachable step from what already exists. Stairs, not teleportation.
8
+
- Ideas show up when partial thoughts collide: people, artifacts (docs, code, past debates), ...
9
+
- Many good ideas start half-baked. You keep them around until they meet the missing piece.
10
+
- Failure is information. Feedback turns wandering into convergence.
11
+
- Repurpose a thing built for one job into a different job. Reuse as invention.
12
+
- Stable primitives and standards let lots of people build lots of things faster and safer.
13
+
5
14
## Key Properties of Ideas
6
15
7
16
- Timeless.
+15
-21
Impact Evaluators.md
+15
-21
Impact Evaluators.md
···
2
2
3
3
Impact Evaluators are frameworks for [[Coordination|coordinating]] work and aligning [[Incentives]] in complex [[Systems]]. They provide mechanisms for retrospectively evaluating and rewarding contributions based on impact, helping solve coordination problems in [[Public Goods Funding]].
4
4
5
-
It's hard to do [[Public Goods Funding]], open-source software, research, etc. that don't have a clear, immediate financial return, especially high-risk/high-reward projects. Traditional funding often fails here. Instead of just giving money upfront (prospectively), Impact Evaluators create systems that look back at what work was actually done and what impact it actually had (retrospectively). It's much easier to judge the impact in a retrospective way!
5
+
It's hard to do [[Public Goods Funding]], open-source software, research, etc. that don't have a clear, immediate financial return, especially high-risk/high-reward projects. Traditional funding often fails here. Instead of just giving money upfront (prospectively), Impact Evaluators create systems that look back at what work was actually done and what impact it actually had (retrospectively). **[It's much easier to judge the impact in a retrospective way](https://medium.com/ethereum-optimism/retroactive-public-goods-funding-33c9b7d00f0c)**!
6
6
7
+
- The extent to which an intervention is _causally responsible_ for an specific outcome (intended or unintended) is a hard thing to figure out. There are many classic approaches; Theory of Change, Data Analysis, ML, ...
7
8
- The goal is to **create a system with strong [[Incentives]] for people/teams to work on valuable, uncertain things** by distributing a reward according to the demonstrable impact.
8
9
- Impact Evaluators work well on concrete areas where you can turn into easily measurable metrics. Impact Evaluators are powerful and will overfit. When the goal is not well aligned, they can be harmful. E.g: Bitcoin increasing the energy consumption of the planet. **Impact Evaluators can become Externalities Maximizers**.
9
10
- **Start local and iterate**.
···
19
20
- [The McNamara Fallacy](https://en.wikipedia.org/wiki/McNamara_fallacy). Never choose metrics on the basis of what is easily measurable over what is meaningful. Data is inherently objectifying and naturally reduces complex conceptions and process into coarse representations. There's a certain fetish for data that can be quantified.
20
21
- Cultivate a culture which welcomes experimentation.
21
22
- Ostrom's Law. "A resource arrangement that works in practice can work in theory"
23
+
- Even in environments with clear and easy to get metrics, someone has to make a decision of why that metric results in a better allocation instead of another similar or a combination. It's all humand judgment / governance!
24
+
- There is no way around defining a metric/loss function to evaluate allocations! Discussions should be focused on this instead of the specific of an allocation mechanism.
22
25
- **Community Feedback Mechanism**.
23
26
- Implement robust feedback systems that allow participants to report and address concerns about the integrity of the metrics or behaviors in the community.
24
27
- Use the feedback to refine and improve the system.
···
63
66
- Gather objective attestations about work (commits, usage stats, dependencies).
64
67
- Apply multiple "evaluation lenses" to interpret the data.
65
68
- Let funders choose which lenses align with their values.
66
-
- When collecting data, [pairwise comparisons and rankings are more reliable than absolute scoring](https://anishathalye.com/designing-a-better-judging-system/).
67
-
- Humans excel at relative judgments, but struggle with absolute judgments.
68
-
- Many algorithms can be used to convert pairwise comparisons into absolute scores.
69
-
- Pairwise shines when all the context is in the UX.
70
-
- [Data is good at providing comprehensive coverage of things that are countable. Data is bad at dealing with nuances and qualitative concepts that experts intuitively understand.](https://gov.optimism.io/t/lessons-learned-from-two-years-of-retroactive-public-goods-funding/9239)
69
+
- Prefer [[Pairwise Comparisons]] for human input over absolute scoring. Standard methods turn pairs into scores/ranks and handle noisy raters.
70
+
- Pairwise comparisons are useful to abstract "impact" and other complex and subjective metrics. Makes the decision more local and easier. More of a hunch based decision.
71
+
- [Data is good at providing comprehensive coverage of things that are countable. Data is bad at dealing with nuances and qualitative concepts that experts intuitively understand.](https://gov.optimism.io/t/lessons-learned-from-two-years-of-retroactive-public-goods-funding/9239)
71
72
- **Design for composability**. Define clear data structures (graphs, weight vectors) as APIs between layers.
72
73
- Multiple communities could share measurement infrastructure.
73
74
- Different evaluation methods can operate on the same data.
74
75
- Evolution through recombination rather than redesign.
76
+
- Goal is evolutionary impact evaluation so people that are good, thrive.
75
77
- To create a permissionless way for projects to participate, staking is a solution.
76
78
- Fix a Data Structure (API) for each layer so they can compose (graph, weight vector).
77
79
- E.g: [[Deep Funding]] problem data structure is a graph. Weights are a vector/dict, ...
···
83
85
- Incentive Compatibility: Designing mechanisms so that participants are motivated to act truthfully, without gaining by misrepresenting their preferences.
84
86
- Individual Rationality: Ensuring that every participant has a non-negative utility (or at least no worse off) by participating in the mechanism.
85
87
- Budget Balance: The mechanism generates sufficient revenue to cover its costs or payouts, without running a net deficit.
88
+
- If you do something with a large "impact" and I do something with less "impact". It's clear you deserve more. How much more, is debatible. Depends on the goals of the organizers!
89
+
- In most of the mechanisms working nowadays (e.g: [[Deep Funding]]), there are arbitrary decisions that affect the allocation.
90
+
- Small rules might have a disproportionate impact.
86
91
- **Legible Impact Attribution**. Make contributions and their value visible.
87
92
- [Transform vague notions of "alignment" into measurable criteria](https://vitalik.eth.limo/general/2024/09/28/alignment.html) that projects can compete on.
88
93
- Designing Impact Evaluators has the side effect of making impact more legible, decomposed into specific properties, which can be represented by specific metrics.
89
94
- Do more to make different aspects of alignment legible, while not centralizing in one single "watcher" (e.g: l2beats, ...).
90
95
- Let projects compete on measurable criteria rather than connections.
91
96
- Create separation of evaluations through multiple independent "dashboard organizations".
97
+
- Take into account that projects have a [marginal utility function](https://youtu.be/jWivz6KidkI).
92
98
- **Incomplete contracts problem**. [It's expensive to measure what really matters](https://meaningalignment.substack.com/p/market-intermediaries-a-post-agi), so we optimize proxies that drift from true goals.
93
99
- Current markets optimize clicks and engagement over human flourishing.
94
100
- The more powerful the optimization, the more dangerous the misalignment.
···
111
117
- **Make evaluation infrastructure permissionless**. Just as anyone can fork code, anyone should be able to fork evaluation criteria. This prevents capture and enables innovation.
112
118
- Anyone should be able to [fork the evaluation system with their own criteria](https://vitalik.eth.limo/general/2024/09/28/alignment.html), preventing capture and enabling experimentation.
113
119
- [IEs are the scientific method in disguise, like AI evals](https://eugeneyan.com/writing/eval-process/).
120
+
- There are two areas of Impact Evaluators where coordination is needed: allocation rules and mechanism selection.
114
121
- **Focus on error analysis**. Like in [LLM evaluations](https://hamel.dev/blog/posts/evals-faq/), understanding failure modes matters more than optimizing metrics. Study what breaks and why.
115
122
- IEs will have to do some sort of "error analysis". [Is the most important activity in LLM evals](https://hamel.dev/blog/posts/evals-faq/#q-why-is-error-analysis-so-important-in-llm-evals-and-how-is-it-performed). Error analysis helps you decide what evals to write in the first place. It allows you to identify failure modes unique to your application and data.
116
123
- **Reduce cognitive load for humans**. Let [algorithms handle scale while humans set direction and audit results](https://vitalik.eth.limo/general/2025/02/28/aihumans.html).
117
-
- Use humans for sensing qualitative properties, machines for bookkeeping and preserve legitimacy by letting people choose/vote on the prefered evaluation mechanism.
124
+
- Use humans for sensing qualitative properties, machines for bookkeeping and preserve legitimacy by letting people choose/vote on the preferred evaluation mechanism.
118
125
- Making it so people don't have to do something is cool. Making it so people can't do that thing is bad. E.g: time saving tools like AI is great but humans should be able to jump in if they want!
119
126
- If people don't want to have their "time saved" have the freedom to express themselves. E.g: offer pairwise comparisons by default but let people expand on feedback or send large project reviews.
120
127
- Information gathering is messy and noisy. It's hard to get a clear picture of what people think. Let people express themselves as much as they want.
···
127
134
- People only reveal their true opinions after seeing the result (you need to show people something and iterate based on their reactions in order to build something they actually want).
128
135
- **Exploration vs Exploitation**. IEs are optimization processes with tend to exploit (more impact, more reward). This ends up with a monopoly (100% exploit). You probably want to always have some exploration.
129
136
- [IEs need to show how the solution is produced by the interactions of people each of whom possesses only partial knowledge](https://news.ycombinator.com/item?id=44232461).
137
+
- Set a consensus over which meta-mechanism is used to evaluate weights (e.g: Brier Score). Judged/rank mechanism/models solely on their performance against the rigorous pre-built eval set. No subjective opinions. Just a leaderboard of the most aligned weight distributions.
130
138
131
139
## Principles
132
140
···
164
172
- [Impact Evaluator Design](https://youtu.be/1soPQ31ZHkQ)
165
173
- [Impact Evaluators](https://youtu.be/dpLtrugjfMc)
166
174
- [Generalized Impact Evaluators, A year of experiments and theory](https://research.protocol.ai/blog/2023/generalized-impact-evaluators-a-year-of-experiments-and-theory/)
167
-
- [Elo vs Bradley-Terry Model](https://www.keiruaprod.fr/blog/2021/06/02/elo-vs-bradley-terry-model.html)
168
-
- [Designing a Better Judging System](https://anishathalye.com/designing-a-better-judging-system/)
169
175
- [Deliberative Consensus Protocols](https://jonathanwarden.com/deliberative-consensus-protocols/)
170
176
- [Credible Neutrality](https://balajis.com/p/credible-neutrality)
171
-
- [Quadratic Payments: A Primer](https://vitalik.eth.limo/general/2019/12/07/quadratic.html)
172
-
- [Quadratic vs Pairwise](https://blog.zaratan.world/p/quadratic-v-pairwise)
173
-
- [Quadratic Funding is Not Optimal](https://jonathanwarden.com/quadratic-funding-is-not-optimal/)
174
-
- [A Mild Critique of Quadratic Funding](https://kronosapiens.github.io/blog/2019/12/13/mild-critique-qf.html)
175
177
- [Funding impact via milestone markets](https://docs.fileverse.io/0x0D97273dee4D1010321f9eBa2e9eaB135C17D6dE/0#key=5GgcacTDy2h1QwWV9vJqGD-YzwomzuIOueMACpjghbJLxfG3ZqbWl1qDC1Le04uR)
176
178
- [Kafka Index](https://summerofprotocols.com/wp-content/uploads/2024/04/Kafka-Index-Nadia-Asparouhova-1.pdf)
177
179
- [The Unreasonable Sufficiency of Protocols](https://summerofprotocols.com/the-unreasonable-sufficiency-of-protocols-web)
178
-
- [Good Death](https://summerofprotocols.com/research/good-death)
179
-
- [Retroactive Public Goods Funding](https://medium.com/ethereum-optimism/retroactive-public-goods-funding-33c9b7d00f0c)
180
-
- [The Public Goods Funding Landscape](https://splittinginfinity.substack.com/p/the-public-goods-funding-landscape)
181
180
- [Coordination, Good and Bad](https://vitalik.eth.limo/general/2020/09/11/coordination.html)
182
181
- [On Collusion](https://vitalik.eth.limo/general/2019/04/03/collusion.html)
183
182
- [Remuneration Rights](https://openrevolution.net/remuneration-rights)
···
192
191
- [Soulbinding Like a State](https://newsletter.squishy.computer/p/soulbinding-like-a-state)
193
192
- [Market Intermediaries in a Post-AGI World](https://meaningalignment.substack.com/p/market-intermediaries-a-post-agi)
194
193
- [Goodhart's Law Not Useful](https://commoncog.com/goodharts-law-not-useful/)
195
-
- [Ten Kilograms of Chocolate](https://medium.com/@florian_32814/ten-kilograms-of-chocolate-75c4fa3492b6)
196
194
- [Bittensor's Anatomy of Incentive Mechanism](https://docs.bittensor.com/learn/anatomy-of-incentive-mechanism)
197
-
- [Frequently Asked Questions (And Answers) About AI Evals](https://hamel.dev/blog/posts/evals-faq/)
198
195
- [Proportionally fair online allocation of public goods with predictions](https://dl.acm.org/doi/abs/10.24963/ijcai.2023/3)
199
196
- [A natural adaptive process for collective decision-making](https://onlinelibrary.wiley.com/doi/10.3982/TE5380)
200
197
- [Tournament Theory: Thirty Years of Contests and Competitions](https://www.researchgate.net/publication/275441821_Tournament_Theory_Thirty_Years_of_Contests_and_Competitions)
···
202
199
- [Asymmetry of verification and verifier's law](https://www.jasonwei.net/blog/asymmetry-of-verification-and-verifiers-law)
203
200
- [Ostrom's Common Pool Resource Management](https://earthbound.report/2018/01/15/elinor-ostroms-8-rules-for-managing-the-commons/)
204
201
- [Community Notes Note ranking algorithm](https://communitynotes.x.com/guide/en/under-the-hood/ranking-notes)
205
-
- [Deep Funding is a Special Case of Generalized Impact Evaluators](https://hackmd.io/@dwddao/HypnqpQKke)
206
-
- [An Analysis of Pairwise Preference](https://papers.ssrn.com/sol3/papers.cfm?abstract_id=3359677)
207
202
- [Analysing public goods games using reinforcement learning: effect of increasing group size on cooperation](https://royalsocietypublishing.org/doi/10.1098/rsos.241195)
208
-
- [CrowdTruth 2.0: Quality Metrics for Crowdsourcing with Disagreement](https://arxiv.org/pdf/1808.06080)
209
203
- [Coevolutionary dynamics of population and institutional rewards in public goods games](https://www.sciencedirect.com/science/article/pii/S095741742302081X)
+4
-3
Incentives.md
+4
-3
Incentives.md
···
2
2
3
3
Incentives matter. Everything around you is driven by incentives. There are rarely true "irrational" decisions. [If a decision looks irrational to you, it's most likely because you don't truly understand the incentives driving that person](https://twitter.com/saranormous/status/1527839900069875713).
4
4
5
-
Behavior is hard to fix. When people say they've learned their lesson they underestimate how much of their previous mistake was caused by emotions that will return when faced with the same circumstances unless incentives have changed.
5
+
Behavior is hard to fix. When people say they've learned their lesson, they underestimate how much of their previous mistake was caused by emotions that will return when faced with the same circumstances unless incentives have changed.
6
6
7
7
> _"Simple, clear purpose and principles give rise to complex and intelligent behavior. Complex rules and regulations give rise to simple and stupid behavior"._ Dee Hock.
8
8
···
20
20
- Intentional system design.
21
21
- Commitment to study the metric.
22
22
- Human values are highly dimensional. Nudging people in the right direction is hard, especially because nudges usually are very low dimensional.
23
+
- [Incentives might be perverse and the effects will be unexpected and contrary to the intentions of its designers](https://en.wikipedia.org/wiki/Perverse_incentive) (e.g. Hacktoberfest spamming Pull Requests on Open Source repositories causing more work for maintainers).
23
24
24
25
## Incentive Framework
25
26
···
29
30
2. **Metrics**. Establish [[Metrics|metrics that you will measure to track success]]. Avoid the McNamara Fallacy—never choose metrics on the basis of what is easily measurable over what is meaningful. Identify a wish list of metrics with no regard for feasibility. Work backwards from there.
30
31
3. **Anti-Metrics**. Establish "anti-metrics" that you measure to track unintended consequences. Anti-metrics force you to consider whether your incentives are fixing one problem here, but creating another problem over there.
31
32
4. **Stakes & Effects**. Consider the stakes. If the failures are costly and the decisions hard to reverse, conduct a heavier analysis.
32
-
5. **Skin in the Game**. To avoid principal-agent problems, the incentive designer should have skin in the game. Never allow an incentive to be implemented where the creator participates in pleasure of the upside, but not the pain in the downside. Skin in the game improves outcomes.
33
-
6. **Clarity & Fluidity**. An incentive is only as effective as the clarity of its dissemination and the ability and willingness to adjust it based on new information. Create even understanding playing fields for all constituents and avoid plan continuation bias.
33
+
5. **Skin in the Game**. To avoid principal-agent problems, the incentive designer should have skin in the game. Never allow an incentive to be implemented where the creator participates in the pleasure of the upside, but not the pain of the downside. Skin in the game improves outcomes.
34
+
6. **Clarity & Fluidity**. An incentive is only as effective as the clarity of its dissemination and the ability and willingness to adjust it based on new information. Create even playing fields for all constituents and avoid plan continuation bias.
+2
-2
Knowledge Graphs.md
+2
-2
Knowledge Graphs.md
···
17
17
- The status quo of the semantic web space is still SPARQL.
18
18
- You can build [a knowledge graph database on top of a relational engine](https://twitter.com/RelationalAI).
19
19
- Knowledge Graphs act as a semantic layer.
20
-
- Tables in SQL (relational databases) are collections of relationships.
21
-
- It is possible to make append only and dynamic KGs with Temporal Knowledge Graphs!
20
+
- Tables in SQL (relational [[Databases]]) are collections of relationships.
21
+
- It is possible to make append-only and dynamic KGs with Temporal Knowledge Graphs!
22
22
23
23
## Projects
24
24
+1
-1
Learning.md
+1
-1
Learning.md
···
63
63
64
64
- We all have a web of concepts in our minds, our [[Knowledge Graphs]]. The collection of all the concepts we understand, all of our existing knowledge and intuitions, connected together. And you have learned something when you can convert it to concepts and **connect it to your existing understanding**. This means not just understanding the concept itself, but understanding where it fits into the bigger picture, where to use it, etc.
65
65
- Knowledge is not as a hunt for a single, ultimate and universal truth. [Is similar to the spirit of ecology: a gradual evolution of stably coexisting diversity that speciates and complexifies as it develops](https://www.radicalxchange.org/media/blog/why-i-am-a-pluralist/).
66
-
- T[he world is full of things that merely appear good but aren't really](https://sarahconstantin.substack.com/p/what-goes-without-saying), and that it's important to vigilantly sift out the real from the fake. Concepts like Goodhart's Law, cargo-culting, greenwashing, hype cycles, Sturgeon's Law, ... are all pointing at the basic understanding that it's easier to seem good than to be good.
66
+
- [The world is full of things that merely appear good but aren't really](https://sarahconstantin.substack.com/p/what-goes-without-saying), and that it's important to vigilantly sift out the real from the fake. Concepts like Goodhart's Law, cargo-culting, greenwashing, hype cycles, Sturgeon's Law, ... are all pointing at the basic understanding that it's easier to seem good than to be good.
67
67
68
68
## Learning Soft Skills
69
69
+1
-1
Life Advice.md
+1
-1
Life Advice.md
+38
-6
Machine Learning.md
+38
-6
Machine Learning.md
···
2
2
3
3
## Production Project Checklist
4
4
5
-
1. Frame the problem. Define a clear and concise objective with clear metrics. [Write it as a design doc](https://applyingml.com/resources/ml-design-docs/).
6
-
1. Get the data. Make the data tidy. Machine learning models are only as reliable as the data used to train them. [The data matters more than the model](https://twitter.com/beeonaposy/status/1353735905962577920). Data matters more than the model.
7
-
1. Explore the data. Verify any assumptions. Garbage in, garbage out.
5
+
1. Frame the problem. Define a clear and concise objective with clear metrics. [Write it as a design doc](https://applyingml.com/resources/ml-design-docs/). To know "what it is good enough" you have to collect and annotate more data than most people and organizations want to do.
6
+
1. Get the data. Make the data tidy. Machine learning models are only as reliable as the data used to train them. [The data matters more than the model](https://twitter.com/beeonaposy/status/1353735905962577920). Data matters more than the model. [The main bottleneck is collecting enough high quality data and getting it properly annotated and verified](https://news.ycombinator.com/item?id=45875618). Then doing proper evals with humans in the loop to get it right.
7
+
1. Explore the data. Verify any assumptions. Garbage in, garbage out. Remove ALL friction from looking at data.
8
8
1. Create a model. [Start with the simplest model!](https://developers.google.com/machine-learning/guides/rules-of-ml/). That will be the [baseline model](https://blog.insightdatascience.com/always-start-with-a-stupid-model-no-exceptions-3a22314b9aaa). Evaluate the model with the defined metric.
9
9
1. Make sure everything works end to end. _You design it, you train it, you deploy it_. [Deploy the model quickly](https://nlathia.github.io/2019/08/Machine-learning-faster.html) and automatically. Add a clear description of the model. [Monitor model performance in production](https://youtu.be/hqxQO7MoQIE).
10
10
1. Make results (models, analysis, graphs, ...) reproducible (code, environment and data). Version your code, data and configuration. Make feature dependencies explicit in the code. Separate code from configuration.
···
16
16
17
17
These points are expanded with more details in courses like [Made With ML](https://madewithml.com/).
18
18
19
-
## Tips
19
+
## Evals
20
20
21
-
- Use pre-commit hooks. Start with the basics — black, isort — then add pydocstyle, mypy, check-ast, ...
22
-
- Version your data! Don't overwrite raw datasets.
21
+
> Don't hope for "great", specify it, measure it, and improve toward it!
22
+
23
+
- Evals make fuzzy goals and abstract ideas specific and explicit. They help you systematically measure and improve a system.
24
+
- Evals are a key set of tools and methods to measure and improve the ability of an AI system to meet expectations.
25
+
- [Success with AI hinges on how fast you can iterate](https://hamel.dev/blog/posts/evals/#iterating-quickly-success). You must have processes and tools for evaluating quality (tests), debugging issues (logging, inspecting data), and changing the behavior or the system (prompt eng, fine-tuning, writing code).
26
+
- Collecting good evals will make you understand the problem better.
27
+
- Working with probabilistic systems requires new kinds of measurement and deeper consideration of trade-offs.
28
+
- Don't work if you cannot define what "great" means for your use case.
29
+
- [Evals replace LGTM-vibes development](https://newsletter.pragmaticengineer.com/p/evals). They systematize quality when outputs are non-deterministic.
30
+
- [Error analysis](https://youtu.be/ORrStCArmP4) workflow: build a simple trace viewer, review ~100 traces, annotate the first upstream failure ([open coding](https://shribe.eu/open-coding/)), cluster into themes ([axial coding](https://delvetool.com/blog/openaxialselective)), and use counts to prioritize. Bootstrap with grounded synthetic data if real data is thin.
31
+
- Pick the right evaluator: code-based assertions for deterministic failures; LLM-as-judge for subjective ones. Keep labels binary (PASS/FAIL) with human critiques. Partition data so the judge cannot memorize answers; validate the judge against human labels (TPR/TNR) before trusting it.
32
+
- Run evals in CI/CD and keep monitoring with production data.
33
+
- [Analyze → measure → improve → automate → repeat](https://newsletter.pragmaticengineer.com/p/evals).
34
+
- Good eval metrics:
35
+
- Measure an error you've observed.
36
+
- Relates to a non-trivial issue you will iterate on.
37
+
- Are scoped to a specific failure.
38
+
- Has a binary outcome (not a 1–5 score).
39
+
- Is verifiable (i.e. human labels for LLM-as-a-Judge)
40
+
41
+
### The [Eval Loop](https://openai.com/index/evals-drive-next-chapter-of-ai/)
42
+
43
+
1. **Specify**.
44
+
- Define what "great" means.
45
+
- Write down the purpose of your AI system in plain terms.
46
+
- The resulting golden set of examples should be a living, authoritative reference of your most skilled experts' judgement and taste for what "great" looks like.
47
+
- The process is iterative and messy.
48
+
2. **Measure**
49
+
- Test against real-world conditions. Reliably surface concrete examples of how and when the system is failing.
50
+
- Use examples drawn from real-world situations whenever possible.
51
+
3. **Improve**
52
+
- Learn from errors.
53
+
- Addressing problems uncovered by your eval can take on many forms: refining prompts, adjusting data access, updating the eval itself to better reflect your goals, ...
54
+
-
23
55
24
56
### ML In Production Resources
25
57
+7
-1
Mechanism Design.md
+7
-1
Mechanism Design.md
···
20
20
- Any mechanism that can help genuinely under-coordinated parties coordinate will, without the right safeguards, also help already coordinated parties (such as many accounts controlled by the same person) [over-coordinate](https://vitalik.eth.limo/general/2019/04/03/collusion.html) with potential ways to "do wrong" (e.g: extract money from the system).
21
21
- You can increase mechanism complexity if you trade it off for identity or collusion resistance. If you figure out a way to make it the mechanism identity resistant then, it'll support more complex setups.
22
22
- [Truthtelling games](https://jonathanwarden.com/truthtelling-games/) can incentivize honesty through coordination games where participants win by giving the same answer as others, with truth serving as a powerful Schelling point (truthtelling is the winning strategy only if everybody else tells the truth). Information elicitation mechanisms can get people to reveal private/subjective information truthfully even without verification.
23
+
- Some of the interesting properties of a mechanism are; local/bottom up decision making, can be combined in different layers (horizontal / vertical), and [[Modularity|modularity]].
23
24
24
25
### Examples
25
26
···
38
39
- [Allocation Mechanisms](https://www.allo.expert/mechanisms)
39
40
- [Generalized Impact Evaluators](https://research.protocol.ai/publications/generalized-impact-evaluators/ngwhitepaper2.pdf) - Framework for retrospective reward mechanisms
40
41
- [Info Finance](https://vitalik.eth.limo/general/2024/11/09/infofinance.html) - Using information aggregation for social decisions
41
-
42
42
43
43
## Toolkit
44
44
···
71
71
- **Reinforcement Learning for Meta-Evaluation** - Use RL to evolve evaluation mechanisms through trial and error. The system learns which evaluation approaches work best in different contexts by treating mechanism selection as a sequential decision problem.
72
72
- **Genetic Algorithms** - Evolution-based optimization for evaluation mechanisms. Breed and mutate successful evaluation strategies, allowing the system to discover novel approaches through recombination and selection pressure.
73
73
- **Schelling Point Coordination Games** - Information elicitation mechanisms where truth naturally emerges as the coordination point. Participants are incentivized to report honestly because they expect others to do the same, making truth the natural focal point.
74
+
75
+
## Resources
76
+
77
+
- [Quadratic Payments: A Primer](https://vitalik.eth.limo/general/2019/12/07/quadratic.html)
78
+
- [Quadratic Funding is Not Optimal](https://jonathanwarden.com/quadratic-funding-is-not-optimal/)
79
+
- [A Mild Critique of Quadratic Funding](https://kronosapiens.github.io/blog/2019/12/13/mild-critique-qf.html)
+4
-3
Metrics.md
+4
-3
Metrics.md
···
1
1
# Metrics
2
2
3
-
![[Quotes#^a5049d]]
3
+
> If you cannot measure it, you cannot improve it — Lord Kelvin.
4
4
5
5
- Metrics are how we express how a company turns its inputs into outputs — how the company creates, captures, transforms, spends, and distributes value.
6
6
- Focus on 3 to 5 metrics. You may also want to consider counter-metrics (or pairing metrics) that keep you from [over-rotating on a singular metric](https://www.dataliftoff.com/wp-content/uploads/2022/10/tennis_balls-1536x2048.jpeg).
···
55
55
- When output metrics are given as goals, teams can often focus on the wrong inputs or thrash between inputs.
56
56
- Focus on usage first (not revenue first). This is the most common version of outputs vs inputs. Usage creates revenue, revenue does not create usage. As a result, the most important metrics in terms of creating growth are not your revenue metrics, they are your usage metrics.
57
57
- On a similar note, there are leading and lagging indicators. Leading indicators are usually input metrics and are harder to measure. Lagging indicators are usually output metrics and easy to measure.
58
-
- Mixing Up Retention and Engagement. Retention and engagement are not the same things. Retention is binary. It answers the question, was this person active within my defined time period? Yes or no. Engagement is is depth. It answers the question, how active were they within the defined timed period? 0→N. Engagement is one of three major inputs into driving retention.
58
+
- Mixing Up Retention and Engagement. Retention and engagement are not the same things. Retention is binary. It answers the question, was this person active within my defined time period? Yes or no. Engagement is depth. It answers the question, how active were they within the defined timed period? 0→N. Engagement is one of three major inputs into driving retention.
59
59
- Customers vs Users. A customer and a user is not the same thing in most business models. A customer is defined as the person/group that is paying you. A user is a person using the product.
60
60
- In subscription products, oftentimes there are multiple users associated with a single customer. Or people are users before they are a customer. You need to separate the definition and language between these two things for teams to clearly act on them.
61
+
- You don't need perfect accuracy sometimes. Moving in the right direction counts (i.e. fitbit heartrate is off but variance is still useful).
61
62
62
63
## Principles for a [Metrics Platform](https://medium.com/airbnb-engineering/airbnb-metric-computation-with-minerva-part-2-9afe6695b486)
63
64
64
65
- **Standardized**: Data is defined unambiguously in a single place. Anyone can look up definitions without confusion.
65
66
- **Declarative:** Users define the “what” and not the “how”. The processes by which the metrics are calculated, stored, or served are entirely abstracted away from end users.
66
67
- **Scalable**: The tool must be both computationally _and_ operationally scalable.
67
-
- **Consistent**: Data is always consistent. If definition or business logic is changed, backfills occur automatically and data remains up-to-date.
68
+
- **Consistent**: If definition or business logic is changed, backfills occur automatically and data remains up-to-date.
68
69
- **Highly available**: Existing datasets are replaced by new datasets with zero downtime and minimal interruption to data consumption.
69
70
- **Well tested**: Users can prototype and validate their changes extensively well before they are merged into production.
70
71
+12
-11
Mindfulness.md
+12
-11
Mindfulness.md
···
1
1
# Mindfulness
2
2
3
-
- Make [[time]] to reflect. Don't waste time doing anything you don't enjoy by momentum. Not doing something that isn't worth doing is a wonderful way to spend your [[time]].
3
+
- Make [[Time]] to reflect. Don't waste time doing anything you don't enjoy by momentum. Not doing something that isn't worth doing is a wonderful way to spend your [[Time]].
4
4
- Look at the big picture and don't climb the current mountain out of inertia (ranks in business, status among friends, ...).
5
5
- [If you haven't done it already, schedule a day and time when you can realistically assess how you want your life to affect you and other people, and what you must change to better achieve this](https://www.lesswrong.com/posts/4psQW7vRwt7PE5Pnj/too-busy-to-think-about-life).
6
6
- Enjoy Life. Enjoy people. Appreciate the fact that [you're alive](https://youtu.be/9D05ej8u-gU). Be grateful and [[Meditation|mindful]] about it.
···
11
11
- **KISS**. What would less/simple look like?
12
12
- When [[Communication|communicating]], do it in a clear and concise way.
13
13
- Sometimes, even if your intention is good, signal might turn into noise and won't be interpreted the way you expect.
14
-
- When [[Problem Solving|facing a problem]], prefer a lean approach with a simple solution and built upon it. Re-framing problems will make easy to give simpler solutions. How would it look like if it was simple?
14
+
- When [[Problem Solving|facing a problem]], prefer a lean approach with a simple solution and build upon it. Re-framing problems will make it easier to give simpler solutions. How would it look like if it was simple?
15
15
- Remove friction. Focus on essentials. Complexity itself has costs. It makes life harder to manage, reduces our degrees of freedom, and so forth. Often people do not factor those costs into their decisions as they incrementally and inattentively complexify their lives. A person with the virtue of simplicity asks, of any decision they make, "does this make my life more complex, and if so is that worth it?"
16
-
- Live smarter, not harder. Don't complain about stuff you can easily fix, [[Automation|automate]], or delegate. Money can buy [[time]].
16
+
- Live smarter, not harder. Don't complain about stuff you can easily fix, [[Automation|automate]], or delegate. Money can buy [[Time]].
17
17
- Keep Calm. Own and deal with your emotions. Focus on what you can control. Try to plan the possible outcomes and don't rush.
18
18
- We don't control and cannot rely on external events, but we can (to a certain extent) control our mind and choose our behavior.
19
19
- [Stoicism is a tool set that helps us direct our thoughts and actions in an unpredictable world](https://www.njlifehacks.com/what-is-stoicism-overview-definition-10-stoic-principles/).
···
22
22
- Don't worry too much about things that won't matter to you or your loved ones in 10 years.
23
23
- Assume positive intent. No one is your enemy, you're an NPC in their game. Everyone is the main character of their own movie (*sonder*).
24
24
- Every person is inherently valuable independent of behavior and beliefs. Create safe spaces for people, and a dangerous space for ideas ([idea labs](https://twitter.com/waitbutwhy/status/1278035160454348800)).
25
-
- When you have a nice thing to say about someone, say it to them right away, instead of waiting. You might not see them again. [Optimize for sincerity](https://www.neelnanda.io/blog/mini-blog-post-10-seek-positive-externalities).
25
+
- When you have a nice thing to say about someone, say it to them right away, instead of waiting. You might not see them again. [Optimize for sincerity](https://www.neelnanda.io/blog/mini-blog-post-10-seek-positive-externalities).
26
26
- Don't punish people for trying. You teach them to not try things or not to try them with you.
27
27
- Most of the harm we do as humans is not due to cruelty, but rather to indifference.
28
28
- Prefer delayed gratification, making short term sacrifices to get long term benefits.
29
29
- Don't be a [whatever person](http://web.archive.org/web/20230929110127/https://medium.com/@courtneyseiter/the-tribe-of-whatever-or-how-i-learned-to-make-a-decision-8ab0a76f1f0c#.vj7olnmm5). Don't be afraid to [[Making Decisions|make decisions]] and actively take them! All decision making — even if small ones — can be a good practice for the bigger ones you'll face.
30
30
- Be the friend who makes a decisive call when everyone else is waffling about what to eat.
31
31
- Don't judge. Reality is neutral. To a tree, there's no concept of right or wrong or good or bad. You're born, you have a whole set of sensory experiences... and then you die. How you choose to interpret that is up to you. And you do have that choice. Why are you taking something so seriously?
32
-
- One person morally disgusting behavior is another person perfectly normal lifestyle. Most of the time you can't decide what is wrong or good because you have very limited experiences.
32
+
- One person's morally disgusting behavior is another person's perfectly normal lifestyle. Most of the time you can't decide what is wrong or good because you have very limited experiences.
33
33
- Be aware of your internal state. Making this more visible makes a better [[Feedback Loops|feedback loop]]. Ask yourself, as many times as possible every day "Am I conscious now?". Our internal state shapes how we experience the external state.
34
-
- Humans are messy and life is messy. Yet we try to fit everything into [human made buckets](https://slatestarcodex.com/2014/11/21/the-categories-were-made-for-man-not-man-for-the-categories/), losing most of the nuance in the process.
34
+
- Humans are messy and life is messy. Yet we try to fit everything into [human-made buckets](https://slatestarcodex.com/2014/11/21/the-categories-were-made-for-man-not-man-for-the-categories/), losing most of the nuance in the process.
35
35
- [The discrete categories we apply to continuous concepts—from the colors we see and the sounds we hear, to the academic subjects we define and the races we project onto people—are both arbitrary and deeply consequential.](https://benn.substack.com/p/gerrymandering)
36
36
- The categories we create, though necessary to keep us from being overwhelmed by this infinite spectrum, affect what we can actually see. **The artificial boundaries we define eventually come to define us.**
37
37
- [When you think in categories, you underestimate how different (in many other dimensions) two facts are when they are in the same category, you overestimate how different they are when there is a boundary between them and, when you pay attention to these boundaries you don't realize about the big picture](https://www.youtube.com/watch?v=NNnIGh9g6fA).
38
38
- We rationalize things through one lens. Real causes are gray and hard to understand.
39
-
- Recognize that tradeoffs happen everywhere. List them explicitly.
40
-
- We trade [[time]] against money against effort against happiness against social capital — we can do so blindly, and hope for the best, or we can think about them carefully and deliberately, and take advantage of opportunities to get more of everything (arbitrage). Identify all your relevant currencies, and note which are being spent faster or are more valuable.
39
+
- Recognize that trade-offs happen everywhere. List them explicitly.
40
+
- We trade [[Time]] against money against effort against happiness against social capital — we can do so blindly, and hope for the best, or we can think about them carefully and deliberately, and take advantage of opportunities to get more of everything (arbitrage). Identify all your relevant currencies, and note which are being spent faster or are more valuable.
41
41
- Appreciate what you have. [Don't overestimate the hedonic impact of future events](https://waitbutwhy.com/2013/11/life-is-picture-but-you-live-in-pixel.html). [Showing gratitude for the good things you have is the most powerful happiness boosting activity there is](https://youtu.be/WPPPFqsECz0).
42
42
- There's no second chance at life. [This is the one chance you have to live as a talking monkey in space at the best point in history as the smartest species on the planet using magic on a daily basis like the internet and jet planes and smartphones with access to all human knowledge at your fingertips and the chance to talk about how cool being alive is](https://youtu.be/VLAAy_pM-k8).
43
43
- Do not change because of what others or society want, change because of what you want. It's easy to get carried by the environment and start doing things you don't want to do.
44
44
- Ignore the irrational and [unproductive obsession](https://waitbutwhy.com/2014/06/taming-mammoth-let-peoples-opinions-run-life.html) with what other people think of you. Figure out what actually matters to you and live according to it.
45
45
- [What gives you energy and what sucks your energy?](https://twitter.com/rrhoover/status/1346268904239161344) Figure it out and act accordingly.
46
46
- Avoid conspicuous consumption.
47
-
- Overcome the bystander effect: there is something that everyone wants to *happen* but nobody wants to be the one to *do* it. Develop the reflex of noticing bystander apathy in your environment, and actively do the thing. E.g. ask a question when there's a confusing point in a talk, notice tiny tragedies of the commons (an empty jug of water that nobody wants to refill), notice when everyone feels uncomfortable being the first to, say, dance at a party, and just do it.
47
+
- Overcome the bystander effect: there is something that everyone wants to *happen* but nobody wants to be the one to *do* it. Develop the reflex of noticing bystander apathy in your environment, and actively do the thing. E.g. ask a question when there's a confusing point in a talk, notice tiny tragedies of the commons (an empty jug of water that nobody wants to refill), notice when everyone feels uncomfortable being the first to, say, dance at a party, and just do it.
48
48
- [Our behavior is made up of a complex and chaotic soup of so many factors that it's downright silly to think there's a singular, autonomous "you" calling the shots](https://youtu.be/GRYcSuyLiJk).
49
-
- Tools and ideas are not neutral. They have baked some principles and values.
50
-
- E.g: [[Social Media Issues|social media]] encourages rage, [[blockchain]] protocols "waste" energy using Proof of Work.
49
+
- Tools and ideas are not neutral. They bake in principles and values.
50
+
- E.g: [[Social Media Issues|social media]] encourages rage, [[Blockchain]] protocols "waste" energy using Proof of Work.
51
51
- A person holding a hammer interacts with the world in a different way. It is a different entity. Same with ideas.
52
52
- Most of the world is held together with duct tape so don't be surprised when it breaks.
53
53
- Cultivate your information diet.
···
58
58
- Meet a wide range of people, as valuable opportunities often come from unexpected connections.
59
59
- Burnout is a major killer of agency and creativity. Prioritize rest and sustainable effort.
60
60
- [Style is a set of constraints that you stick to](https://stephango.com/style). Style emerges from consistency, and having a style opens your imagination. Collect constraints you enjoy. Unusual constraints make things more fun. You can always change them later. This is your style, after all. It’s not a life commitment, it’s just the way you do things. Having a style collapses hundreds of future decisions into one, and gives you focus. E.g: always pluralize tags to never have to wonder what to name new tags.
61
+
- [Slowing down, and offering more time to the act of consumption, immediately increases comprehension and enjoyment](https://www.raptitude.com/2025/12/maybe-the-default-settings-are-too-high/). Slowing down your rate of consumption will inevitably change what you want to consume.
+1
-1
Organizations.md
+1
-1
Organizations.md
···
54
54
- [As organizations become less efficient / less effective, they need more and more managers to "manage" that inefficiency. This kicks off a wicked cycle, because they'll self-identify with managing a problem ... which reinforces it.](https://twitter.com/johncutlefish/status/1472669773410410504)
55
55
- [Management in large, dysfunctional companies is a game about promising to ship things to people further up your chain](https://ludic.mataroa.blog/blog/brainwash-an-executive-today). Organizations select for people who support convenient narratives and can maintain positive messaging regardless of reality.
56
56
- It might be interesting to cap the core team size at N people (e.g: 15). Focus on solving one problem, and do it well.
57
-
- [When you scale, you automate. This is good and bad. It's nice to be able to get a refund automatically when an item is missing from your order. It's frustrating trying to figure out the right incantation to trick a chatbot in to connecting you to a human. If you can afford it, don't scale past the number of users you can excellently serve. Don't scale to a point where you can't excellently polish your software.](https://samwho.dev/blog/scale-is-poison/)
57
+
- [When you scale, you automate. This is good and bad. It's nice to be able to get a refund automatically when an item is missing from your order. It's frustrating trying to figure out the right incantation to trick a chatbot into connecting you to a human. If you can afford it, don't scale past the number of users you can excellently serve. Don't scale to a point where you can't excellently polish your software.](https://samwho.dev/blog/scale-is-poison/)
58
58
- [The art of org design is essentially effective iteration towards form-context fit. You need four sub-skills to do effective iteration](https://commoncog.com/blog/org-design-skill/). To get good at org design, you need to build more accurate models of the people in your org, learn how they respond to [[incentives]], and in build enough power and credibility to get your org changes to take place.
59
59
- Internally, you should not "sell", but truth seek.
60
60
- Transparency is a vital value. Transparency gets people to treat the company as their own.
+38
Pairwise Comparisons.md
+38
Pairwise Comparisons.md
···
1
+
# Pairwise Comparisons
2
+
3
+
Pairwise comparisons are any processes of comparing entities in pairs to judge which of each entity is preferred, or has a greater amount of some quantitative property, or whether or not the two entities are identical. They are useful when aggregating human preferences.
4
+
5
+
## Why Pairwise
6
+
7
+
- Humans are better at relative judgments than absolute scoring. Scale-free comparisons reduce calibration headaches ([better judging systems](https://anishathalye.com/designing-a-better-judging-system/)).
8
+
- Simple binary choices reduce cognitive load and make participation easier than intensity sliders.
9
+
- Works across domains (psychometrics, recsys, sports, RLHF) where latent utility is hard to measure directly ([pairwise calibrated rewards](https://www.itai-shapira.com/pdfs/pairwise_calibrated_rewards_for_pluralistic_alignment.pdf)).
10
+
- Disagreement is signal. Diversity in raters surfaces semantics a single expert might miss ([CrowdTruth](https://github.com/CrowdTruth/CrowdTruth-core/blob/master/tutorial/Part%20I_%20CrowdTruth%20Tutorial.pdf)).
11
+
12
+
## Collecting Good Data
13
+
14
+
- Keep the UX fast and low-friction. Suggest options, keep context in the UI, and let people expand only if they want.
15
+
- Avoid intensity questions. They are order-dependent and [require global knowledge](https://xkcd.com/883/).
16
+
- Use [active sampling](https://projecteuclid.org/journals/annals-of-statistics/volume-47/issue-6/Active-ranking-from-pairwise-comparisons-and-when-parametric-assumptions-do/10.1214/18-AOS1772.pdf)/dueling bandits to focus on informative pairs. Stop when marginal value drops.
17
+
- With [efficiently sampled pairs](https://arxiv.org/abs/2302.13507) ([or approximate rankings](https://proceedings.mlr.press/v84/heckel18a.html)) far fewer comparisons are needed.
18
+
- [Top-k tasks](https://proceedings.mlr.press/v84/heckel18a.html) can scale collection (pick best 3 of 6) while still convertible to pairwise data.
19
+
- Expect [noisy raters](https://arxiv.org/abs/1612.04413). Filter or reweight after the fact using heuristics or gold questions instead of overfitting to ["experts" biases](https://link.springer.com/article/10.1007/s10618-024-01024-z).
20
+
21
+
## Aggregation and Evaluation
22
+
23
+
- There are many aggregation/eval rules; [Bradley-Terry](https://en.wikipedia.org/wiki/Bradley%E2%80%93Terry_model), [Huber in log-space](https://en.wikipedia.org/wiki/Huber_loss), [Brier](https://en.wikipedia.org/wiki/Brier_score), ...
24
+
- Converting pairs into scores or rankings is standard; start with Elo/Bradley-Terry (or crowd-aware variants) before custom models.
25
+
- Use robust methods (crowd BT, hierarchical BT, [Bayesian variants](https://erichorvitz.com/crowd_pairwise.pdf)) to correct annotator bias and uncertainty.
26
+
- Expert jurors can be inconsistent, biased, and expensive. [Large graphs of comparisons](https://arxiv.org/pdf/1505.01462) are needed to tame variance. You can estimate how many pairwise comparisons are needed to make raking significant.
27
+
- You can report accuracy/Brier by using [bootstrap](https://en.wikipedia.org/wiki/Bootstrapping_(statistics)).
28
+
29
+
## Resources
30
+
31
+
- [Elo vs Bradley-Terry Model](https://www.keiruaprod.fr/blog/2021/06/02/elo-vs-bradley-terry-model.html)
32
+
- [Designing a Better Judging System](https://anishathalye.com/designing-a-better-judging-system/)
33
+
- [Quadratic vs Pairwise](https://blog.zaratan.world/p/quadratic-v-pairwise)
34
+
- [An Analysis of Pairwise Preference](https://papers.ssrn.com/sol3/papers.cfm?abstract_id=3359677)
35
+
- [CrowdTruth 2.0: Quality Metrics for Crowdsourcing with Disagreement](https://arxiv.org/pdf/1808.06080)
36
+
- [Ten Kilograms of Chocolate](https://medium.com/@florian_32814/ten-kilograms-of-chocolate-75c4fa3492b6)
37
+
- [Tool to sort items using Bradley-Terry](https://gwern.net/resorter)
38
+
- [Tool to sort items using a Bayesian approach](https://github.com/max-niederman/fullrank)
+6
Parenting.md
+6
Parenting.md
···
21
21
- Allowing kids to have lots of small failures. Whenever you can, let them experience a small consequence that won't be too bad.
22
22
- Allow them to experience the natural consequences of their actions as much as possible, both good and bad. Even if it has a negative consequence for them, as long as it's not too much.
23
23
- Aim to be as predictable as possible. The brain is a prediction engine and hates surprises, so minimize the surprises they have to deal with.
24
+
- For every strong opinion, there's an equally strong opposite opinion. Some basic strategies:
25
+
- Spend lots of (phone-free) time with them.
26
+
- Show them that the world is a fun and fascinating place.
27
+
- Don't interrupt them when their focused or daydreaming. Help them learn to be entertained by their own minds-
28
+
- Refrain from imposing lots of little rules, but where there are rules, be firm about them.
29
+
- Build problem-solving confidence, teaching them to become a person who says "I want to figure out the directions" instead of a person who says "let's just ask someone"
24
30
25
31
## Resources
26
32
+2
Plurality.md
+2
Plurality.md
···
22
22
- Exponential technological growth, by designing property rights that force rising tides to lift all boats.
23
23
- Valuing excellence and expertise, through mechanisms like prediction markets with per-person subsidies.
24
24
- Local experimentation in social media, blockchain ecosystems, and local government.
25
+
- [When different people disagree about how things should be done](https://vitalik.eth.limo/general/2025/12/17/societies.html), it's healthy to have a bias toward solutions where both versions exist at least somewhere, and people can freely choose between them. Peacefully making something small in a corner somewhere to see how it plays out is the most productive and least risky way for any actor to implement their vision. It provides rapid feedback about whether ideas actually work in reality.
26
+
- Ideas like this can enable open-source communities, collections of countries, and other groups that are not actors [to have higher levels of diffusion between each other](https://vitalik.eth.limo/general/2025/12/30/balance_of_power.html), allowing them to share more economies of scale and remain competitive with more internally organized centralized behemoths.
+7
-2
Politics.md
+7
-2
Politics.md
···
25
25
- Your perception of reality has probably been at least a little manipulated. Your opponents are behaving the way they are based on a perception of reality that's different from your own.
26
26
- What does this look/feel like to the people I don't know?
27
27
- Everyone belongs to a tribe and underestimates how influential that tribe is on their thinking. Tribes reduce the ability to challenge ideas or diversify your views because no one wants to lose support of the tribe. Tribes are as self-interested as people, encouraging [[ideas]] and narratives that promote their survival. But they're exponentially more influential than any single person. So tribes are very effective at promoting views that aren't analytical or rational, and people loyal to their tribes are very poor at realizing it.
28
-
- Utopia can't be planed from scratch! Push decisions to the edges (localism) where they have [[incentives]] to make good choices.
28
+
- Utopia can't be planned from scratch! Push decisions to the edges (localism) where they have [[incentives]] to make good choices.
29
29
- A good counter argument is that people might not be educated enough to make the best decision and a centralized institution could do it much better for them (e.g: a government banning lead from most products is credited with the most significant global drop in crime rates in decades).
30
30
- Most political debates are people with different time horizons talking over each other.
31
31
- [Liberalism has a few big economic problems](https://slatestarcodex.com/2017/02/22/repost-the-non-libertarian-faq/); [[coordination]] issues (Moloch), irrationality and lack of information.
32
32
- You are not an individual self in the first place, you're an ecosystem of parts. It's teamwork all the way down!
33
+
- [We tend to support small, far-away, or exotic groups trying to maintain their culture](https://slatestarcodex.com/2016/07/25/how-the-west-was-won/), but treat our outgroups' cultural preservation attempts as ignorance or xenophobia. Consistency would mean either extending compassion to all traditional cultures resisting universal culture, or consistently supporting universal culture's attempt to impose progress everywhere.
33
34
- The costs of regulations are regressive: [much more easily absorbed by big companies than startups](https://slatestarcodex.com/2013/12/08/a-something-sort-of-like-left-libertarianism-ist-manifesto/). The problem with banning and regulating things is that it's a blunt instrument.
34
35
- _Could laws be self corrected?_ When a law is approved, If X is not archived in Y time, withdraw law. Many of the problems people worry about probably won't exist in 10 years. There are likely new problems you could never have guessed would come up. [When writing a policy, include a few internal facing failure signals and a few external facing failure signals that make clear the policy isn't working anymore](https://bellmar.medium.com/the-death-of-process-cdb0151a41fe) and might be better to revisit.
35
36
- Sometimes the more important thing is not [[Making Decisions|better mechanisms for the final decision-making step]], but better mechanisms for [discussing and coordinating](https://twitter.com/VitalikButerin/status/1433396553591320578) what to propose (explore the space) in the first place.
···
55
56
- [[Plurality]] — the understanding that diversity of people, beliefs, opinions, mechanisms, approaches, implementations, etc within a given context generally results in better outcomes than in the absence of such diversity.
56
57
- For many social systems, truly large-scale, repeatable tests (to verify systems work as intended) are difficult if not impossible. Having simple systems is critical to legitimacy.
57
58
- Politics is just how humans coordinate in groups. It’s the invisible network of relationships, influence, and informal power that exists in every organization. [You can refuse to participate, but that doesn't make it go away](https://terriblesoftware.org/2025/10/01/stop-avoiding-politics/). It just means decisions get made without you. The alternative to good politics isn't no politics. It's bad politics winning by default.
59
+
- [Policy should tell people what the goal is](https://x.com/VitalikButerin/status/1996997278893044045) (e.g., "reduce road wear" or "reduce emissions") by pricing the externality directly, instead of telling how to optimize for it (making it easy to game arbitrary rules).
58
60
59
61
## [Voting Theory](https://www.lesswrong.com/posts/D6trAzh6DApKPhbv4/a-voting-theory-primer-for-rationalists)
60
62
···
75
77
- Build in regularization (e.g. caps on how fast budgets can shift) and sunset/failure signals, so policies self-correct or expire.
76
78
- Architect coordination as a fractal "pace-layering" of ever more specific algorithms, each handling half the remaining complexity with the simplest tool.
77
79
- [A key technical component making democracy work is the secret ballot. No one knows who you voted for, and furthermore, you do not have the ability to prove to anyone else who you voted for, even if you really want to](https://vitalik.eth.limo/general/2025/04/14/privacy.html).
80
+
- Voting is a preference aggregation method. Preferences must be aggregated across multiple individuals to determine a collective decision or ranking. This process is central to social choice theory, which provides a mathematical foundation for preference aggregation.
81
+
- Every time you derive an opinion from a group, you are doing a lossy compression of each individual opinion. How you do it (preference and meta-preference aggregation) is in itself an opinion / choice.
78
82
79
83
## Interesting Ideas
80
84
81
-
- [Charter Cities](https://youtu.be/mSHBma0Ithk).
85
+
- [Charter Cities](https://chartercitiesinstitute.org/) and [Zones](https://vitalik.eth.limo/general/2025/12/17/societies.html).
86
+
- [Vouching as regulation substitute](https://vitalik.eth.limo/general/2025/12/17/societies.html).
82
87
- [Quadratic Voting](http://ericposner.com/quadratic-voting/) and [Quadratic Funding](https://wtfisqf.com/).
83
88
- [Georgism](https://astralcodexten.substack.com/p/your-book-review-progress-and-poverty).
84
89
- [Prediction Markets](https://astralcodexten.substack.com/p/instead-of-pledging-to-change-the) as a tool for accountability. [FAQ](https://astralcodexten.substack.com/p/prediction-market-faq).
+3
Problem Solving.md
+3
Problem Solving.md
···
40
40
- Keep the end goal in mind. [Don't Shave That Yak](https://seths.blog/2005/03/dont_shave_that/)!
41
41
- [The Copenhagen Interpretation of Ethics](https://laneless.substack.com/p/the-copenhagen-interpretation-of-ethics) says that when you observe or interact with a problem in any way, you can be blamed for it. At the very least, you are to blame for not doing _more_. ^ec616e
42
42
- Social problems demand social solutions. Not everything can be solved by technology. E.g: If you're skeptical about Wikipedia, you can easily create your own fork of Wikipedia and improve it. You'll have to deal with the social problems of convincing others to use your fork, etc.
43
+
- To convince someone, show historical attempts failures and analyze them.
43
44
- In complex problem spaces, [focus on direction](https://thecompendium.cards/c/everything/sort/stars/direction-not-solution) and not on the details. Don't focus too much on trying to find the best idea. The thing you have to prove is not that an idea is the best one, but that it's better than doing what you're currently doing.
45
+
- [You cannot solve a people problem with a technical solution. Most technical problems are really people problems](https://blog.joeschrag.com/2023/11/most-technical-problems-are-really.html). Most people problems are [[Coordination]] and [[Communication]] problems.
46
+
- All technology produces second and third order effects beyond what was intended, and [[Feedback Loops]] often magnify them in complex systems.
44
47
45
48
## Five Whys
46
49
+2
-1
Processes.md
+2
-1
Processes.md
···
22
22
- Low Friction. Simple processes are easier to understand and apply. [Trivial inconveniences usually have more implications than it seems](https://www.lesswrong.com/posts/reitXJgJXFzKpdKyd/beware-trivial-inconveniences).
23
23
- Short [[Feedback Loops]]. Show the results as soon as you can.
24
24
- [[Idempotence|Idempotent]] processes are easy to manage
25
+
- Write it down. Writing what's happening can be a giant leap forward in terms of getting people to agree on what the process actually is.
25
26
26
-
A process takes an input to produce an output. A group of processes can be viewed as a System.
27
+
A process takes an input to produce an output. Group of processes can be viewed as [[systems]].
27
28
28
29
*The only purpose of good process is to produce good outcomes.* A process is not good unless it produces good outcomes.
29
30
+5
-2
Programming.md
+5
-2
Programming.md
···
10
10
- Do the [simplest thing that could possibly work](https://www.seangoedecke.com/the-simplest-thing-that-could-possibly-work/). Start with the absolute minimum viable implementation and only add complexity when new requirements absolutely demand it (e.g: UNIX tools remain incredibly powerful and efficient for "Big Data").
11
11
- Good system design looks "boring". Impressive complexity often signals over-design. Start simple and evolve.
12
12
- Benefits of simplicity: ease of understanding, ease of change (improvement), ease of debugging, flexibility. [The goal of software design is to create chunks or slices that fit into a human mind](https://mobile.twitter.com/KentBeck/status/1354418068869398538). The software keeps growing but the human mind maxes out, so we have to keep chunking and slicing differently if we want to keep making changes.
13
+
- We are simple apes and we like simple stone tools.
13
14
- Break down complex problems into simpler, digestible pieces. If you do it right, it will feel like cheating: you just solve simple problems until you're done.
14
15
- We can't change our brain to grasp something complex. We need to simplify complexity so we can handle it.
15
16
- Simplicity means fewer moving pieces, less internal connectivity, and components with clear, straightforward interfaces that remain stable without ongoing maintenance.
···
25
26
- Reuse [patterns](https://www.digitalocean.com/community/tutorials/gangs-of-four-gof-design-patterns).
26
27
- The number of moving pieces on average doubles every 18-24 months. No one fully understands [[Systems]].
27
28
- [There are different notions of simplicity](https://vitalik.eth.limo/general/2018/11/25/central_planning.html) (Kolmogorov complexity vs VC Dimension). What is "simple" to describe or appears to have few knobs in one language for describing it is devilishly complex in another, and vice versa.
29
+
- Most performance wins come from removing work, not adding cleverness.
28
30
- [Good taste is writing code that looks so simple, everyone else says "anyone could have written that!"](https://news.ycombinator.com/item?id=45411143)
29
31
- **Do one thing and do it well**.
30
32
- By focusing on a single task, a program or function can eliminate much extraneous code that often results in excess overhead, unnecessary complexity, and a lack of flexibility. [Good software makes hard things easy](https://medium.com/s/story/notes-to-myself-on-software-engineering-c890f16f4e4d).
···
34
36
- Once you have a working prototype, apply guidelines and previous learnings. Then, focus on performance.
35
37
- There is nothing so useless as doing efficiently that which should not be done at all.
36
38
- Writing program code is a good way of debugging your thinking.
39
+
- [You can edit a bad page, but you can't edit a blank one.](https://addyosmani.com/blog/21-lessons/)
37
40
- Apply small improvements at each iteration. Running the program will make it more resilient and robust as more errors get fixed.
38
41
- Premature optimization is the root of all evil. Abstraction is a form of optimization and shouldn't be done before the space has been properly explored to know what abstractions should be built. Standardization is a form of optimization and shouldn't be proposed until there's a body of evidence to support what's being standardized.
39
42
- [Increased efficiency can sometimes, counterintuitively, lead to worse outcomes](https://sohl-dickstein.github.io/2022/11/06/strong-Goodhart.html).
···
47
50
- **Data is only useful as long as it's being used**.
48
51
- Flat files help ensure that data is usable for the longest possible time.
49
52
- For complex data structures where plain text really isn't appropriate, use a structured text format instead. If you've chosen the right data structures and organized things well, the algorithms will almost always be self-evident. [Data structures, not algorithms, are central to programming](https://users.ece.utexas.edu/~adnan/pike.html).
50
-
- **A programmer who can't re-use other programs is condemned to re-write them**.
53
+
- **A programmer who can't reuse other programs is condemned to re-write them**.
51
54
- Use software leverage to your advantage.
52
-
- Many programmers have only a superficial understanding of the importance of re-usable code modules.
55
+
- Many programmers have only a superficial understanding of the importance of reusable code modules.
53
56
- [Code isn't just meant to be executed. Code is also a means of [[Communication]] across a team, a way to describe to others the solution to a problem](https://medium.com/s/story/notes-to-myself-on-software-engineering-c890f16f4e4d). Good writing skills often correlate with good thinking and programming skills. [Sharing knowledge through writing (blogs, talks, documentation, open source) clarifies your thinking and helps others](https://endler.dev/2025/best-programmers/).
54
57
- **Silence is golden**.
55
58
- A silent command is often more usable, providing the function asked for and nothing more.
+46
-14
Public Goods Funding.md
+46
-14
Public Goods Funding.md
···
1
1
# Public Goods Funding
2
2
3
-
Public goods are defined as goods that are both nonexcludable (it's infeasible to prevent someone from consuming the good) and nonrivalrous (one person's consumption can not reduce another person's consumption of the good). They benefit everyone but are difficult to fund through traditional market mechanisms due to their non-excludable and non-rivalrous nature. Examples include open-source software, scientific research, environmental protection, and community infrastructure.
3
+
Public goods are defined as goods that are both non-excludable (it's infeasible to prevent someone from consuming the good) and nonrivalrous (one person's consumption can not reduce another person's consumption of the good). They benefit everyone but are difficult to fund through traditional market mechanisms due to their non-excludable and non-rivalrous nature. Examples include open-source software, scientific research, environmental protection, and community infrastructure.
4
4
5
-
- The fact that public goods are not excludable creates a "free-rider problem", where people are incentivized to enjoy the benefits of the good without paying for it.
6
-
- [What's the point of contributing to a public park if non-contributors can use it too](https://splittinginfinity.substack.com/p/the-public-goods-funding-landscape)?
7
-
- All funding mechanisms involve trade-offs between simplicity, robustness, and theoretical optimality. There is no mechanism that [can simultaneously achieve four desirable criteria](https://www.jstor.org/stable/2298018)-
5
+
- The fact that public goods are not excludable creates a "free-rider problem", where people are incentivized to enjoy the benefits of the good without paying for it. [What's the point of contributing to a public park if non-contributors can use it too](https://splittinginfinity.substack.com/p/the-public-goods-funding-landscape)?
6
+
- All funding mechanisms involve trade-offs between simplicity, robustness, and theoretical optimality. There is no mechanism that [can simultaneously achieve four desirable criteria](https://www.jstor.org/stable/2298018).
8
7
- [[Plurality|Different public goods require different funding approaches based on their characteristics and communities]].
9
8
- Mathematical optimality matters less than perceived fairness and historical precedent. Ideal funding methods that don't work in practice are not ideal.
10
-
- [[Mechanism Design|Mechanism]] which satisfy different constraints have already been discovered, and it seems unlikely that a different approach will radically change the landscape. Instead, the **bottleneck seems to be in popularizing and scaling existing mechanisms in the real world**.
9
+
- Many [[Mechanism Design|mechanisms]] which satisfy different constraints have already been discovered, and it seems unlikely that a different approach will radically change the landscape. Instead, the **bottleneck seems to be in popularizing and scaling existing mechanisms**.
10
+
- Retrospective evaluation is often easier than prospective funding. [[Impact Evaluators]] and retroactive public goods funding reward **verifiable impact after the fact** instead of just predictions about future impact.
11
+
- Effective funding systems usually start small and local, with tight feedback loops and clear community ownership, and only then generalize once patterns are proven.
12
+
- The funding **infrastructure itself is a public good**. Data, evaluation pipelines, and mechanisms should be open, composable, and forkable so communities can reuse and adapt them.
11
13
12
14
## Desirable Criteria
13
15
14
-
- Pareto Efficiency. The outcome achieved by the mechanism maximizes the overall welfare or some other desirable objective function.
15
-
- Incentive Compatibility. Designing mechanisms so that participants are motivated to act truthfully, without gaining by misrepresenting their preferences.
16
-
- Individual Rationality. Ensuring that every participant has a non-negative utility (or at least no worse off) by participating in the mechanism.
17
-
- Budget Balance. The mechanism generates sufficient revenue to cover its costs or payouts, without running a net deficit.
18
-
- Coalition-Proofness. Preventing groups of participants from conspiring to manipulate the mechanism to their advantage.
19
-
- Provable Participation. Even if spending should be kept private, users may want to prove their participation in a funding mechanism in order to boost their reputation or as part of an agreement.
20
-
- Identity and Reputation. To prevent sybil attacks, some form of identity is needed. If reputation is important, a public identity is preferred. If anonymity is required, zero-knowledge proofs or re-randomizable encryption may be necessary. Reputation is an important incentive to fund public goods. Some form of reputation score or record of participation can be useful for repeated games. These scores can help identify bad actors or help communities coalesce around a particular funding venue. [Identity-free mechanism can also be used](https://victorsintnicolaas.com/funding-public-goods-in-identity-free-systems/).
21
-
- Verifiable Mechanisms. Users may want certain guarantees about a mechanism before or after participation, especially if the mechanism being used is concealed. Ex-ante, they may want to upper-bound their amount of spending towards the good, ex-post, they may require proof that a sufficient number of individuals contributed.
22
-
- Anti-Collusion Infrastructure. Like secure voting systems, there is a threat of buying votes in a funding mechanism. Collusion can be discouraged by making it impossible for users to prove how they reported their preferences. This infrastructure must be extended to prevent collusion between the 3rd party and the users.
16
+
- **Pareto Efficiency**. The outcome achieved by the mechanism maximizes the overall welfare or some other desirable objective function.
17
+
- **Incentive Compatibility**. Designing mechanisms so that participants are motivated to act truthfully, without gaining by misrepresenting their preferences.
18
+
- **Individual Rationality**. Ensuring that every participant has a non-negative utility (or at least no worse off) by participating in the mechanism.
19
+
- **Budget Balance**. The mechanism generates sufficient revenue to cover its costs or payouts, without running a net deficit.
20
+
- **Coalition-Proofness**. Preventing groups of participants from conspiring to manipulate the mechanism to their advantage.
21
+
- **Provable Participation**. Even if spending should be kept private, users may want to prove their participation in a funding mechanism in order to boost their reputation or as part of an agreement.
22
+
- **Identity and Reputation**. To prevent sybil attacks, some form of identity is needed. If reputation is important, a public identity is preferred. If anonymity is required, zero-knowledge proofs or re-randomizable encryption may be necessary. Reputation is an important incentive to fund public goods. Some form of reputation score or record of participation can be useful for repeated games. These scores can help identify bad actors or help communities coalesce around a particular funding venue. [Identity-free mechanism can also be used](https://victorsintnicolaas.com/funding-public-goods-in-identity-free-systems/).
23
+
- **Verifiable Mechanisms**. Users may want certain guarantees about a mechanism before or after participation, especially if the mechanism being used is concealed. Ex-ante, they may want to upper-bound their amount of spending towards the good, ex-post, they may require proof that a sufficient number of individuals contributed.
24
+
- **Anti-Collusion Infrastructure**. Like secure voting systems, there is a threat of buying votes in a funding mechanism. Collusion can be discouraged by making it impossible for users to prove how they reported their preferences. This infrastructure must be extended to prevent collusion between the 3rd party and the users.
25
+
- **Predictable Schedules**. Participants need to know when are they getting funded.
26
+
- **Simplicity and Legibility**. The simpler a mechanism (fewer parameters, clear rules, open-source and publicly verifiable execution), the less space there is for hidden privilege, corruption, and overfitting, and the easier it is for people to understand and engage with it.
27
+
- **Anti-Goodhart Resilience**. Any metric used for decisions will be gamed. Mechanisms should assume this, incorporate **feedback loops and error analysis**, and make it easy to update or combine metrics and evaluators when they drift from what really matters.
28
+
- **Plurality and Forkability**. No single mechanism can satisfy all desirable properties in all contexts. Systems should support **multiple evaluators and preference-aggregation methods**, and allow communities to fork and adapt criteria when they disagree.
29
+
- **Composable Data and Evaluation Layers**. Separate **data collection** (attestations about work, usage, dependencies, etc.) from **judgment** (how that data is weighted). Multiple evaluation "lenses" (models, juries, dashboards) should be able to operate on the same shared data structures (graphs, weight vectors).
30
+
- **Exploration vs Exploitation**. Funding mechanisms are optimization processes that tend to exploit known winners. Some budget should be reserved for **exploration of uncertain, high-variance public goods**, not just those that already score well on existing metrics.
31
+
- **Community Feedback and Local Control**. Mechanisms should include channels for participants to flag problems, suggest changes, and adjust evaluation criteria. Small, local experiments with clear consent and ownership are often the safest way to evolve funding systems.
32
+
33
+
## Methods
34
+
35
+
### Simulation Process (S-process)
36
+
37
+
The [S-Process (Simulation Process)](https://www.youtube.com/watch?v=jWivz6KidkI) is a collaborative funding algorithm designed to optimize the distribution of resources to public goods. It allows multiple funders to delegate the complexity of grant-making to overlapping groups of trusted "recommenders".
38
+
39
+
- **Aggregate Information, Not Just Money**. Instead of funders voting with dollars, participants input **Marginal Value Functions (MVFs)**. This creates a "How valuable is the next dollar given to this organization?" curve for each organization.
40
+
- **Delegation to Trusted Recommenders:** Funders often lack the time to evaluate every opportunity, the system allows them to delegate the creation of these value curves to trusted experts. Funders still have the "Final Say". This relieves stress on the advisors (recommenders), allowing them to express honest opinions without the anxiety of being the sole decision-maker.
41
+
- **Discourse is Essential:** Numbers cannot replace conversation. The process requires real-time debate where advisors explain *why* they value an organization differently.
42
+
- **Iterated Simulations:** The allocation algorithm is run repeatedly *during* the discussion. Advisors see where the money would go based on their current inputs, discuss the outcome, and adjust their inputs. This turns a "one-shot" game into an iterated cooperative game.
43
+
- **The "Disagreement Matrix":** The system highlights where advisors disagree most (e.g., Advisor A loves Org X, Advisor B hates Org X). Discussion is focused specifically on these disagreements to surface new information.
44
+
45
+
### Shares Funding
46
+
47
+
When a project turns out to be great, pay both the builders and the early funders. People who repeatedly back the right projects end up with more money and can fund more next time.
48
+
49
+
Builders create public goods (OSS, research, infrastructure, etc.), funders choose and put money in them. Retrospective rounds are made with any [[Impact Evaluators]] mechanism. Projects and funders are rewarded accordingly.
50
+
51
+
Each cycle has two phases: Funding and Retro. The funding phase is where funders give money to any projects they decide to back. They receive "retro shares" for that project. Basically, who backed what, and by how much? The retrospective phase is where the system rewards impact. A mechanism is run (e.g: [[Deep Funding]]) that returns a version of impact for each project.
52
+
53
+
Capital concentrates in the hands of those who were repeatedly "right" about which public goods mattered.
23
54
24
55
## Resources
25
56
···
28
59
- [List of Public Goods Funding Mechanisms](https://harsimony.wordpress.com/2022/02/10/list-of-public-goods-funding-mechanisms/)
29
60
- [Funding public goods using the Nash product rule](https://victorsintnicolaas.com/funding-public-goods-using-the-nash-product-rule/)
30
61
- [[Deep Funding]]
62
+
- [[Impact Evaluators]]
+3
-14
Quotes.md
+3
-14
Quotes.md
···
3
3
A quote is a distilled piece of knowledge. These are some of my favorites.
4
4
5
5
- Success is doing what you want to do, when you want, where you want, with whom you want, as much as you want. Anthony Robbins.
6
-
- The good thing about [science](https://youtu.be/3MRHcYtZjFY) is that it's true whether or not you believe in it. Neil deGrasse Tyson. ^d54898
7
-
- Don't raise your voice, improve your argument. Desmond Tutu. ^448662
8
6
- Desire is a contract you make with yourself to be unhappy until you get what you want. Naval Ravikant.
9
-
- To effectively communicate, we must realize that we are all different in the way we perceive the world and use this understanding as a guide to our communication with others — Tony Robbins ^a6f960
10
7
- Attitude is a choice. Happiness is a choice. Optimism is a choice. Kindness is a choice. Giving is a choice. Respect is a choice. Whatever choice you make makes you. Choose wisely. Roy T. Bennett.
11
8
- If you want to feel good, brainstorm it. If you want to appear good, test it. If you want to know if you're any good, ship it. Jason Fried.
12
-
- Life doesn't get better. You get better at it. ^9748a6
13
-
- It is not the things we do in life that we regret on our deathbed. It is the things we do not. Randy Pausch. ^1b91f3
14
9
- There is nothing so useless as doing efficiently that which should not be done at all. Peter Drucker.
15
-
- Questions are places in your mind where answers fit. If you haven't asked the question, the answer has nowhere to go. It hits your mind and bounces right off. You have to ask the question – you have to want to know – in order to open up the space for the answer to fit. Clay Christiansen. ^c63c02
16
10
- Perfection is achieved not when there is nothing left to add, but when there is nothing left to take away. Antoine de Saint-Exupéry.
17
11
- You cannot answer a question that you cannot ask, and you cannot ask a question that you have no words for. Judea Pearl.
18
12
- [The mind is its own place, and in itself can make a heaven of hell, a hell of heaven](https://youtu.be/RPicL1AWrs8?list=WL).
19
13
- There's no love in a carbon atom, No hurricane in a water molecule, No financial collapse in a dollar bill. Peter Dodds.
20
-
- All models are wrong, but some are useful. George Box. ^0452ef
14
+
- All models are wrong, but some are useful. George Box.
21
15
- Relax, no one else knows what they're doing either. Ricky Gervais.
22
16
- When you view the world as a series of outputs, you form opinions. But when you view the world as a series of [[systems]], you form strategies. Channing Allen.
23
17
- I hate that man. I must get to know him better. Abraham Lincoln.
24
-
- You enjoy a trip three times. Getting ready for it, while traveling and when you remember it. Good memories appreciate over time! ^396dbb
25
18
- Extraordinary claims require extraordinary evidence. Carl Sagan.
26
19
- The rabbit runs faster than the fox, because the rabbit is running for his life while the fox is only running for his dinner. Richard Dawkins.
27
20
- Where all think alike, no one thinks very much. Walter Lippmann.
···
35
28
- It is impossible for a man to learn what he thinks he already knows. Epictetus.
36
29
- You want to know how to paint a perfect painting? It's easy. Make yourself perfect and then just paint naturally. Robert M. Pirsig.
37
30
- Nobody ever figures out what life is all about, and it doesn't matter. Explore the world. Nearly everything is really interesting if you go into it deeply enough. Richard Feynman.
38
-
- There are no solutions. There are only trade-offs. Thomas Sowell. ^1f0d5b
31
+
- There are no solutions. There are only trade-offs. Thomas Sowell.
39
32
- It's not that life is short, it's that we waste too much of it. Seneca.
40
33
- Your assumptions are your windows on the world. Scrub them off every once in a while, or the light won't come in. Isaac Asimov.
41
34
- Life can be much broader once you discover one simple fact: Everything around you that you call life was made up by people that were no smarter than you and you can change it, you can influence it, you can build your own things that other people can use. Once you learn that, you'll never be the same again. Steve Jobs.
42
35
- A witty saying proves nothing. Voltaire.
43
36
- This too shall pass. Persian adage.
44
37
- [Show me a man who thinks he's objective and I'll show you a man who's deceiving himself](https://www.collaborativefund.com/blog/a-few-rules/). Henry Luce.
45
-
- The real problem of humanity is the following: we have Paleolithic emotions, medieval institutions, and god-like technology. Edward O. Wilson. ^8eb74d
38
+
- The real problem of humanity is the following: we have Paleolithic emotions, medieval institutions, and god-like technology. Edward O. Wilson.
46
39
- You could be good today. But instead, you choose tomorrow. Marcus Aurelius.
47
40
- Happiness is a cookie that your brain bakes for itself. It's not made by the environment. The environment cannot make you happy. Joscha Bach.
48
41
- Start now. Start where you are. Start with fear. Start with pain. Start with doubt. Start with hands shaking. Start with voice trembling but start. Start and don't stop. Start where you are, with what you have. Just... start. Ijeoma Umebinyuo
···
50
43
- That which can be destroyed by the truth should be. P.C. Hodgell.
51
44
- The past is a foreign country, they do things differently there. Leslie Poles Hartley.
52
45
- Most advice is basically people mistaking correlation for causation. Leo Polovets.
53
-
- In preparing for battle I have always found that plans are useless, but planning is indispensable. Dwight D. Eisenhower. ^07c32d
54
-
- Everyone you will ever meet knows something you don't. Your job is to discover what it is, and it won't be obvious. Bill Nye. ^307613
55
46
- More effort is wasted doing things that don't matter than is wasted doing things inefficiently. Elimination is the highest form of optimization. James Clear.
56
47
- Consensus is the process of abandoning all beliefs, principles, values, and policies in search of something in which no one believes, but to which no one objects; the process of avoiding the very issues that have to be solved, merely because you cannot get agreement on the way ahead. What great cause would have been fought and won under the banner: I stand for consensus?. Margaret Thatcher.
57
-
- If you cannot measure it, you cannot improve it. Lord Kelvin. ^a5049d
58
48
- Y es que en el mundo traidor nada hay verdad ni mentira: todo es según el color del cristal con que se mira. Ramón de Campoamor.
59
49
- You either move information from one place to another, or you move mass from one place to another.
60
50
- The fewer the facts, the stronger the opinion. Arnold H. Glasow.
61
-
- If you think without writing, you only think you're thinking. Leslie Lamport. ^645051
62
51
- It's _chapuzas_ all the way down. Me, dreaming.
63
52
- [You will observe with concern how long a useful truth may be known, and exist, before it is generally received and practiced on](https://www.youtube.com/watch?v=IV3dnLzthDA). Benjamin Franklin.
64
53
- People are tribal. The more settled things are, the bigger the tribes can be. The churn comes, and the tribes get small again. Amos Burton.
+1
-1
Resolving Disagreement.md
+1
-1
Resolving Disagreement.md
···
1
1
# Resolving Disagreement
2
2
3
-
![[Quotes#^448662]]
3
+
> Don't raise your voice, improve your argument. Desmond Tutu.
4
4
5
5
We should be arguing in a constructive fashion: treating arguments as an opportunity to [[Learning|expand knowledge]], finding points of disagreement, and [[Coordination|collaborating]] towards a common truth. A few assumptions are required to have a successful disagreement:
6
6
+2
-2
Reverse ETL.md
+2
-2
Reverse ETL.md
···
14
14
- You can use the real source of truth for all the events and not rely on tracking only.
15
15
- You can join sources like ChartMogul, Customer.io, etc,
16
16
- You can create more interesting events by enriching the events and user profiles with extra properties/traits (Trial Started with a conversion provability attached). Makes product analytics much more powerful.
17
-
- It is much easier to re-use the data available in the warehouse than it is to import the data in any new tool we use in the future.
17
+
- It is much easier to reuse the data available in the warehouse than it is to import the data in any new tool we use in the future.
18
18
- You can be much more flexible with the tools we want to use because the data is shared and owned by us.
19
-
- You avoid being locked in to BI tools like Mixpanel since the logic will be stored in our warehouse.
19
+
- You avoid being locked into BI tools like Mixpanel since the logic will be stored in our warehouse.
20
20
- As any new tool, it gives more flexibility and power.
21
21
- The current state is the starting point! We start using it to fix some issues or add some interesting profile properties
+1
-1
Science.md
+1
-1
Science.md
···
1
1
# Science
2
2
3
-
![[Quotes#^d54898]]
3
+
> The good thing about [science](https://youtu.be/3MRHcYtZjFY) is that it's true whether or not you believe in it. Neil deGrasse Tyson.
4
4
5
5
- Science is how humanity learns.
6
6
- Science is the main way humanity extends what we know about the world beyond what we can sense directly. Technology is how we use that knowledge to make our lives better.
+5
Social Games.md
+5
Social Games.md
···
13
13
- [Two Rooms and a Boom](https://boardgamegeek.com/boardgame/134352/two-rooms-and-boom). [Print and Play version](https://drive.google.com/drive/folders/1_jbxtyH0V0xACK_crdIbf-QMFv0aw7pr). [Online Version](https://www.playkaboom.com/) ([alternative](http://tworooms.centralus.cloudapp.azure.com/)).
14
14
- [Cockroach Poker](https://boardgamegeek.com/boardgame/11971/cockroach-poker). [Can be played with two standard decks](https://www.reddit.com/r/boardgames/comments/ah8t5r/has_anyone_tried_cockroach_poker_with_a_regular/).
15
15
- [Secret Hitler](https://www.secrethitler.com/assets/Secret_Hitler_Print_and_Play.pdf).
16
+
- [Green Team Wins](https://youtu.be/pmIS2CAF-tU).
17
+
- Choose between options.
18
+
- Answer an absurd question (best pizza topping).
19
+
- Fill the blank (before going to bed, I always ...).
20
+
- Can be in-group (a movie almost everyone has seen).
16
21
- [Two of these people are lying](https://youtu.be/NPaz6mFsSjU). Everyone puts a weird Wikipedia articles. Someone pulls a random one. People should come up with a compelling description and the goal is to discern what is true and what is false.
17
22
- [So Long Sucker](https://boardgamegeek.com/boardgame/8304/so-long-sucker).
18
23
- [Nomic](https://en.wikipedia.org/wiki/Nomic).
+8
-2
Systems.md
+8
-2
Systems.md
···
43
43
11. The mindset or paradigm out of which the system — its goals, structure, rules, delays, parameters — arises.
44
44
12. The power to transcend paradigms.
45
45
46
-
**Don't aim for an ideal system. Build a set of [[processes]] and protocols that evolve to fit the environment over time.** [Complex systems fail](https://how.complexsystems.fail/).
46
+
**Don't aim for an ideal system. Build a set of [[processes]] and protocols that evolve to fit the environment over time.** [Complex systems fail](https://how.complexsystems.fail/). Don't move the ball, move the hill and fight loops with loops. [High entropy systems are easier to maintain and require less energy to keep things as they are](https://slatestarcodex.com/2016/07/25/how-the-west-was-won/).
47
47
48
48
[The purpose of a system is what it does](https://en.m.wikipedia.org/wiki/The_purpose_of_a_system_is_what_it_does). However, [this view can be misleading](https://www.astralcodexten.com/p/come-on-obviously-the-purpose-of). A system's purpose is often its intended goal, even if it fails or has unintended consequences (e.g., a hospital intends to cure all patients, even if it doesn't succeed; bus emissions are side effects, not the purpose). Attributing failure or negative side effects as the *intended* purpose often ignores complexity, conflicting goals, or simple failure. A [common interpretation](https://www.astralcodexten.com/p/highlights-from-the-comments-on-posiwid) is that if a system consistently fails its stated purpose but isn't changed, its *actual* (perhaps hidden) purpose might be succeeding. Understanding the *intended* purpose, even if the system fails, is often useful for predicting its behavior (e.g., predicting an intelligence agency's actions based on its goal to prevent attacks, even if it fails). The phrase can obscure the useful distinction between a primary goal and unavoidable (or accepted) side effects.
49
49
50
50
If everyone agrees the current system doesn't work well, who perpetuates it? Some [systems with systemic/incentives failures are broken in multiple places so that no one actor can make them better](https://slatestarcodex.com/2014/07/30/meditations-on-moloch/), even though, in principle, some [magically coordinated action could move to a new stable state](https://equilibriabook.com/molochs-toolbox/).
51
51
52
-
A system needs competition and [slack](https://slatestarcodex.com/2020/05/12/studies-on-slack/) (the absence of binding constraints on behavior). By having some margin for error, the system is allowed to pursue opportunities and explore approaches that improve it.
52
+
A system needs competition and [slack](https://slatestarcodex.com/2020/05/12/studies-on-slack/) (the absence of binding constraints on behavior). By having some margin for error, the system is allowed to pursue opportunities and explore approaches that improve it. It needs chaos too. Evolution requires two things; variation (chaos) and selection (loops).
53
53
54
54
Interaction between system actors causes **externalities**: the consequences of their actions on _other actors or processes_. This is important because, intuitively, humans are self-centered, and it's easy to not notice the effects your actions have on others. And it almost never feels as _visceral_ as the costs and benefits to yourself. The canonical examples are [[coordination]] problems, like climate change. Taking a plane flight has strong benefits to me, but costs everyone on Earth a little bit, a negative externality. And a lot of the problems in the world today boil down to coordination problems where our actions have negative externalities.
55
55
56
56
Most large social systems are pursuing objectives other than the ones they proclaim, and the ones they pursue are wrong. E.g: [The educational system is not dedicated to produce learning by students, but teaching by teachers—and teaching is a major obstruction to learning.](https://thesystemsthinker.com/a-lifetime-of-systems-thinking/)
57
57
58
58
[Social systems belong to the class called multi-loop nonlinear feedback systems](https://ocw.mit.edu/courses/15-988-system-dynamics-self-study-fall-1998-spring-1999/65cdf0faf132dec7ec75e91f9651b31f_behavior.pdf). In the long history of evolution it has not been necessary until very recent historical times for people to understand complex feedback systems. Evolutionary processes have not given us the mental ability to interpret properly the dynamic behavior of those complex systems in which we are now embedded.
59
+
60
+
There are tools that [help understand how complex systems behave](https://youtu.be/PCwtsK_FhUw).
61
+
62
+
1. [[Feedback Loops]]. Systems are made of loops where things feed back into themselves. Can be reinforcing loops (compound interest) or balancing loops (thermostat).
63
+
2. Attractors. States a system naturally "wants" to settle into. Systems can have "bad" attractors.
64
+
3. [[Emergence]]. Complex behavior arises from simple rules followed by individuals, not from a central leader. You cannot understand the system just by looking at one piece in isolation.
59
65
60
66
A [[Mental Models|mental model]] of a system is the reduction of how it works. The model cuts through the noise to highlight the system's core components and how they work together.
61
67
+3
-2
Teamwork.md
+3
-2
Teamwork.md
···
43
43
- Things you haven't built yet.
44
44
- Things you shouldn't have built that way.
45
45
- Accidental complexity is a sum of all the shortcuts you have taken. Complexity attracts more complexity and compounds in a non-linear way. Every shortcut you take is an invitation to more shortcuts elsewhere.
46
+
- Your code doesn't advocate for you. People do. In organizations, decisions get made in meetings you're not invited to, using summaries you didn't write, by people who have five minutes and twelve priorities. If no one can articulate your impact when you're not in the room, your impact is effectively optional. [Make the value chain legible to everyone, including yourself](https://addyosmani.com/blog/21-lessons/).
46
47
- When the context changes a lot, you can use [the blue tape technique](https://randsinrepose.com/archives/the-blue-tape-list/) to notice what is wrong with it:
47
48
1. Notice everything that feels off.
48
49
2. Make a list of everything that feels off, no matter how big or small.
···
76
77
5. [[Automation|Automate]] and keep standards.
77
78
- Keep great global [[coordination]] and incentive local experimentation.
78
79
- Being able to run small and compounding experiments (on the product or company [[processes]] and systems) is important. **Work smaller**.
79
-
- [Some experiments won't work](https://www.lesswrong.com/posts/97LgacucCxmyjYiNT/the-archipelago-model-of-community-standards). But oftentimes it _feels_ like it wont work when in fact you just haven't stuck with it long enough for it to bear fruit. This is hard enough for _solo_ experiments. For group experiments, where not just one but _many_ people must all try a thing at once and _get good at it_, all it takes is a little defection to spiral into a mass exodus.
80
+
- [Some experiments won't work](https://www.lesswrong.com/posts/97LgacucCxmyjYiNT/the-archipelago-model-of-community-standards). But oftentimes it _feels_ like it won't work when in fact you just haven't stuck with it long enough for it to bear fruit. This is hard enough for _solo_ experiments. For group experiments, where not just one but _many_ people must all try a thing at once and _get good at it_, all it takes is a little defection to spiral into a mass exodus.
80
81
- The group with the most power determine the system that reflect and reinforce their own way of thinking. Aim for inclusion. _Diversity is being invited to the party. Inclusion is being asked to dance and help organizing the party_.
81
82
- [Brainstorm for questions first (explore). Then find the answers (exploit).](http://web.archive.org/web/20240522210302/https://getpocket.com/explore/item/better-brainstorming)
82
83
- Strive for constructive conflict. Get people to [[Asking Questions|ask questions]]. Engage in passionate, unfiltered debate about what you need to do to succeed.
···
116
117
- You have to put in more effort to make something appear effortless. Effortless, elegant performances are often the result of a large volume of effortful. Praise this instead of complex solutions.
117
118
- Invisible work will happen. If you're doing it, make an effort to share and get credit for it. Build a narrative (story) for your work. Arm your manager and fight recency bias keeping track of all the things you've done.
118
119
- As a manager, give problems to solve, not solutions. Make sure the team knows what they're working toward and that it has the resources needed to complete the work.
119
-
- Most software or processes should be opinionated. In increases [[Coordination|collaboration]]. Flexible processes lets everyone invent their own workflows, which eventually creates chaos as teams scale.
120
+
- Most software or processes should be opinionated. It increases [[Coordination|collaboration]]. Flexible processes lets everyone invent their own workflows, which eventually creates chaos as teams scale.
120
121
- As teams scale, traditional approaches to decision making force a tradeoff between transparency and efficiency.
121
122
- The easiest way to ensure everyone can understand the how and why of a decision is to adopt systems that, through their daily operation, ensure such context is automatically and readily available to those who might want it (and explicitly not only those who presently need it).
122
123
- [Run 1:1s (one-on-ones)](https://erik.wiffin.com/posts/how-to-get-the-most-out-of-your-11s/). A recurring meeting with no set agenda between a manager and one of their reports. Don't make it a status update (these should be async). Chat about anything bothering you, career growth or type of work that is interesting for you. End it with actionable next steps.
+1
-1
Themes.md
+1
-1
Themes.md
+1
Thinking.md
+1
Thinking.md
···
17
17
- Many beliefs are held because there is a social and tribal benefit to holding them, not necessarily because they're true.
18
18
- A great way to do that is to [bet on everything](https://www.lesswrong.com/posts/ybYBCK9D7MZCcdArB/how-to-measure-anything) where you can or will find out the answer. Even if you're only testing yourself against one other person, it's a way of calibrating yourself to avoid both overconfidence and under-confidence, which will serve you in good stead emotionally when you try to do [[Fallacies|inadequacy reasoning]]. It'll also force you to do falsifiable predictions.
19
19
- A tool to assign a percentage to a belief is [the equivalent bet test](https://www.lesswrong.com/posts/EtxTDPMXrbmpheiAt/how-the-equivalent-bet-test-actually-works).
20
+
- People have an incentive [to be the "most confident in the room"](https://www.youtube.com/watch?v=9M_QK4stCJU) as that gives us a hedge against the rest.
20
21
- Instead of thinking "I'm sure X is fake!", try to think in terms of probabilities. E.g: I think there's a 90% chance X is fake. Instead of thinking in terms of changing your mind, think in terms of updating your probabilities. [This mindset](https://astralcodexten.substack.com/p/book-review-the-scout-mindset) makes it easier to remember that it's not a question of winning or losing, but a question of being as accurate as possible. "Probability update" is less emotionally devastating than "I said X, but actually ~X, so I was wrong").
21
22
- You can try things to find out which ideas are right or wrong. It requires asking "What else would be true if this thing were true?" or "What would be different depending on whether X versus Y were true?".
22
23
- Knowledge decays. Things you learned in the past might not be true nowadays (_status of Pluto as a planet, dinosaurs with feathers, number of people living, ..._). [Facts decay over time until they are no longer facts or perhaps no longer complete](https://fs.blog/2018/03/half-life/).
+1
-1
Traveling.md
+1
-1
Traveling.md
···
1
1
# Traveling
2
2
3
-
![[Quotes#^396dbb]]
3
+
> You enjoy a trip three times. Getting ready for it, while traveling and when you remember it. Good memories appreciate over time!
4
4
5
5
- Select a theme and make sure everyone is on the same page.
6
6
- Organize your travel around passions instead of pure destinations.
+3
-1
Writing.md
+3
-1
Writing.md
···
1
1
# Writing
2
2
3
-
![[Quotes#^645051]]
3
+
> If you think without writing, you only think you're thinking. Leslie Lamport.
4
4
5
5
- Writing things down helps clarifying [[Ideas]]. One of the tests of whether you understand something is whether you can explain it to someone else. [Writing doesn't just communicate ideas; it generates them](http://www.paulgraham.com/writing44.html).
6
6
- Writing down your ideas shows you whether they have substance. Detecting when you're wrong is the first step to becoming right. There are many ways to record thought. Writing is the best for improving your [[Thinking]].
···
17
17
- [Writing that sounds good is more likely to be right](https://paulgraham.com/goodwriting.html). Making sentences sound better forces you to fix ideas unconsciously. Good rhythm matches the natural rhythm of thoughts—use rhythm as a guide for getting ideas right.
18
18
- Use the active voice.
19
19
- Write in a conversational tone. Think about readers when writing.
20
+
- [A strong title is a pointer to a specific idea](https://taylor.town/how-to-title) and becomes a reusable handle in [[Communication]] and [[Ideas]].
21
+
- [Finding a piece's "true name" often reveals its core narrative](https://taylor.town/how-to-title). If the title is fuzzy, cut back to the main thread and sharpen [[Focus]].
20
22
- [Divide things into small chunks and if you have multiple points in a text, number them to make replies easier](https://slatestarcodex.com/2016/02/20/writing-advice/). List the points you want to make in a logical order. This allows you to remove the clutter and avoid confusion. Use the [Minto Pyramid](https://scqa.lifeitself.org/) or another standard structure like this one:
21
23
- Decide what you're actually saying. [Define a clear thesis](https://www.cs.columbia.edu/~hgs/etc/writing-bugs.html). State the main point before you give the reasoning that leads to it.
22
24
- What is your main point? Who are you writing for?