how-chaosbot-works.gif

ChaosBot

Technologies used: Python, People(!)

ChaosBot was a social coding experiment based on 3 principles:

  • Using rules defined in its code, ChaosBot evaluated Github pull requests.

  • If a pull request was determined acceptable, it was automatically merged and the ChaosBot restarted with the new code.

  • Anybody could submit a pull request.

These simple ideas inspired many open source developers. After a few days, the project gained thousands of followers and hundreds of contributors. People loved the idea that ChaosBot modified its own process for modifying itself. It quickly took on a life of its own.

Chaos

One of the first things contributors did was to remove democratic voting. ChaosBot originally only merged pull requests that received a majority of 👍 emojis. This pull request sought to undo that—allowing any proposed changes to be automatically merged. To my surprise, it was democratically accepted, and for a short period of time, there was complete anarchy.

I view these actions as the community testing the limits of their freedom. After all, did they really have control if they couldn’t also choose to destroy order?

chaos-anarchy.png
dictatorship.png

Seizing Power

Contributors were also eager to test how well the community was paying attention to the contents of pull requests. In this pull request, a contributor sneakily hard-coded their name to give their vote ultimate merge authority. The pull request title and description was innocuous enough, and so most users voted to merge. When the pull request landed, we had become an autocracy.

Fortunately our dear leader was benevolent, and shortly after, voted to give up their authority, reverting us back to democratic rule.

Previous
Previous

HeimdaLLM

Next
Next

Synthetic training data