• Home
  • -
  • MeteorJS on StackOverflow

MeteorJS on StackOverflow

Using the StackExchange Data Explorer we tried to find out interesting patterns in questions activity around Meteor.js.

Preparing the dataset

Here is a simple query you can paste to Data Explorer Query Builder and get the desired data.

SELECT CreationDate, Tags, Score, ViewCount
FROM Posts  
WHERE PostTypeId = 1 AND Tags LIKE '%meteor%'  
ORDER BY CreationDate DESC;

The results are returned in a short time. MeteorJS on StackOverflow dataset

After downloading an exported CSV we prepared the data for further analysis.

require(dplyr)
require(data.table)

questions <- tbl_df(fread(input = "questions.csv", header = TRUE, sep = ",")) %>%  
mutate(Score = as.integer(Score)) %>%  
mutate(ViewCount = as.integer(ViewCount)) %>%  
mutate(CreationDate = as.Date(CreationDate)) %>%  
mutate(Tags = Tags %>%  
       gsub("<", "", .) %>%
       gsub(">", ",", .) %>%
       gsub(".{1}$", "", .)
     )

Our dataset looks like.

## Source: local data frame [17,442 x 4]
## 
##    CreationDate                                           Tags Score
##          (date)                                          (chr) (int)
## 1    2015-12-13                                 android,meteor     0
## 2    2015-12-13                         meteor,spacebars,blaze     0
## 3    2015-12-12 mongodb,meteor,database-design,meteor-accounts     0
## 4    2015-12-12   arrays,mongodb,meteor,filtering,intersection     0
## 5    2015-12-12            javascript,mongodb,rest,meteor,cors     1
## 6    2015-12-12                                         meteor     0
## 7    2015-12-12            javascript,mongodb,rest,meteor,cors    -1
## 8    2015-12-12                 postgresql,meteor,coffeescript     0
## 9    2015-12-12                      javascript,mongodb,meteor     1
## 10   2015-12-12   javascript,mongodb,function,meteor,arguments     0
## ..          ...                                            ...   ...
## Variables not shown: ViewCount (int)

Some summary about number of views of meteor questions. Average meteor question recieves ~100 views.

summary(questions$ViewCount)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##     3.0    49.0   115.0   496.6   362.0 63450.0

Questions distribution among the days of week

require(ggvis)

days\_of\_week <- c("Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday")  
questions %>%  
    group_by(date = days_of_week[as.integer(strftime(CreationDate, "%u"))]) %>%
    summarise(n = n()) %>%
    mutate(date = factor(date, levels = days_of_week)) %>%
    ggvis(~date, ~n) %>%
    layer_bars(fill := "#a83636", strokeWidth := 0) %>%
    add_axis("x", title = "Day of week") %>%
    add_axis("y", title = "Number of questions", title_offset = 60) %>%
    set_options(width = "auto", height = 800)

Insight

Relatively a big amount of questions on weekends. Does it mean developers devotion to Meteor and using it in their pet projects?

Questions distribution among the overall Meteor lifetime timespan

questions.by_month <- questions %>%
group_by(date = format.Date(CreationDate, "%Y.%m")) %>%  
summarise(n = n())

questions.by_month %>%  
ggvis(~date, ~n) %>%  
layer_bars(fill := "#a83636", strokeWidth := 0) %>%  
add_axis("x", title = "Date",  
       tick_padding = 15,
       title_offset = 60,
       properties = axis_props(
labels = list(angle = -45)),  
values = questions.by_month$date[c(T, F, F)]  
) %>%
add_axis("y", title = "Number of questions", title_offset = 60) %>%  
set_options(width = "auto", height = 800)
MeteorJS on StackOverflow insight

Insight

We observe several raises of activity on some months. We’ve already posted this plot on Twitter with markers indicating major Meteor releases. As someone has already pointed in comments:

It’s normal that people jump onto framework on fresh releases and have questions after that. In each new version people don’t understand some innovations and ask questions after that.