About

This website is the epitome of user-generated content, of “web 2.0,” of social media. Everything on this website can be created, removed, or altered by any user, especially the site itself. All that you, the user, have to do in order to change or add something, is to create an account and then go to the GitHub page for this website (linked at the bottom of the homepage), fork the project, and submit a pull request. A bill will automatically be created which you can see on the site. After that, it is up to your fellow users to vote on your proposed changes. If the majority of votes agree with you, the change will be automatically accepted and deployed to the live site. If they don’t, the pull request will be closed and you will have to try again. Anyone, regardless of technical knowledge and experience, can vote on these changes, and anyone who knows how to write Python can propose changes. This is the ultimate democratic technology, the only website where the site itself is user-generated. You, user, are invited to make this experiment into anything you like.


The Constitution

Not everything can be decided by a simple majority. There are some changes that I consider so significant that they need more than half of the user base to support them before they are added. Code that, if changed, would radically alter the nature of the site is identified in a file in the root of the repository called "constitution.json". Any proposals that change any of the lines protected by the Constitution, which includes the Constitution itself, require at least a 2/3rds majority of votes cast in favor in order to pass. Like other legal constitutions, this document will ideally prevent controversial total overhauls or radical changes from occurring lightly or quickly. Any proposal is welcome to add or remove constitutional status from any file, but bear in mind that doing so is, by definition, a constitutional amendment, and will therefore trigger the supermajority requirement in order to pass. This means that guarding your own changes with the constitution will not be easy, and new changes are intentionally not as difficult to revert as major or core features of the website. This policy reinforces the idea of "lock-in," where the core basis of a piece of technology or a group of technologies becomes much harder to change than later additions. This clearly has downsides, and my code is far from perfect and could benefit from other people editing it, but I deemed protecting the core functionality and purpose of the site and encouraging new additions more important.


Security

Users will not have access to the accounts or information of any other user through this site. This is part of the reason only third-party logins are enabled; the site stores no passwords or sensitive information, only login keys which are configured solely for this site. Obviously, certain proposed changes could expose that or other information, such as email addresses, or otherwise harm the security of the site or its users. As the creator and webmaster of this website, I reserve the right to block, revert, or add any change to the site at any time for any reason. This unfortunately flies in the face of democracy and the intended purpose of the site. Ideally you, the users, will work to prevent any malicious actors from carrying out damage. However, it is ultimately my responsibility to ensure the safety of all accounts. If, despite my best efforts and my power over this website, harmful changes are continually proposed or are ever deployed, I will shut down the website.


Philosophy

This website is inspired by the ideas of democratic governance, or government "by the people." In particular, it serves as a direct democracy, where every proposed law or policy change is put to a popular referendum, or “plebiscite”, letting the “citizens” (aka users) make every decision about how the site will be governed. The difference between this website and a real country is that the governance, the day-to-day running of the institutions, is done automatically by whatever code is deployed to the server. Code obviously cannot intentionally subvert the intentions of the users who approve that code, as opposed to the myriad of people required to maintain a nation, with varying degrees of power and each with their own goals and agendas. Despite this major caveat, this website was inspired by real governments, and I hope it can serve as a real-world analogue to inspire governments in exchange.

The use of distributed version control software, namely Git, has been immensely powerful for “open-source,” or community developed, software, by simplifying the process for maintainers to review and include contributions by the community. This website replaces the step of approval by a maintainer, or any central authority figure, with approval by the user base. Real law codes could undergo a similar shift with tools made possible by the internet. Already several local and state governments have begun experimenting with publishing their legal codes as Git repositories, and Washington DC even lets the public submit proposals through Github. These places are just beginning to understand the potential that these tools create, and I hope that this project can help to further demonstrate that potential. Git seems especially powerful for the process of “codification,” or combining all the pieces of legislation passed into a unified code of laws which can be used as a general reference. This is usually undertaken by unelected government officials, who can and have made mistakes. Git allows anyone to propose fixes or additions to such a code, as well as including tools such as blame to let everyone see who changed any part of the code. Tools like this one could facilitate the next generation of government transparency, encouraging public participation and political accountability.


Anatomy of a Bill

This is an example of a bill

If a bill is an amendment to the constitution, it will say so here.

If the time to vote on a bill has passed, the result will be shown here.


This area is where the description of the bill goes. The information about bills is taken directly from Github when a pull request is opened. The title and number of the pull request will replace the title text at the top of this card. If you want to edit the title or description of a bill you proposed, click on the title to see the detaile view, and then click on the pencil next to the description on that page. Only a bill's creator can edit its title and description. Below this on the right, the red and green numbers signify the "diff size" of the bill, or how many lines were +added (green) and -removed (red) in the edits this bill represents. Click on the diff to be redirected to the details of the changes that bill implements on Github. Under that is a bar which shows the proportion of votes in favor and against the bill. Underneath that, the "yes" and "no" links are where you click to vote for or against a bill, respectively. You need to log in before you can vote on real bills, and expired bills cannot be voted on. The numbers next to the bills are how many people have cast that vote for a particular bill. If you already voted on a bill, your choice will be in bold, and you can click it again to retract your vote. Visit the homepage to see some real bills (if any exist right now), log in, and cast some votes!
✓ Yes: 0 X No: 0

Privacy Policy