Design / Socratic

Case study 04

Socratic

“Got Discourse? Discuss!” An online place to talk about current events with people who see them differently.

Role
Designer and front-end developer
When
Fall 2017, UC Berkeley CS160
Worked with
Two developers and a designer
Tools
Meteor, Handlebars
Three screens of the Socratic web app on a blue background: the opinion of the day with three articles, support and opposition comment columns, and a reply box that says you can’t reply here since you agreed

01Problem and team

During Fall 2017 I took CS160 (User Interface Design and Development), taught by John Tang. The theme was “Bursting Echo Chambers in Social Media”, and we were asked to design a web app for it by following a human-centered process.

The idea: Socratic is a place to discuss current events with people of different opinions. It exposes you to other perspectives and promotes thoughtful, non-hostile conversation.

Our team of four had two developers (Genji and Gemma), a designer (Takara), and me, a bit of both. Takara and I led the design, from interviewing people to wireframes and visual style. For the code prototype, Genji and Gemma worked on the backend and I built the front-end components.

02Needfinding

We started our user research by attending two events where people expressed a diversity of opinions.

Event 1: MENA Salon, “Free Speech and Exclusion on American Campuses”

The Center for Middle Eastern Studies hosts an informal weekly coffee hour and guided discussion of current events in the Middle East and North Africa.

A pencil sketch of the salon: people seated around an oval table at the front, and more people in rows of chairs facing it, with one person raising a hand
Sketch of the event.

After the event we interviewed a couple of people with this discussion guide.

The MENA Salon discussion guide: an intro and consent to record, then questions about where people express opinions on campus, whether they are open to ideas that differ from theirs, and who comes to the weekly coffee hour
Discussion guide for the MENA Salon.

What we took away from watching the event and interviewing people:

  • Conversation can be directed by a source of authority.
  • Conversation can be smooth and efficient when there is a set of rules people know about and follow.
  • Wording matters. Words that mark a statement as a subjective opinion let thoughts be challenged, or even supported.
  • Discussion is richer when people understand what is being said and share the same factual knowledge as the speakers.
  • People are more likely to talk and listen to people who are like-minded.
  • People are more likely to listen if you listen to them, even when your opinion differs from theirs.
  • It is hard to have or find open conversation with people who don’t share your perspective.

Event 2: “White Supremacy, Gender, and Speech in the wake of Charlottesville”

A panel of four speakers on perspectives on white supremacy, gender and free speech.

A black and white sketch of a lecture hall: a screen with two photos at the front, a speaker at a podium between two tables, and rows of audience members seen from behind
Sketch of the panel.

We interviewed two law students who attended. These interviews were briefer, because people seemed to be on their way out.

The panel discussion guide: an intro and consent to record, then questions on how they felt about the ideas presented, why they come to talks like this, and how they would get a diverse audience to listen
Discussion guide for the panel.

Takeaways from those interviews:

  • Conversations about controversial topics need mutual trust and respect to be effective.
  • Relevant topics are a strong motivator for attending talks, even ones with opposing views.
  • People groups generally will not tolerate opinions that put down their humanity.
  • The viewpoints of these talks should be presented with honesty and transparency.

03POV + HMW

We did affinity mapping to group our insights, organize our data and narrow the design space.

A whiteboard of yellow and green sticky notes grouped under the headings Diversity, Listening, Agreement and Learning
Insights grouped into diversity, listening, agreement and learning.

Then we wrote Point of View and How Might We statements to guide ideation.

Point of view

  1. We met a group of older men who regularly discuss current events involving the Middle East and North Africa. We were amazed to learn that they were willing to listen and converse with people whose perspectives differ from theirs, but that there wasn’t really anyone from a radically different background. It would be game-changing if we could get people from drastically different backgrounds and opinions to take part in their discussions.
  2. We met two open-minded law students who are passionate about what they believe, but still attend talks they do not agree with. We were amazed to learn that their main reason for going was learning value, whether or not the information supported their existing belief. They did not expect their opinion to change, and learning from the other side does not mean arriving at its conclusion. It would be game-changing if we could focus on learning, rather than argument and persuasion.

How might we

  1. How might we facilitate a space for learning rather than trying to persuade and conquer?
  2. How might we establish decorum and a baseline understanding of factual information to hold a constructive discussion?

04Ideation

From the research we brainstormed five possible solutions and picked one to try:

  1. Chat rooms categorized by topic
  2. Dedicated sites for college students to pick speakers
  3. A microphone where people can only speak when they have it, and otherwise have to listen
  4. An online board where people post opinions and respond to other people’s opinions (the one we chose)
  5. A feed that shows you posts that are the opposite of what you would want

