33

Konsent - a platform to help communities make decisions without hierarchy

Submitted by dele_ted in freeAsInFreedom (edited )

I recently finished a project for my school council. It's a system designed to help us make decisions without representatives or similar hierarchical systems, where every opinion is respected and everyone gets a say in what goes and what doesn't.

Ziq and Lettous showed some interest in this idea a few days ago, and i think it's about time that we consider alternative decision-making solutions than the old system of subraddle moderators and discussion on /f/meta, so here you have it!

I spent the last few days translating from Danish to English, and it is now on GitHub under a FOSS license. The concept is explained on GitHub. Come take a look, contributors are very welcome!

The system was originally designed for physical communities, and needs some adjustment to work properly in online spaces, but i think it's very close.

GitHub

Edit: /f/konsent

Comments

You must log in or register to comment.

6

md_ wrote

Hey, thanks for releasing this. I'll try to check this out ASAP. I'm glad this is in Python, because I'm utterly hopeless with PHP in which most web discussion platforms are written in.

I'm wondering if you considered python-sqlalchemy. If I understand its use correctly, it will allow the users to select their SQL backend and abstract it away as far as the software is concerned. It might be useful because it will allow using SQLite, which is a bit more friendly to noobs like myself.

3

dele_ted wrote

I'm open to new options! I'm a big fan of MySQL, but if SQLite can make it easier for new developers to join in, then I don't mind.

4

md_ wrote

I probably can't make it happen help yet, but I'm interested in learning how to work with Flask, and with Python software (as opposed to single-file scripts which I've been doing so far), so I'll probably try to play with Konsent's code and maybe try to get it to work with SQLite as soon as I get some leisure time.

5

dele_ted wrote

Konsent is pretty simple compared to some bigger projects, so it's a good place to start. Before we start doing anything drastic we really should clean up the code, though. It's a huge burning pile of routes and unnecessary functions at the moment, could use a loving hand. That's also a good way to get to know the software.

Hope to see some pull requests from you soon comrade!

5

Cosine wrote

This is awesome! I feel like this warrants continued discussion and collaboration.... in the interest of that, would anyone be interested in making a /f/ forum for it?

4

dele_ted wrote (edited )

I think that would be a good idea, the best way to develop the concept is through discussion, and there's no better place for that than Raddle.

e: I created the forum. Also got the most up-to-date version onto a free server so people can get a better idea of what it is, here!

4

buzz wrote

what are the remaining steps required before application within raddle? this sounds like a HIGHLY useful program good work!

7

dele_ted wrote

Thank you! The system was originally designed for a physical community, and currently relies on the fact that the community is closed and the members trust each other, and also that they can be held accountable for their actions in real life. If we used this as a decision making tool on Raddle right now, new users could completely sabotage everything by vetoing for no good reason and griefing in general.

There's many ways to get around that, here's some of the ideas i have that might solve this issue, either alone or in combination with each other:

  • Make the list of union (or community, whatever you want to call it) members visible to all members of the union, and implement a vote-banning system.

  • Only allow members older than X months to participate in decision making. I'm a little split on this solution, since it could possibly result in a conservative hierarchy, but it might work out just fine.

  • Only allow members older than X months to participate, AND let existing decision-makers vote for and against if they want every time a new member of the Konsent union is to be accepted. (This is probably a better solution than the one above, but again, it has its own issues).

Or, and this is one worth considering:

  • Get rid of the vetoing system completely. Perhaps it doesn't belong on online platforms.

If you have any other ideas, just fire away.

3

surreal wrote

maybe only accounts created before the start of a vote issue can participate in that voting. the heuristics can also include how much active a user is so fake accounts that were created just for sabotaging an issue won't be as effective. but the criteria of activity would be hard to implement.

3

dele_ted wrote

maybe only accounts created before the start of a vote issue can participate in that voting

That would make sense, good idea. I'll add it to the issues on GitHub.

the heuristics can also include how much active a user is so fake accounts that were created just for sabotaging an issue won't be as effective

Not sure if that would work, i think it's important to allow people to participate just as much as they want. Some people don't want to be active in decision-making, but might want to have a voice when an issue they care about comes up.

3

surreal wrote

this is tricky, raddle runs on PHP and this one on Python, so integration is not easy. the web server could serve both apps but it would need some tweaking.

4

dele_ted wrote

We wouldn't need to integrate it at all. Just run it on a separate server, and link to it from here. Of course that would mean that users had to have two accounts unless Raddle and Konsent shared the same database. On the other hand, separate databases enable us to hand out accounts for Konsent more sparingly and avoid griefers.

3

xxi wrote

Just wanted to drop in and say that I like this. Good work.