what answer for which audience? - plg.uwaterloo.camigod/846/current/projects/05-damien-gla… · 2)...
TRANSCRIPT
What Answer for Which Audience? Identifying Categories of Answers on Stack Overflow
Damien & GlauciaCS846 - Fall 2019
RQ1: Are there categories of answer on SO?
RQ2: Are those categories distributed differently depending on the audience?
Exploratory StudyMost viewed questions
Exploratory StudyAnswer semantics
Words of interest = {solution, answer, approach, version}
Exploratory Study: Mining categoriesSemantics
Exploratory Study: Mining categoriesSemantics
1) Alternative answers2) Version-specific answers3) Similar answers
Exploratory Study: Mining categoriesAnswer features
1) Length of code2) Length of text3) Readability score (Flesh-Kincaid)4) Score5) Similarity with question (Jaccard)6) Edits7) Order8) Contains link9) Contains bold
10) Contains list11) Contains image12) Number of comments13) Response time
1
2
34
6
89
12
13
Exploratory StudyAnswer features
1) Length of code2) Length of text3) Readability score (Flesh-Kincaid)4) Score5) Similarity with question (Jaccard)6) Edits7) Order8) Contains link9) Contains bold
10) Contains list11) Contains image12) Number of comments13) Response time
1) Code ratio
2) Similarity with question
3) Formatting ratio
4) Response time
}
}
Mining CategoriesFeatures: k-means and decision tree
Mining Categories● Late code
● Late fancy explanation
● Late plain explanation
● Quick general code
● Quick general fancy explanation
● Quick general plain explanation
● Quick specific
Example
● Alternative answers● Version-specific answers● Similar answers
Example● Late code
● Late fancy explanation
● Late plain explanation
● Quick general code
● Quick general fancy explanation
● Quick general plain explanation
● Quick specific
Source: https://stackoverflow.com/questions/4105331/how-do-i-convert-from-int-to-string
Example● Late code
● Late fancy explanation
● Late plain explanation
● Quick general code
● Quick general fancy explanation
● Quick general plain explanation
● Quick specific
Source: https://stackoverflow.com/questions/245825/what-does-initializecomponent-do-and-how-does-it-work-in-wpf/247018#247018
Distribution of answers *conflicts
ConclusionsWe showed that:
● Different categories of answers● Devs are interested by different categories of answers
Implications:
● For lurkers: Filters to find answers faster (RQ1)● For respondents: Guidelines for how to write for a specific audience (RQ2)
Future Work:
● Investigate Semantics● Explore other feature combinations
Questions?