05Prototype

We expanded on idea 4 and built a working prototype with Meteor and Handlebars, following this general user flow.

A whiteboard flow in red marker: a home screen with a list of opinions leads to an opinion screen with comments and a reply, and a create new button leads to a submission form with title and description
The flow: home, an opinion with its comments, and a form to add one.

The first screen is a list of people’s submitted opinions, each with a short description.

The prototype home screen in a browser: a blue add new opinion card beside cards titled Conyers was right to step down, Banana Creme Pie is better than Apple Pie, and I think dogs are cuter than cats
The list of opinions.

“Add new opinion” opens a page to enter a new post.

A blue page headed What is your opinion, with prompts to give us a nickname, describe your opinion in one sentence, and give more details
Adding an opinion.

Clicking an opinion card reveals a comment thread where you can discuss it with other users.

An opinion page with a large blue header reading Conyers was right to step down in light of the situation, and a list of comments from three users with a reply box below
An opinion and its comment thread.

06User testing

We tested with 5 people, who talked out loud while doing this core task: take part in a conversation under someone else’s post and gain new knowledge from the exchange. (We simulated the other users’ replies on our end so the tester could reply.)

Five photos of testers using the prototype on laptops at home, at a desk, at a table and on a couch
Testers working through the prototype.

Afterward we asked each tester to fill out a Google form with their feedback. We found many places to improve:

  • Navigation was difficult.
  • The core task, and what the site was meant for, was unclear.
  • The “Give us a nickname” prompt when adding an opinion was confusing.
  • The site might be easier to grasp with a name.
  • Opinions should show a username, otherwise people think they are just topics, not someone’s opinion.
  • It was unclear what the comments were, what people were trying to do in them, and what standpoints they came from.
  • An ongoing conversation was hard to follow.
  • The comment section didn’t look like a comment section.

Most of these problems came from not having time to build a fully fleshed-out app. That was okay, since we mainly wanted to test the concept, and the concept is where we got the most valuable feedback:

The interface didn’t encourage discussion with intent to learn from others.
  • The open-endedness of “share an opinion” led to less thoughtful topics like “Pie is better than cake.”
  • The comments let trolls and negative comments spam the threads.

07Iterate

With that feedback we set two goals:

  • Engage users with more directed content, to focus the conversation.
  • Encourage discussion on important topics among people of different backgrounds.

And two steps to get there: guide discussion with prompts and questions, and include articles on current events from different parts of the political spectrum.

Socratic 2.0

  • One opinion, related to current events. Only one at a time, so all traffic funnels into one discussion. It changes every week.
  • Three articles about the event to read. Each comes from a different part of the political spectrum, inspired by AllSides.
  • Agree and disagree buttons for the stated opinion.
  • Two comment threads, one for those who agree and one for those who disagree. Replies are color-coded by position, and the comments stay hidden until you pick one.
  • Comments with the most points rise to the top. The catch: you can only upvote comments from people who disagree with you, and you can’t see the score of comments from people who agree with you.

We made a quick sketch before moving on to high-fidelity screens.

A notebook sketch headed Socratic: an opinion with three articles from different political leanings, a daily opinion that might change every day or week, and two columns for agree and disagree comments with upvote and downvote arrows, color coding and a reply box
The sketch for Socratic 2.0, with two comment columns and a note on color coding.

08Final design and demo

The final Socratic screen: a blue header, the opinion of the day about digital piracy with three article cards, large I agree and I disagree buttons, then Support and Opposition comment columns with vote counts, and a reply box that says you can’t reply here since you agreed
The final design. Pick a side and the comments open up. You can only vote on the other side’s comments.

We built a hi-fi prototype and a demo video to present the project to the class. Watch the demo ↗ or look through the code on GitHub ↗.

If we had more time

  • Add downvotes for people who share your view, so the other side can’t just upvote the views they most agree with.
  • Add a page to view previous discussions and opinions.
  • Make sure users read all three articles before they can click “agree” or “disagree.”
  • Add a “Neutral” option. Opinions aren’t so black and white!
  • Add optional user profiles, so users don’t have to commit to an account to take part.

09Takeaways

User testing is super super super valuable

We found many ways to improve with just a few people going through our prototype. They ran into issues we would never have found ourselves.

Code takes time, keep that in mind

It takes much longer to build something that works with a JavaScript framework than to make something pretty in Sketch and Illustrator. It seems obvious, but being conscious of it helps you keep to the project timeline and spares you all-nighters fixing bugs.

The final product can look very different from your first solution.