As I mentioned in previous post, I would believe that Stack Overflow and Github could be the best resources for my concern that how is popular enough for the data to be representative. Stack Overflow could show me the number of questions with or without answers, because it indicate how the framework to be supported as well. The number of questions also indicate which framework is most used. Github – the coding social network that can show you the number of projects, and the number of stars on a project is indicative of popularity.
Finding statistic data on Github, Stack Overflow is simple than ever, because they are providing API, or querying capabilities right there on their site. But I prefer to use API rather than query data just by I am not an SQL expert, and I am going to made an application that does statistic on Github and Stack Overflow. But if you want to use queries as your favorite one, let’s try with some questions with querying capability on Stack DataExchange/Overflow
How many post that mentioning about AngularJS ?
SELECT COUNT(*) from Posts P WHERE P.Id IN ( SELECT DISTINCT(PostId) from PostTags WHERE PostTags.TagId In ( SELECT Id From Tags Where TagName LIKE '%angular%') )
At the moment, the query return 104292 posts. So I tried with various tags as ‘backbone’, ’ember’, ‘knockout’ , …
AngularJS: 104292 posts
Backbone: 18213 posts
Ember: 25169 posts
Knockout: 14113 posts
These numbers can tell you which framework is most concerning or most used.
Using the API that returns JSON and needs some extra steps to end up your statistic because the formatting of return values. You can make your own request as below which returns the number of questions about “angularjs” from 1, January 2012 until now.
Considering a framework that it should have a large support from community. We might think the number of posts or questions that have answering would reflect the well support. So we make the question like “how many questions about angularjs, ember, knockout, backbonejs that have accepted answers”
The number for knockoutjs is unbelievable, but interesting. The result above tells us that AngularJS is owning a large community support, chasing by Ember and Backbone.
Now, let’s take a look on Github which targeting to 4 repositories AngularJS, BackboneJS, KnockoutJS and EmberJS. So lucky that these repositories has some statistic with charting, mean why we will not take serious with calling APIs.
Framework Stars Watch Fork Open Closed
AngularJS 3872 619 993 298 1046
BackboneJS 22244 1621 4968 13 2061
EmberJS 14133 1132 3025 427 3311
KnockoutJS 6530 590 1130 164 1098
The statistic on Github gives a very limited numbers for AngularJS, it’s normally because Google just put AngularJS to Github since 2014, why BackboneJS had the first commits in 2010. You can get the general information about specific frameworks by calling these APIs.
BackboneJS – https://api.github.com/repos/jashkenas/backbone
AngularJS – https://api.github.com/repos/angular/angular
KnockoutJS – https://api.github.com/repos/knockout/knockout
You can example your own data, just spending a hour with Github APIs. I am sure that you will find many interesting things here.
Statistic application, why not ?
The next post, I will talk about framework featuring that help us to consider which framework is suitable. May be the next post would be marked as “TL, DR” 🙂