So i was thinking over what i think would make a good MVP. These are ideas taken from a variety of people. Remember - these are just concepts/ideas.
The Q&A Community Hub.
The most successful societies are those with a strong mix of diversity, opinions and people from different backgrounds. The most amazing advancements in human history have come from people asking questions, pooling our knowledge and learning together.
Codidact aims to bring both of these ideas together in a digital environment where people can be free to challenge, grow and learn through the familiar Q&A format whilst keeping respect and human-ness at the centre of every interaction.
Codidact aims to keep the Q&A format simple and to-the-point. But we also understand that people are different and need different types of input on a question. Sometimes a discussion (without a direct answer) can be exactly what someone needs on a question or topic and other times it can just be the answer. The simple Q & A format with no BS is at the heart of Codidact though.
Topic Organization
Questions and answers are organized into various categories.
The top most category is the subject. For example history or math or programming. Within a subject are topics. Topics are broader subject matters that fit into a specific subject. An example would be the topic JavaScript within the subject programming. The third level sub-topic a sub topic is a specific aspect of a topic. For example jquery-javascript-programming. A question doesn’t have to be a sub-topic. It could equally be just subject specific.
Users have profiles where they can use settings to customize what subjects/topics they want to view. These settings should be accessible easily - Something like a dashboard could display all activity for the user and a general topic dashboard could also be implemented.
The core aspect of Codidact is Q&A. The question is given primary concern. A question is made up of a title and a body. This question can be categorized into different subjects, topics and/or sub-topics.
Users read the question and can add an answer.
The User Experience
The user experience is made up of three aspects. Kudos, privilege and badges.
Users can give and receive Kudos on an answer, question, comment or useful comment thread. Kudos is a signal of how active and beneficial that member is to the community - kudos could be used similarly to upvotes where a new user can be given small amounts of kudos by going through a tutorial and learning the different aspects of the community but is distinct to privilege. Kudos mostly matters to newer members. It provides a way to gate basic interaction until a user has completed the tutorial or basic easy to complete interaction in the community. Gamification is an important part of kudos and at certain levels could unlock perks (this is optional). A high kudos does not denote a high privilege.
Privilege is a separate aspect that is given to a member of the community by the community via votes. Votes would be held regularly and would be at varying levels. Privilege can be seen as moderator privilege. Privilege is earned and given to users who will not abuse their moderator rights and is given at varying levels. For example a low-level privilege could be to have the power to open up or accept comment threads on definitive questions. A higher level privilege could be to close questions or move questions into different areas etc.
Badges are given when a user receives a respectable amount of kudos on a given topic. Badges could also be represented in levels of accomplishment. Badges allow a user to be seen as a domain expert on a given topic. Badges allow a user a certain amount of privilege-like interactions but only on questions/answers within their domain knowledge. Most of these badge privileges will be specific to understanding the subject. Badges provide an aspect of gamification but with actual value.
Questions
There are two types of questions, definitive and subjective.
A definitive question always requires a definitive answer. A definitive answer directly answers the question and should result in the question being resolved.
A question can be re-answered if the given answer is no longer correct due to a change in circumstances. This new answer must be upvoted or acknowledged by privileged/ relevant badge owned users.
Definitive questions and answers can receive comments. These are known as comment threads. A comment thread is a single thread of comments unified around the thread title. These act in a secondary role to the answers. Comment threads are not visible by default but can be toggled. Comment threads are given a title at creation. These comment threads (not individual comments) can be upvoted as useful. The highest upvote count will cause the comment thread title to be visible in the useful comment thread section, distinct from the ‘view other comment threads’.
Comments within the comment thread must be direct and pertinent to the question or answer. Rather than keeping a string of individual comments in the open, a comment thread can be opened by a privileged user or requested to be opened by a non-privileged user which must be approved.
A thread title (character limited) can be chosen. It is reasonable to challenge a comment or add additional information to an answer, which is why comment threads can be useful but should be used sparingly and added only when they bring value to an answer/question. Any irrelevant or conversational comments must be closed/moderated.
The definitive question is the heart of the Codidact Q&A hub and is most similar to that of SO.
A question might also require a subjective answer. A question requiring a subjective answer will require more opinionated discussion. A subjective answer should be well reasoned and most of all respectful. Disagreeing with another poster does not warrant as disrepesctful but any kind of immature name calling, or offensive behaviour is
A big question around subjective questions is whether they are open and require no community moderation to be created or whether a new subjective question must be vetted by a privileged user before being opened to prevent spamming. The privilege to open subjective questions could be earned via a badge or voted privilege
Subjective questions and answers can receive kudos that count towards badges. Comments/discussions within a subjective question or answer can receive kudos but does not count towards badges.
Subjective questions can also be linked to topics as well as definitive questions. This relationship treats the definitive answer of a question as canonical and allows further linked subjective discussion around the definitive question. There can be a one-to-many relationship between definitive and subjective questions.
A subjective question operates very similarly to definitive question with some key differences.
Users can choose to not view subjective questions by toggling visibility.
Comment threads are treated differently they could be called discussion threads. They are open by default and don’t need privilege to open. Discussion threads can also be nested past one level. Comments within a discussion thread can receive kudos but don’t count towards badges because of the subjective nature of the topic.
Answers in subjective questions don’t get accepted. The asker of a subjective question isn’t responsible for accepting an answer. Answers receive kudos and the answers with the highest kudos are promoted to the top in a more visible manner.
Moderation
Because of the nature of questions and their ability to get off topic. It is possible for users to flag comments and answers as unhelpful or off-topic. A post or comment with multiple flags will grey out the comment for moderation and can be moved or removed.
Posting off topic won’t remove kudos but repeating off topic offenses will cause kudos to drop and possible privilege/badge cool down period. This is non permanent and will not be stored on the users profile.
A cool down will solve most situations.
Rude comments or unhelpful or unconstructive behaviour can result in a user getting ‘benched’. This is a longer cool down period. This will remove privileges until a moderator is able to chat through the reasoning and ‘unbench’ the user, restoring privileges. Any user getting benched will show on their profile. It should be (unfortunately) expected that the average user will get benched as people can get passionate about things they like but it should be few and far between.
Repeated benching will result in more serious action been taken.
Any egregious behaviour will obviously result in the appropriate action. This idea of levelled moderation will prevent insta-ban culture from overzealous moderation and will help users learn from their mistakes whilst the cool down will help curtail the buildup of unhelpful comments and spam on answers. The design of comment threads will also help alleviate comment spam.