Introduction: Scalable Group Decision-Making A deliberative consensus protocol is a process that online groups can use to make decisions. It’s designed to produce good decisions that are fair and manifest the collective intelligence of the group. And it’s designed to work at scale.
This is not easy, especially on the Internet, where bad-faith actors can easily create bots and sock-puppets to try to manipulate the results. And even if everyone acts in good faith, collective intelligence does not always scale well.
Social Protocols
Essays on the design of social protocols for improving public discourse
Philosophy
Various philosophical musings
Politics and Social Status People’s politics are partly driven by a desire for status.
People tend to express political views that will win the approval of their peers. They tend to remain silent if they hold opinions that would be criticized by their peers.
These belief systems become self-reinforcing in each subgroup of society. Churchgoers tend to adopt the beliefs of their congregation. Hollywood actors tend to adopt the beliefs of Hollywood.
Theory
Somewhat technical articles on a variety of theoretical subjects
Distributed Bayesian Reasoning Introduction
Part of the Distributed Bayesian Reasoning series
Distributed Bayesian Reasoning is a kind of hypothetical opinion poll. It tells us not what people actually believe, but what they would believe if they knew more.
Travel
Some travel writing
The Mystery Abdul wanted to see the Mekong Lights. He had seen a Thai movie eight years ago called Mekong Full Moon Party. It was a fictional story featuring one of the world’s most fascinating unexplained phenomena: mysterious balls of light that up shoot from the Mekong every year, as the full moon rises on the eleventh month of the lunar calendar. Ever since, Abdul had been saving money and dreaming of the day he would make the pilgrimage to see these lights.
Programming Language Design
Various ideas on the design of programming languages
Introduction In this essay, I introduce the concept of functional equality, and discuss why 2+2 may or may not equal 4.0.
Obviously 2+2 is mathematically equal to 4.0. And yet in many programming languages, the integer and float representations of the same number are functionally different values, because operations such as division and conversion-to-string behave differently for different types.
When comparing two values for equality, it is important to ask, what do you mean by “equal”?